It has been well known for some time that Model based Testing (MBT) has a lot of advantages over other testing approaches. One of the advantages is that you can generate the test cases out of a test model automatically and that only this test model needs to be maintained. In addition, MBT fits perfectly within the shift-left testing approach, which means that the testing activities needs to start earlier in the software development life cycle. Ideally testing should start right after the code has been written in the Unit test. And even better it is when Test Driven Development (TDD) is applied, which means that first the test code is written and then the real code. The Testing Pyramid even indicates that much more automated Unit tests have to be performed compared to integration tests and GUI tests.
Shifting left the test activities is very important to ensure that any bugs are found earlier in the software development life cycle. After all, the sooner we discover a bug, the cheaper the solution, as for e.g. the ‘law of Boehm’ describes.
The question is now whether this shift left movement is enough and whether we should not move even further to the left with our test activities. When you consider that almost 60% of all bugs in the production environment can be traced back to the requirements, this question is answered quickly. We should start testing the requirements! After all, the requirements are the basis for development and testing, so let’s make sure this basis is complete, unambiguous and clear to everyone before we start writing one line of code at all. If the basis is not clear or not everyone has the same understanding about this basis, then we know for sure that we will quickly introduce the first bugs in the code.
Early Model Based Testing (eMBT) can be the solution when it comes to start testing the requirements. If you break down the requirements by modeling them, you will quickly encounter ambiguities, contradictions, imperfections, etc. In addition, by modeling the requirements, you create a visual representation of the desired situation and we all know that a visual representation is much easier to read than a piece of text. A model therefore promotes communication between all team members and stakeholders with the aim of achieving a common understanding of the requirements as soon as possible.
This early Model Based Testing (eMBT) approach requires a Model Based Testing tool that supports this approach. TestCompass is such a tool that is designed to start testing the requirements. One of the benefits of TestCompass is the high level of abstraction of the Test Model. This increases the readability for everyone in your team. Therefore, TestCompass can be used from the very start of the Software Development Life Cycle (SDLC). And when drawing the model in TestCompass, you can include all your comments, questions, etc. about the requirements in the model via a special symbol. TestCompass supports in testing earlier, smarter and faster.
If you want to know more about eMBT or TestCompass, please leave a message.