Sie sind auf Seite 1von 11

MODEL BASED

TESTING
Dhruv Desai
I209
MBA – Tech IT 4th Year
Why Model Based Testing?

■ Many problems discovered at a late stage of development process, often costly to


resolve.

■ Several pre and post release defects not found with traditional testing, which results
in:
– Increased planning time
– Increased impact on quality & cost
Root Cause

■ Unit testing is insufficient


Single unit may work properly in isolation.
Incorrect interaction between units may cause serious reliability
failures

■ System‐level testing is insufficient


What is Model Based Testing?

■ Model based testing is a software testing technique where run time behaviour of
software under test is checked against predictions made by a model.

■ A model is a description of a system's behaviour. Behaviour can be described in


terms of input sequences, actions, conditions, output and flow of data from input to
output.

■ Behaviour should be practically understandable and can be reusable; shareable


must have a precise description of the system under test.
How does MBT Work?

■ It generates tests automatically from models created by software developers and


testers.
■ The test oracle (mechanism to determine the result of a test) runs assertions for
both generation of tests and execution.
■ The test executor runs all the generated test cases and reports the testing results
from the model's abstract test suites.
■ The use of oracles involves comparing the output(s) of the system under test, for a
given test-case input, to the output(s) that the oracle determines that product should
have.
The MBT Process
How MBT is different?

■ With an upfront investment into making a more reliable and maintainable testing
suite for a given application, MBT is more part of the software development process
than independent scripting tasks.

■ The team focuses on how to build a testable application and create models based
on real-world functions from the user perspective.

■ No more test script development and no need for test script maintenance.
How MBT is different? (Contd….)

■ MBT doesn't eliminate maintenance; the models are created and maintained within
the code and are part of the software development process.

■ It helps create better software quality by getting the team thinking about the models.

■ It reduces test suite maintenance. It allows for flexibility to generate many tests
using different algorithms (smoke, regression, integration, end-to-end, and targeted
testing for new/modified features).
MBT Advantages

■ Easy test case/suite maintenance


■ Reduction in Cost
■ Improved Test Coverage
■ Can run different tests on n number of machines
■ Early defect detection
■ Increase in defect count
■ Time savings
■ Improved tester job satisfaction
Conclusion

■ Mental models can be designed anywhere in the software development lifecycle.

■ Those mental models can be transformed into models on paper. This helps testers
to achieve readability and re-usability.

■ Model based testing is a new approach that can be effectively implemented in SDLC
to improve software quality drastically.

Das könnte Ihnen auch gefallen