Chapter 8 Flashcards
Why do we need TESTING?
To show that a program does what it is INTENDED to do and to discover program DEFECTS
What can testing REVEAL?
Testing can reveal the presence of ERRORS, but NOT their absence.
Draw a scheme of testing as input-output process
Input test data—>[System]—–> Output test results
what doe V&V stand for?
Verification and Validation
What is Verification ?
“Are we building the product right”.
It means the software should conform to its specification.
What is Validation?
“Are we building the right product”.
It means the software should do what the user really wants
What is the goal of V&V?
It’s to establish confidence that the system is
‘fit for purpose’.
What does the confidence of **V&V **depend on?
1)Software’s purpose, 2)user expectations and
3)marketing environment
what is Software INSPECTION?
inspections involve people examining the source representation with the aim of discovering ANOMALIES and DEFECTS.
what are ADVANTAGES of INSPECTION?
Due to inspection being a static process, you don’t have to worry about errors hiding each other
Incomplete versions of a system can be inspected
without additional costs.
other that error detection, Inspection can also check compliance with standards, portability
and maintainability.
Name stages of testing:
- Development testing
- Release testing
- User testing.
what stages does Development testing include :
1.Unit testing
2. Component testing
3. System testing
what is Unit testing?
It’s testing individual components in isolation.
It is a defect testing process.
What does Unit testing check?
1) Individual functions
2)Object classes
3) Composite components
what parts does the automated test have?
- A setup part
- A call part
- An assertion part
what is TDD?
Test-driven development - The code is developed incrementally, along with a test for that increment. You don’t move on to the next increment until the code that you have developed passes its test
what are steps of TDD?
- Identifying the increment of functionality
- Write a test
- Run the test
- Implement the functionality and re-run the test.
- Move to the next chunk
what are advantages of TDD?
- Code coverage
- Regression testing
- Simplified debugging
- System documentation.
what is Regression testing?
It’s testing the system to check that new changes have not ‘broken’ previously working code.
What is Release testing?
It is the process of testing a particular release of a system that is intended for use outside of the development team.
what is User Testing?
testing process in which users or customers provide input and advice on system testing.
what are types of User testing?
- Alpha
- Beta
- Acceptance
what is Alpha testing in User testing?
users of the software work with the development team to test the software at the developer’s site.
what is Beta testing in User testing?
a release of the software is made available to users to allow them to experiment and to raise problems that they discover with the system developers.
what is Acceptance testing in User testing?
customers test a system to decide whether or not it is ready to be accepted from the system developers and deployed in the customer environment.