Testing aerospace UUTs leads to Web solution
Greg Reed, Contributing Technical Editor -- Test & Measurement World, 9/11/2006 10:04:00 AM
Greg Chapman, a test engineer in the Department of Defense’s aerospace division, is constantly challenged with finding the quickest method to get automated tests set up and running. In one case, he needed to test a device that had an embedded Web server that permitted the device to be operated through a browser (Explorer or Firefox). Chapman needed a way test multiple units automatically while gathering data.
He solved the problem by adapting software from a company named screen-scraper.com. The company sells a data-mining utility that extracts data from Web sites. With the help of Todd Wilson, founder of screen-scraper.com, Chapman created a complete test sequence, which encompasses invoking a screen-scraper script through LabView. For example, steps in the test of the UUT that require a “button” to be clicked from a Web browser can be invoked from screen-scraper’s command line, via a custom LabView virtual instrument (VI).
Here is how Chapman uses the screen-scraper utility.
1. Using a “proxy server” embedded to screen-scraper, he sets the Web browser to go through a proxy server.
2. In screen-scraper, he “starts” the proxy server.
3. Using the browser, he performs the functions he wants to automate.
4. Then, he stops the proxy server. All the transactions are saved in the proxy server section of screen-scraper.
5. Next, he clicks onto each transaction and tells screen-scraper to generate scraping sessions.
6. After this is complete, he can execute the scraping session to perform the same tasks that he just completed using a Web browser.
Chapman provided the following example of how the scraper can be used to log into a Web-based Ethernet smart switch.
1. The “ ~#IP_ADDRESS#~” is a variable passed in from the command line. This allows the test software to pass in whatever IP address is needed for the hardware addressed.

2. The code shown below “scrapes” the session ID created on the UUT and passes it to screen-scaper, to be used in logging in. This is needed for hashing a password key.

3. The parameters below allow access to the smart switch, and allows control of the smart switch.

4. The following code allows control of the Ethernet port. The variables “~#PORT_NUM#~” and “ ~#PORT_ON#~” are passed in from the command line and allow users to set the port number and enable or disable the port.

5. The most time-consuming section of the project is coding. For this example, Chapman’s script came from pajhome.org.uk/crypt/md5, and he wrote the four final lines himself:
var sid = session.getVariable( "SessionID" );
var str = "admin"+"12345"+sid;
var pwd = hex_md5(str);
session.setVariable( "PASSWORD", pwd );
The rest of the script is an algorithm used by the smart switch to hash the text password with the session ID. As a rule, the standard method of logging in is just a matter of placing a username and password in screen-scraper. Keep in mind, the above example takes a smart switch that allows a test set to enable/disable ports and set their speed. Some products require Ethernet speed tests.
Chapman's novel test technique gives engineers flexibility as they run fairly complicated tests on UUTs. Using third-party software, he is able to use a program, rather than a Web browser, to log into a switch and turn on or off given ports. Thus, he can use LabView and access ports on the fly. Greg Chapman said, “My daily aerospace test challenges proved to be the mother of this invention. Once my test challenge was defined, I simply searched for available commercial tools to help solve my problem.”
For further explanation, contact Greg Chapman.


















