The customer challenge was its focus on the final stages of the development process and a manual emphasis in testing. This resulted in slow feedback on quality and in turn led to a large number of errors. The software version release cycle was also too slow to meet set targets.
The starting point of our assignment was to improve the efficiency of product development and reduce the occurrence of errors. Another challenge however, was that the equipment included embedded devices that were all part of larger embedded systems.
Enhanced quality and productivity using test automation and Continuous Integration (CI)
We began to solve the customer’s problems by using Continuous Integration (CI) and advanced test automation solutions. This also involved an analysis of protocol traffic for embedded devices.
It was important to have common solutions that were available to all software development teams. Building test automation mechanics between devices and systems required utilization of APIs and our special expertise in protocol traffic. This was well-executed and the solutions were so effective that both the customer and product development teams welcomed them.
We addressed the growing need for test automation with a Robot Framework by writing new protocol libraries to improve test automation capability and by increasing the number of automated test cases. The solution for accelerating the release cycle was Jenkins’ Continuous Integration, and included several applications (such as Git and Apache Subversion) as well as environment automation (Docker, AWS and Kubernetes). We used Wireshark for analysis of embedded devices’ protocol traffic.
Why did we succeed?
- We selected the right solutions and the customer trusted us. Our solutions were well-utilized by the customer.
- There were many interfaces in the products to be tested, this facilitated the rapid deployment of comprehensive test automation.
- We were able to cooperate closely with developers.
- We used proven methodologies in our work, such as SAFe, Scrum and Kanban.
The customer had a genuine desire and need to solve their problems. We also had the professional expertise to deliver the required solution. We were given the responsibility and the freedom to implement the required solutions.
Jani Haapala, test automation Delivery Lead