1.1.What is Testing? Flashcards
What are the typical test objectives?
- Evaluating work products such as requirements, user stories, designs, and code
- Triggering failures and finding defects
- Ensuring required coverage of a test object
- Reducing the level of risk of inadequate software quality
- Verifying whether specified requirements have been fulfilled
- Verifying that a test object complies with contractual, legal, and regulatory requirements
- Providing information to stakeholders to allow them to make informed decisions
- Building confidence in the quality of the test object
- Validating whether the test object is complete and works as expected by the stakeholders
What are test objects?
Software testing is a set of activities to discover defects and evaluate the quality of software artifacts.
These artifacts, when being tested, are known as test objects
What is the difference between dynamic and static testing?
Dynamic testing involves the execution of software, while static testing does not. Static testing includes reviews and static analysis. Dynamic testing uses different types of test techniques and test approaches to derive test cases
What factors can alter the test objectives?
- context: the work product being tested, the test level, risks, the software development lifecycle (SDLC) being followed
- factors related to the business context, e.g., corporate structure, competitive considerations, or time to market
What is the typical process after a dynamic test triggers a failure?
- Reproduction of a failure
- Diagnosis (finding the root cause)
- Fixing the cause
- confirmation testing
- regression testing
What is the typical process after a static test identifies a defect?
There is no need for reproduction or diagnosis, since static testing directly finds defects, and cannot cause failures
What is the difference between testing and debugging?
Testing can trigger failures that are caused by defects in the software (dynamic testing) or can directly find defects in the test object (static testing).
When dynamic testing triggers a failure, debugging is concerned with finding causes of
this failure (defects), analyzing these causes, and eliminating them.
What is confirmation testing?
checks whether the fixes resolved the problem. Preferably, confirmation
Who , ideally, should do the confirmation testing?
testing is done by the same person who performed the initial test.
What type of testing is typically done after confirmation testing?
Subsequent regression testing can also
be performed, to check whether the fixes are causing failures in other parts of the test object
What testing is needed after static testing identifies a defect?
When static testing identifies a defect, debugging is concerned with removing it. There is no need for
reproduction or diagnosis, since static testing directly finds defects, and cannot cause failures
What is component testing also known as?
unit testing
program testing
module testing
system component testing