Using Crayons to Paint a Masterpiece!

How we use ARTIST on our own projects to save time and money!

We are currently developing a hardware interface application for a customer’s Traffic Controller project.  The hardware interface is responsible for controlling access to the various hardware elements in the system, including traffic lights, traffic detectors, control panel switches and indication LEDs.  The application also provides traffic lamp monitoring readings to client applications.  It runs on an ARM based system, running Linux.

Clients interact with this application via a TCP/IP socket connection and a bespoke protocol, defined in our customer’s interface specification.   The team have been testing the application via a bespoke client simulator that used hardcoded fixed messages, which require the tester to enter a series of numbers in order to mimic the sequence of messages that a connecting client would send.  The responses to these messages, which are received as HEX values, had to be analysed to ensure that they are correct.  This is a time consuming process that requires an experienced engineer’s time!

Using the Right Tools for the Job

It was quickly identified that this was a job for ARTIST!

We had a work experience placement in from a local secondary school, so decided that this would be an ideal test of how simple the creation of ARTIST scripts are!  After giving him a brief overview of the system, the importance of testing and how ARTIST works, we sat him down with a few sample scripts and a copy of our customers interface specification.  He was then able to work through the specification, firstly creating a script for each message, and then creating a set of scripts that would test each area of functionality of the system,  testing both valid and invalid sequences and message values.  Within a couple of days he was able to run scripts on the development system that took control of and set the traffic lamps!

This shows the real power of ARTIST! We were able to use a non-experienced tester, with no programming knowledge, to develop the scripts and test the system, after just a brief overview and a copy of the interface specification.   This allowed the experienced engineers to continue developing the system.

Now the scripts have been developed, the engineers are able to quickly run through them after each build.  This allows them to be confident that as new areas of functionality are developed, they do not affect the functionality already developed.

The scripts are able to check the responses that are received from the system under test, to ensure that they are as expected.  This means that the script can be left running without supervision, or even scheduled to be run after an overnight system build.  The engineers can then simply check the HTML report to ensure that all tests passed as expected!

For this project, we used the TCP/IP binding, Python Script Engine and HTML Reporting Engine ‘off-the-shelf’ ARTIST components.

For more information about how ARTIST can turn your testers into the next ‘Rembrandt’, ‘da Vinci’, or ‘van Gogh’ even though they are used to working with crayons, see the following link .