Unformatted text preview: The better it works, the more efficiently it can be tested.
– • Bugs add overhead of analysis and reporting to testing.
No bugs block the execution of the tests.
The product evolves in functional stages (allowing concurrent testing) Observability – What you see is what you test.
– A distinct output is generated for each input
System state and variables should be visible or queriable during
execution (past states and variables too)
Incorrect output is easily identified
Internal errors are detected through self-testing, and are automatically
Source code is accessible Embedded Systems 27 More Characteristics of Testability
• Controllability – The better we can control the software, the more
testing can be automated and optimized.
– All possible outputs can be generated through some combination of inputs
– All code is executable through some combination of input
– Software and hardware states can be controlled directly by the test
– Input and output formats are consistent and structured
– Tests can be conveniently specified, automated and reproduced • Decomposability – By controlling the scope of testing, we can more
quickly isolate problems and perform smarter retesting
– Software is built from independent modules
– Modules can be tested independently • Simplicity – The less there is to test, the more...
View Full Document
This note was uploaded on 01/19/2014 for the course ECE 5101 taught by Professor Sass during the Spring '14 term at UNC Charlotte.
- Spring '14
- Software engineering