Automate Your Software Testing…Because It’s Much Harder to Automate your Beer Drinking
A group of us went out after work last week and as I was passing through the office to see if anyone else wanted to take advantage of a drink on the company Amex card I noticed one of our testing machines furiously flashing through screens in our Microsoft Dynamics Staffing Software – far faster than any human could. Here is a quick video showing the automated testing process and just how fast you can test the functionality of a product when you have multiple computers doing it.
The automated testing is composed of different sets of macros designed to enter data into the system in the same manner a user would. After a new version of the product is built the macros are run and the product is tested to ensure the programming changes didn’t break existing functionality.
The automated testing not only tests data entry, but also looks for any differences in reports. For example, if you simulate the entry of Job Orders and then enter a few thousand timesheets for the pay/bill process, the tests will save reports during the process to be compared from one version of the product to the next. If something changes – for example, a small rounding logic change in the invoicing process – even a $.01 difference- our fully integrated General Ledger would be flagged in the automated testing process. The quality assurance supervisor running the tests then determines if the $.01 change is a legitimate difference that should be accepted as the new standard for comparison or if development need to release a new version to correct it.
The automated testing process doesn’t replace human destructive testing, but it can help ensure new additions to the product don’t break the functionality our customers depend on.