Final Material - Testing Flashcards
What is the difference between verification and validation?
Verification checks if we are building the product right and it conforms to specifications
Validation checks if we are building the right product that does what the user really requires
What is the difference between inspection and testing?
Inspection is concerned with analysis of the static system representation to find problems.
Testing is concerned with exercising and observing product behaviour
What is the difference between white box and black box testing?
Black box testing is tests in which the tester cannot see the code of the item being teste
White box testing is tests in which the tester is aware of the inner workings of the item being tested
What is development testing?
The system is tested during development to find bugs and defects. It is performed by developers and the testing team and includes unit testing, integration testing, and system testing
What is release testing?
Testing a particular release of a system intended for use outside of the development team. It is a form of black box testing that checks if the system meets requirements and is good for external use
What is user testing?
Users or potential users are involved in testing the system. Involves alpha testing, beta testing, and acceptance testing
What is unit testing?
Testing individual components in isolation. It is performed by the development team and is a form of white box testing
What is integration testing?
Individual software modules are combined and tested as a group. it is performed by the SQA team and is a form of black box testing
What is system testing?
Testing of the whole system after all modules are combined. It is performed by the SQA team and is a form of black box testing. It tests both functional and non-functional requirements whereas unit and integration testing only cover functional
What is regression testing?
Testing the system to check that changes haven’t broken previously working code. This is expensive for manual testing but simple with automated testing
What are the benefits of test automation?
- Automated tests have a lower chance of being wrong
- Tests are readily available for the rest of the project
- Automated tests can be run frequently
- Most useful in test-intensive practices like extreme programming
- Automated tests improve chances of detecting problems at the earliest possible moment
What is the difference between alpha and beta testing?
Alpha testing is when users work with the dev team to test at the dev site
Beta testing is when a release is made available to users to experiment in the environment and raise problems they discover
What is acceptance testing?
Customers test the system to decide whether or not it is ready to be accepted from developers and deployed in the customer environment
What is structured basis testing?
A method that tests each statement in a program at least once. We identify a set of linearly independent paths of execution and write a test case for each path
How do we calculate the number of tests necessary for structured basis testing?
- Start with 1 for the straight path through the routine
- Add 1 for each keywork: if, while, repeat, for, and, or
- Add 1 for each case in a case statement, if it doesn’t have a default case, add 1 more