To support and manage the traffic lights, signs, and controller cabinets, software plays a vital role. Timing is key, as no-one wants to be kept waiting in traffic unnecessarily, so McCain-Inc software generates optimal signal timing parameters. It analyzes real-time traffic conditions, dynamically calculates the optimal signal timing, and measures performance, including high-resolution data reporting. The data is analyzed and kept, in case it is needed in accident investigations, to support court cases.
Tom Hart, Test Automation Architect/Manager at McCain-Inc, explains why software testing needs to be at the center of the software development process: “Before I arrived at McCain-Inc, all software testing was done manually, as in many organizations. New functionality testing would obviously take priority, often at the expense of regression testing, to ensure that new functionality hasn’t had an adverse effect on existing features. This would lead to production code which could be buggy, negatively impacting our customer satisfaction ratings. It was clear to everyone involved that test automation would help enormously and I evaluated several solutions.
We needed a solution which could expand to our needs, as we use different development languages and I foresaw a requirement for web and mobile device testing as well. I have a long personal history with Silk Test® and have implemented it at more than 15 companies over the last 25 years. I have seen the product grow over time and knew what it could deliver for McCain-Inc.”
Silk Test was soon implemented and one of the first projects was to introduce structured automated regression testing, with Error/Testcase Application State Recovery. The development process did not need to change as Silk Test can easily connect with existing tools in use within McCain-Inc, including build servers, source control, and test management systems. McCain-Inc developers can use their preferred IDE of Microsoft TFS or Eclipse, because IDE integrations support current tools and processes without disruption.
Hart comments: “The self-recovery aspect of Silk Test means that we run the majority of our automated testing during the night-time, which helps improve our productivity, and makes efficient use of the technology we have available. Silk Test is also flexible and I was able to set up Summary, Detailed, and High Level Reporting within it. This gives us several at-a-glance options to review which tests have run, and what the results were.”
Test automation needs to go hand in hand with a structured software testing process and Hart was very aware of this: “Even though the testing process is now much more rigorous thanks to Silk Test, we still have to put the right business processes in place. There was for instance nothing stopping our customers from downloading revised or updated code before it had completed its full QA cycle. This highlighted to us the need to adapt our business processes.” Silk Test is also used for API and database testing with database queries, so changes can be made and tested within Silk Test.
Hart uses Silk Test for what-if scenario testing: “We run tests which can have a positive and/or negative outcome. It is important for us to make sure that when the wrong data is entered our traffic controllers will fail and an error message is returned. Silk Test helps ensure this.”
The automated testing process with Silk Test has ensured a higher code quality, resulting in increased confidence and customer satisfaction ratings. The software testing now includes full regression testing, as well as functional and what-if scenario testing.
Hart concludes: “Silk Test is a great tool which has proven its worth to me time and time again through its expandability, and its cost-effective efficiency. The Micro Focus support is just superb and I love the fact that I can always get an immediate answer to any query I may have.”