A commitment to quality assurance and a frustration with existing automated software testing led Cosmo Tech’s engineering team to seek a new and creative solution they’ve dubbed Testception.
As Engineering Team Manager Jean-Bapstise Briaud explains, there’s a fundamental problem that software developers know only too well that was causing issues for the development team.
“Like most software developers, our applications have tens of thousands of lines of code. All of this code needs to be checked for bugs and errors, and then re-checked every time that a change is made to ensure that it continues to work as intended. We use automated tests to carry out these quality assurance checks and, when the automated tests find a fault, it is flagged and we can take a closer look,” he said.
The problem, Briaud continues, is that because the automated tests themselves are just computer code, too, the fault that is identified in the software might actually instead be a fault in the automated test.
“We were faced with a problem: how could we tell whether our quality assurance processes were catching problems with the software, or demonstrating a problem with the test?” Briaud said. “We needed a way to ‘test the test’, but we quickly realized that this could be the start of a vicious testing circle.”
The Engineering Manager explained that using another test to check the company’s automated test was fine, but it was impossible to know if the ‘test of the test’ was also working as it should. The solution? A test of the ‘test of the test’, and then a test of the test of the ‘test of the test’, and so on. It seemed like the engineering team was setting itself up for a never-ending cascade of tests while potentially not being any closer to understanding whether it was the test or the software that had the error. After some brainstorming and some deep dives in quality assurance best practices, Briaud and his team introduced their solution: Testception.
“Testception’s name is inspired by the movie Inception,” Briaud says with a small. “Essentially we developed a method for testing the two parts – the software and the test – in two different environments. We could compare a new test against a previous test, the results of which against a certain iteration of our software we already knew. We could also compare our software against different tests and see if there were issues that arose – if there were, we would know whether it was an issue with the test or a real issue with the software.”
The Testception process means that Cosmo Tech clients can be assured that the software they purchase and the solutions they employ are of the highest quality. It saves the team time and the common vocabulary – including the neologism ’testception’ – helps the entire team understand what this part of the testing and quality assurance regime involves.
Yet Testception is more than just another tool in the quality assurance box for Briaud and his engineers; it’s also evidence of Cosmo Tech’s pioneering spirit and creativity in the face of challenges.
“Testception is a clear example of what we do really well here at Cosmo Tech,” says Briaud. “We took a complex challenge, we found a solution, and delivered value to the client.”