Shared Flashcard Set

Details

92. Integration and system testing
Chapter on Integration and system testing
35
Computer Science
Undergraduate 4
04/02/2012

Additional Computer Science Flashcards

 


 

Cards

Term
How to select the subsystems for integration testing?
Definition
Term
What is integration testing strategy?
Definition
determine order in which the subsystem are selected for testing and integration
Term
Describe big bang approach for integration testing
Definition
runs each individual, and combine all tests and run it at the same time
Term
Do you think big bang approach for a 3-layer-design is a good idea?
Definition
it's hard to detect where the problem is
Term
Describe bottom-up testing strategy
Definition
start from bottom and go to up, with layer above including the layer down tests

Lets the developers do the integration testing as soon as the modules in a single level are ready.
Easier to track testing progress.
Easier to find bugs.
Term
What is the pro for bottom-up testing strategy?
Definition
useful for system like: object oriented system, real-time system, system with strict performance requirement
No stubs needed
Term
What is a special program which is needed to do bottom-up testing?
Definition
test driver
Term
What are the cons for bottom-up testing?
Definition
Bad for functionally decomposed systems because the it will run most important subsystem last
Term
What is a good design pattern used for integration testing?
Definition
Bridge pattern
Term
What is a software needed to run bottom-up testing?
Definition
Test driver
Term
Describe top-down testing
Definition
Test the top layer first, then go down later, combining layer above

Top-down Testing makes it easier to find a missing branch link.
Term
What is a software needed to run top-down testing?
Definition
Test stub
Term
What are the pros for top-down testing?
Definition

1. Test cases can be defined in terms of functionality of the system

2. It's fast

Term
What are the cons for top-down testing?
Definition
Writing stubs is needed.
Maybe large number of stubs.
Does not test individual subsystems thoroughly
Term
Describe sandwich testing
Definition
tests are converged to target layer out of 3 layers
Term
In sandwich testing, how to select the target layer if more than 3 layers?
Definition
Try to minimize number of stubs and drivers
Term
What are pros of sandwich testing?
Definition
Top-down and bottom-up can be done parallelly
Term
What are cons of sandwich testing?
Definition
does not test individual subsystem thoroughly before integration
Term
Describe modified sandwich testing?
Definition
Phase 1: top layer, middle layer, bottom layer runs in parallel
Phase 2: top layer + middle layer, bottom layer + middle layer
Term
What is continuous integration.
Definition
A software development technique where people integrate their work frequently and automatically test
Term
What is the goal of integration testing?
Definition
Tests interfaces of subsystems
Term
What are 7 steps in integration testing
Definition
1. component test
2. sun in bigger subsystem
3. test functional req
4. test subsystem decomposition(dependencies)
5. test non-functional requirements
6. log tests
7. repeat 1 to 7 until system is fully tested
Term
What are two types of system testing? What are goals for each?
Definition
Functional testing: test functionality of a system
performance testing: try to violate non-functional requirements
Term
What are 4 types of performance testing?
Definition
1. stress testing
2. volume testing
3. compatibility testing
4. configuration testing
Term
What is the goal for acceptance testing?
Definition
Demonstrate system if ready for operational use
Term
What are two types of testing needed for acceptance testing?
Definition
Alpha test and beta test
Term
Describe alpha test
Definition
client use software in dev's environment
software used in controlled setting
Term
Describe beta test
Definition
client's environment
maybe many different environments
Term
What are 4 testing steps?
Definition
What needed to be tested
How it needs to be tested
Write test cases
Create test oracle
Term
Under which circumstances to use white vs black box testing?
Definition
White Box: To test the dynamic model, or in other words, to test the state and internal variables of a unit. Ensures thoroughness as every line can be tested (statement, loop, path, and branches).

Black Box: To test the functional model. For x inputs check for y outputs. Build a list of inputs with expected outputs based on both valid and invalid ranges. Need to have a basic understanding of the box.
Black box also used when you don’t have access to the internal systems but need to make sure it’s working wrt your implementation
Term
what is function coverage?
Definition
Percentage of methods (functions) that were included in test cases
Term
what is statement coverage
Definition
has each node executed?
Term
what is branch coverage?
Definition
each branch in if-else executed? (if part and else part)
Term
loop coverage
Definition
Term
what's condition coverage?
Definition
percentage of conditions for true and false
Supporting users have an ad free experience!