Testing Shows Presence of Defects: But Cannot Prove That There Are No Defects
The document outlines 12 principles of software testing:
1) Testing shows defects but cannot prove their absence.
2) Exhaustive testing is infeasible so prioritization is needed.
3) Testing should start early and have defined objectives.
4) Defects often cluster in a small number of modules.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
66 views
Testing Shows Presence of Defects: But Cannot Prove That There Are No Defects
The document outlines 12 principles of software testing:
1) Testing shows defects but cannot prove their absence.
2) Exhaustive testing is infeasible so prioritization is needed.
3) Testing should start early and have defined objectives.
4) Defects often cluster in a small number of modules.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4
Session 5:
What are the Principles of Software Testing?
Today I just wanted to share with you the 12 testing principles to improve your testing Knowledge 1. Testing shows presence of defects: But cannot prove that there are no defects. 2. Exhaustive testing is not possible: Test everything (all combinations of inputs) is not feasible, so companies should focus better on use risk analysis and prioritize features that are priority. 3. Early testing: Testing should start as early as possible and be focused on defined objectives. 4. Defect clustering: Usually most of times defects are found in clusters, this is that a small number of modules generally contain most of the defects. 5. Pesticide paradox: This happens when the same test cases are repeated over and over again, so this causes effectiveness to be reduced and eventually will not allow finding new defects, to avoid this, the test cases needs to be reviewed, revised and updated regularly. 6. Testing is context dependent: The testing needs to be done differently in different contexts depending on the needs of the company; for example medical software needs to be tested differently from an e-commerce site. 7. Absence of errors fallacy: Finding no more defects in software does not mean that software s perfect and defect free. Also finding and fixing defects is of no help if the software is not meeting user needs. 8. Testing must be traceable to requirements: Testing needs to make sure that all requirements are being tested hence being met. 9. Testing needs to be planned for and conducted early in the software process: Testing is not only done when code is completed, needs to be done in all SDLC phases to assure quality. 10. Data on the defects detected should be used to focus future testing effort: It is better to focus testing efforts on areas that have more errors. An important principle of testing is that the testing resources should be used to uncover the largest possible number of errors. 11. Testing should be done incrementally: Software usually consists of a number of modules that interface with each other to provide the overall functionality. Some testers have the tendency to test software only after it is fully coded and integrated. The rationale for this is that if coding is done properly, there should be very few errors in it. Therefore, there is no need to waste time testing parts of the software separately. This approach is called “big- bang” testing. However, it is problematic because it is very difficult to isolate the sources of the errors encountered, as well as detect smaller errors, when the software one shot. An important testing principle, therefore, is that testing should be done in incremental steps. 12. Testing should focus on exceptions: Also testing should be focused on testing exceptions scenarios like incorrect dates, unexpected data combinations and inputs so that more defects can be found.
SQL NoSQL Databases Models Languages Consistency Options Architectures for Big Data Management 1st edition by Andreas Meier, Michael Kaufmann 9783658245498 3658245492 - The full ebook version is available, download now to explore