Verification and Testing of Embedded Systems: Non-Functional Test Bug Characteristics, Lifecycle & Reporting
Verification and Testing of Embedded Systems: Non-Functional Test Bug Characteristics, Lifecycle & Reporting
Verification and Testing of Embedded Systems: Non-Functional Test Bug Characteristics, Lifecycle & Reporting
Module 5
Non-functional Test
Bug Characteristics, Lifecycle & Reporting
• Non-functional Testing
• Load Test: loading the SUT gradually till the usage approaches the system’s
maximum capacity
• Stress Test: loading the SUT rapidly till the usage goes beyond the system’s
maximum capacity in an attempt to break down the system
• Interoperability Test: test the interaction between the different parts of the
same system, either from the same vendor or from different vendors
• Compatibility Test: check that two different systems can work properly
sharing the same platform
• Reliability Test: test the stability of the SUT over long time of continuous
operation and under different conditions, “long time” differs from a system to
another
• Robustness Test: test the capability of the SUT to tolerate and over come
invalid inputs and conditions
• Configuration Test: test the behavior of the SUT under different combinations
of the possible configurations
• Usability Test: test how friendly the system is to new users, usually uses the
Test-as-you-go technique
• Beta Test: actual testing by potential user/customer at the users’ site, the
product is released to a selected group of users
• Regression Test: verify that the updates in the SUT to fix a recently reported
bug or to integrate a new feature/component did not negatively impacted the
already passing TCs
• Regression Test is pretty important and exists along all of the test life
cycle
• Performed at the baselines, the builds that imply major changes, and
periodically
• Any anomaly from the intended system design, the organization standards,
the system functional requirements, or the non-functional requirements is
considered a bug.
• Descriptive Summary
• Bug Priority
• Environment Setup
• Reproducible Procedure
• The procedure that gives the highest probability of reproducing the bug, incase it is
inconsistent
• Failure description
• Bug Severity
• Critical / Blocking: An item that prevents further testing of the product or function under test
can be classified as Critical Bug. No workaround is possible for such bugs.
• Major / High: A defect that does not function as expected/designed or cause other
functionality to fail to meet requirements can be classified as Major Bug. A workaround can
be provided for such bugs.
• Average / Medium: The defects which do not conform to standards and conventions can be
classified as Medium Bugs. Easy workarounds exists to achieve functionality objectives.
• Minor / Low: Cosmetic defects which does not affect the functionality of the system can be
classified as Minor Bugs.