Laerdal is an international market leader in the field of Basic and Advanced Life Support training and treatment equipment. Laerdal is dedicated to helping save lives with products for CPR training, Airway Management, Advanced Life Support Training, Spinal Motion restriction, Trauma Training, Monitoring, Defibrillation, Patient Simulation made for using traditional basic, intermediate and advanced training techniques combined with micro simulation and virtual reality. The products are used, among others, by hospitals, ambulance services, first aid organizations, the military and by industrial worldwide. The company's head office is situated in the Norwegian city of Stavanger. Worldwide Laerdal is represented in North America, Europe, Asia & the Pacific.
Laerdal is an international market leader in the field of basic and advanced life support training and treatment equipment. Laerdal needed to replace manual testing and was looking for the right automation solution. Laerdal's Mikkel Munck Rasmussen, from the Copenhagen development department in Denmark, recently shared details about how TestComplete helps them perform black box and distributed testing.
Manual Testing Created Bottlenecks
Mikkel's department is mainly developing PC based Micro-simulators and for many years they were using manual testing. "The need for automated testing of these applications was growing rapidly, especially since our test cases were increasing in numbers. With our old manual testing practices there was a bottleneck each time we where getting close to a release."
"Upon each release we needed to test our applications on different platforms, from Windows 98 to Windows 2003, in all kinds of configurations, with various service packs installed, plus much more."
"It’s common for us to perform the same test on 20-30 platform configurations for every release. Furthermore, some of our applications are localized into 14 different languages, so it all adds up and was almost impossible to test manually. That is when we decided to change to test automation to free as many testing resources as possible."
Choosing the Right Automated Testing Tool
"TestComplete receives a lot of awards and reviews in magazines, plus the price of the product was very competitive compared to other products on the market. The most important factor was the evaluation of the TestComplete demo version. During this evaluation period we discovered that the tool could recognize the most important components in our applications and the support department was very helpful even though we hadn’t purchased a license yet," said Mikkel.
Black Box Testing with TestComplete
Mikkel said that the first step was to create a test in TestComplete that tested their applications' installation. "When we invested in TestComplete we had already set up an auto build system that makes installation images of our applications. We decided that our automated test should be connected to the tail of this pipeline. This meant that we had to rely on black box testing since the installation images were not compiled as an open application. There are, of course, ups and downs in black box testing vs. white box testing that I will not discuss here. Basically, it can be harder to do black box testing since you don’t have access to all parts of the AUT, but one thing I like about black box testing is that you actually test the exact same program that your are going to ship to your customers."
Overcoming Challenges with TestComplete
Mikkel said there were two main challenges they needed to overcome:
- Making tests work with all localized versions
- Distributed platform testing (integration with VMware server)
"The first challenge was to address the fact that the test needed to work with all localized versions of the installation program. To avoid writing scripts for each supported language we decided to connect the test framework with our translation system. The baseline is that the test scripts were based on the original strings from the source code, and we created a DLL library with the functionality to lookup strings during the test's runtime. TestComplete’s DLLAccess plug-in was just the feature we needed for this challenge. I was impressed how this actually turned out. We can now run the same script on all language versions and we also avoid stopping test scripts if a translation is missing. When a translation is missing, the framework knows that it should look for the original string," said Mikkel.
"Once we had our test cases up and running the next challenge was to distribute the tests to all platforms. Long ago we decided to run most of our tests on virtual machines and we wanted to continue that line in our automation. To solve that problem we made a solution with TestComplete and VMware Server from VMware. Here the ‘Network suite’ of TestComplete was a really strong component that made it possible to create a system that controls the virtual machines. It starts the virtual machine, launches TestComplete and runs the test cases, fetches the results and shuts down the virtual machine."
"To control the virtual machines in VMware server we had to use the VMware COM API, and fortunately it’s very easy to work with COM objects within TestComplete. Now, we have a framework where we can choose which tests we want to run on a selection of platform configurations."
"TestComplete has made it possible for us to test more thoroughly."
— Mikkel Munck Rasmussen, from Laerdal
Mikkel said that they have experienced some major benefits from using TestComplete. "TestComplete has made it possible for us to test more thoroughly. We can now run tests that were never even possible without TestComplete and we can run them on a daily basis. TestComplete's wide support of API’s and AutomatedQA'a support department are very helpful."