Use Robot Framework to Reduce Risk and Develop the Best Solutions Possible
Whether for a commercial jet, self-driving vehicle or an MRI machine, the software that enables these systems to run reliably was developed by human engineers. In order to reduce risk and develop the best solutions possible, those engineers need a reliable set of tools for testing and automating software processes.
One solution for that is Robot Framework.
What is Robot Framework?
Robot Framework?is a flexible, open source automation framework that is actively supported. It is written, in Python, to support different methods of automated testing, such as data-driven and test-driven methods.
This framework uses an abstraction mechanism called keywords to make tests much more human readable. Keywords work like functions in code. They can be called from either test cases or other keywords and they can be given arguments for even better abstraction. Robot Framework is also extensible using libraries which provide new keywords for test cases to call. These libraries can be implemented with Python or Java.
Definitions
There are some terms that should be defined before we explain much more as they can differ between different test frameworks.
Standard Libraries
Robot Framework provides several standard libraries that help with a lot of the common functionality that is needed to develop tests. Here are some of the standard libraries that are more useful for Hardware-in-the-Loop (HIL) testing.
领英推荐
Custom Libraries
Available Third-Party Libraries
There are many custom libraries that are already developed and maintained by third parties that provide essential functionality for embedded testing. These include, but are not limited to, the following:
This is just a small sample of the already available custom libraries. More can be found under the external tab?here.
Writing Custom Libraries
Sometimes, the available custom and standard libraries that already exist will not be enough to fully test your custom solution. Sometimes you can cobble the existing libraries together to get them to do what you need. However, it may make sense to develop your own custom library. Some examples include if you have a custom application to run on the host or need to use an interface that does not already have a supporting library. A custom implementation is likely easier to manage and maintain into the future if APIs change.
This guide will not cover how to write your own custom library. There is a?comprehensive guide?available from the Robot Framework developers. We have used this guide to develop our own custom library to control a networked power controller. It uses an HTTP interface, so we could have used an HTTP library to implement our own keywords. However, by making it a custom library, it becomes much easier to integrate into different projects, since it can just be installed to the developer’s machine once and used across projects. Another benefit of using a library is that since it is a class, when you include the library, you can provide configuration data. That way, fewer arguments need to be provided via keyword calls.
If you want to reduce the risk involved in developing technical products, DornerWorks engineers can help you achieve that confidence with automated testing.?Schedule a meeting?with our team today and we will help you plan out a solution that meets your goals.