Software Testing Standards (Aligned with ISTQB)
Software Testing is not only Software Testing. It means being a good software tester is not only running the defined tests but also being an advocate of quality, but how can we improve it?
Finding vulnerabilities and revealing weaknesses in a product is very important to improve the quality. Beyond that, what is even more important, possible bugs can be avoided in the first place rather than finding them after release.
So, Software Testing is beyond how it sounds. It contains a huge scope and responsibility. Considering this in mind, performing all activities in an efficient way affects success. If a proper suite is not executed at the proper level, we may miss the deadlines or goals. Infinite testing is not possible and bug-free software is not possible either, therefore test cases should be prioritized.
Speaking about levels, priorities, and bug management; all these concepts should be defined well and by means of all, an efficient test approach can be maintained:
Test Case Lifecycle
To successfully manage testing activities and not miss anything to fulfill everything needed, a test life cycle with all stages from the analysis of requirements to the maintenance of test cases and results should be defined.
Tests can be performed on various levels. What are test levels and what are the differences?
Tests can be categorized into two main categories which are Functional vs Non-functional. Nonfunctional tests can be handled by numerous sub-categories like Performance, Security, Safety, Ability: Usability, Maintainability, Recoverability, Environmental
Test design is of great prominence to cover the specifications. Boundary Analysis and Equivalence Partitioning are some test design techniques.
Testing by seeing the product code or not: White box, black box, gray box approaches
Test Priority Levels
Risk management and prioritization are managed by priority levels. But how can we decide on priorities? There is a calculation formula to decide priority levels.
All reported issues may not be real bugs, but also false alarms. What are the concepts: Silent Horror, False Alarms, Bug Tracking
What are the basic Metrics to monitor testing progress?