Tested with Squish
Weatherford Petroleum Consultants
Learn how Squish enabled WPC to automate complex C++/Qt GUI tests, reduce manual QA work, and strengthen product reliability over time
When Manual C++ Unit Testing Stops Being Effective for GUI Validation
Company: Weatherford Petroleum Consultants (WPC), a subsidiary of Weatherford International
Location: Norway (80 employees), Global parent company (~50,000 employees)
Industry: Oil & Gas Consulting and Simulation Software
Product: Sendra – Core flow simulator for SCAL experiments (Special core analysis services for oil and gas)
Technology Stack: C++ / Qt 4, Windows
Tool Used: Squish for Qt
Automating Tests with Squish Since
2009
Test Cases
30+ built, and hundreds planned
CI Integration
CruiseControl
Using Squish reduced the number of person hours required to perform testing, and made it possible to have shorter testing cycles.
Arent Arntzen, Sendra’s Scrum master (project manager)
Weatherford Petroleum Consultants (WPC) provides consulting services in such areas as geology, geophysics, petrophysics, reservoir modelling, and production technology. They also develop the Sendra core flow simulator which simulates SCAL experiments.
WPC employs about 80 people in Norway, while its parent company, Weatherford, employs around 50,000 people world-wide. Sendra is used by more than two dozen oil companies, institutes, and universities around the world.
Although WPC develop a wide range of software, Sendra is the first product that they have used Squish with. The Sendra simulator was initially created in the early 1990s, but in 2009 a new version, “Sendra 2009”, brought the simulator into the twenty first century with a modern GUI written in C++/Qt 4. Sendra is developed, tested, and deployed on Windows.
We were very pleased to speak with Arent Arntzen, Sendra’s Scrum master (project manager). Arent has been doing software testing for about two years, and Squish is the first GUI testing tool he has used.
From Technical and Business Needs to Solution
WPC needed a way to efficiently test their modernized Sendra GUI without reimplementing GUI logic in C++ test harnesses, which would have required significant engineering overhead and still failed to fully validate actual user workflows.
“We wanted to avoid creating C++ unit test harnesses that would have had to reimplement much of the functionality already handled by the GUI.”
The existing approach was not sustainable for testing live user interactions, limiting the ability to catch regressions and slowing down release processes.
First Impression of Squish
WPC discovered Squish through a web search and also met members of the Squish team at a trade show. They began by requesting an evaluation version to see if Squish could meet their needs.
After conducting a side-by-side comparison with a competing tool and confirming that Squish offered broader test coverage, easier integration, and deeper functionality, they decided to move forward and purchased their licenses.
WPC selected Squish based on several clear technical and operational advantages
- Squish runs tests against the entire live application (Advanced and application unit testing)
Native support for C++/Qt 4 and GUI object introspection
- Squish uses open scripting (Python) for test writing
- Integrates seamlessly with CruiseControl for CI
- Supports robust object handling via Squish Spy and Object Map
We did a long search for testing software, and as far as I can see, we are covering all the testing we can think of using Squish.
Arent Arntzen, Sendra’s Scrum master (project manager)
Shorter Cycles, Broader Coverage, Fewer Bugs
WPC quickly developed over 30 automated test cases for their Qt-based application Sendra and expects to scale to several hundred as part of their complete test suite. These include both existing functionality and ongoing feature and bug fix coverage.
Almost all GUI testing is now done using Squish as the primary test tool, with only limited use of other tools like the QtTest module.
The fewer tools we need, the better—and so the potential coverage of Squish is one of its truly excellent features.
The use of Squish enabled faster identification of regressions, more reliable validation of bug fixes, and an overall significant reduction in manual testing hours. As a result, testing cycles have become shorter, and releases more predictable and consistent in quality.
WPC uses a two-tiered testing approach: short, fast-running tests validate binaries quickly before release, while longer, more detailed test runs provide deeper coverage and monitor performance over time.
- Over 30 automated test cases built quickly, with plans for several hundreds
- Faster identification of regressions and validation of bug fixes
- Significant reduction in manual testing hours
- Improved release predictability and application quality
Results: Toward Long-Term Confidence and Maintainability
After the initial few weeks learning period, Sendra’s testers mastered the art of GUI application testing with Squish. Nonetheless, from time to time, as with any users of a technical product, they needed help. Here’s how Arent summarized Squish’s techical support:
Completely timely, precise, helpful, diplomatic, and in short: outstanding!
Squish has made a demonstrable contribution to making Sendra into a better product—and to keeping it reliable, even in the face of bug fixes and the addition of new features.
Squish has also proven valuable beyond test execution. Script robustness and maintainability were initially a challenge, particularly when application updates caused test scripts to break. These issues were addressed using Squish’s Object Map, which helps isolate scripts from UI changes by mapping object identifiers, minimizing maintenance effort.
The team also makes frequent use of Squish Spy, which allows testers to inspect application objects, view their properties, and identify them easily in test scripts—especially when writing tests manually.
All test automation is implemented in Python, an open, non-proprietary language, which provides flexibility without locking the team into a proprietary framework.
While WPC did not perform a formal ROI analysis, the time savings, reliability improvements, and reduction in manual effort have more than justified the investment in both the licenses and initial learning curve.
Bugs reported are squished forever so to speak!
says Arent
- Script maintainability improved through Object Maps
- Peace of mind from growing regression suite that prevents re-introduction of fixed bugs
- Tests authored in Python, an open and flexible scripting language
About Weatherford
The leading provider in technology and services for all aspects of oil and gas well operations
Weatherford International, a prominent multinational oil and gas company, excels in delivering innovative technology and energy services for oil and natural gas well operations, including formation evaluation, drilling, completion, production, and intervention.
Weatherford Petroleum Consultants (WPC) provides consulting services in such areas as geology, geophysics, petrophysics, reservoir modelling, and production technology. They also develop the Sendra core flow simulator which simulates SCAL experiments.
WPC employs about 80 people in Norway, while its parent company, Weatherford, employs around 50,000 people world-wide. Sendra is used by more than two dozen oil companies, institutes, and universities around the world.
Read Weatherford International Success Story
To learn how they turned a 12-hour test into a just 4-hour one
Oh, there's more
JSOL | Tested with Squish
JSOL Corporation enhances quality assurance in JMAG using Squish, automating 40% of test cases and reducing workload by 85%, ensuring efficient and re...
Read moreSuccess Story ABB | Squish for Qt
Discover the winning combination of stability and convenience with Squish for Qt with the ABB Group. Elevate your testing process today!
Read moreSuccess Story Skyguide | Squish for Qt
Skyguide, headquartered in Geneva, Switzerland, is a company with a longstanding history of contribution to the development of Swiss aviation.
Read moreReady to Scale Your C++/Qt GUI Testing?
WPC adopted Squish for Sendra to move beyond the limits of manual and unit-based GUI testing. Squish provided immediate and long-term benefits in test coverage, reliability, and efficiency. The tool’s robust Qt support, seamless integration with CI tools, and maintainability features have made it a core part of WPC’s test strategy and product quality assurance.