Please enable JavaScript.
Coggle requires JavaScript to display documents.
FOUNDATIONS OF SOFTWARE TESTING (Fundamentals of testing (Testing (Reduce…
FOUNDATIONS OF SOFTWARE TESTING
Fundamentals of testing
Humans are fallible, thus the software created are also fallible
Software defects: Error(Mistake), Defect(Bug, Fault), Failure
Any software defect
MUST BE
figured out ASAP
The cost to repair will multiplied for each phases
Defects may result in failures, or may not depends on user input
Sometimes defects exist yet not cause failure during testing, but results in failures in production
Testing
Reduce the risk of failure
Work with debugging, the one which can increase system quality
Testing itself is not enough. The quality of system depends on various factors (eg. staffs, standards) other than testing
Basic nomenclatures
False-fail/False-positive result
: Test result shows defected, but actually is not.
Error
: Human action that produces incorrect result
Defect
: A flaw in a component/system that cause system fails to perform correctly
Failure
: Fail of delivering expected system in promised time
Static Techniques/Static Test
Provides a powerful way to
improve quality and productivity
of software development
By assisting engineers to recognise and fix their own defects early
Difference between dynamic testing
Static
: Find defects without execution
Static
: Find directly in work products, at specification or implementation level
Dynamic
: Find defects with execution
Both dynamic and static testing are complementary.
5 advantages of static testing
Can start early in the life cycle
Rework costs are most often relatively low
Increase development productivity
The evaluation team has advantage to exchange information between the participant
Increase awareness of quality issues
Static testing is not achieve once, but has a more permanent nature.
Keep testing.