This site is 100% ad supported. Please add an exception to adblock for this site.

comp 354

Terms

undefined, object
copy deck
Integration testing
testing the entire system once the subsystems have been integrated
Waht are the 4 stages of testing during development?
1- unit testing
2- Mudule Testing
3- Subsystem testing
4- Integration testing
Bottom up testing (dis)
- delays detection of high-level errors
- more costly to fix
-additional cost of writing drivers
R-W-I
general rules
1. teams prepare in advance
2. meetings are short
3. a moderator there to keep on topic
4. author only answers the questions asked otherwise does not talk
What is security and stress testing?
aka overload testing
-testing the system for different type of abnormal situations, try to penetrate the system (hacking)
-check the capability of the system to perform, done after integration testing under "overloaded" conditions
ex. full tables, memory,
What is the critieria for the modifies path testing?
McCabe complexity
1. every brach must be executed at least once
2. at least v distinct paths must be executed
What is Dynamic Verification?
Experimenting with the behaviour of a product to see whether it performs as expected (ex. testing)
What is statistics driven testing?
These tests are run to convince the client that the software is working by running typical applications. Results are often statistical.
validation
Does the product satisfy the users needs?
"building the right product"
Testing: def, aim
def: verifying the quality of correctness
Aim: to discover the presence of errors
Main problem: Testing can never be complete
Whatis regression testing?
testing old features again when new features are added or changes are made; to make sure you fully understood the changes to be made and did not impact parts of the system supposedly isolated from the changes
regression is degredation in level of correctness
What is Testing for Robustness?
testing the system with unexpected situations like wrong commands
What must be verified?
Everything: correctness, performance, reliability, portability, maintainability
When do you stop testing?
- stop when all tests succeed
-stop when the cost of testing exceeds the cost of shipping with errors
What is structure driven testing?
Construct tests to cover as much of the logical structure of the program as possible. A test coverage analyzer is a tool that helps to ensure full coverage.
Top down testing- def'n
test subsystems, then modules, then units
- need a stub (prototype) for each non-completed module or unit
What are the major components of a test plan?
1. description of major pahses of testing
2. objectives
3. testing schedule
4. a description of the relationship between the test plan and other project plans
5. description of how test cases were designed
R-W-I
Common features
1. a small group of people
2. the person responsible for the document
3. one person records the discussion
4. NO manager/boss present (inhibit discussion)
5. errors are recorded nut not corrected
Unit testing
testing an individual unit or basic component
ex. testing a function SQRT
whatis v=e-n+2?
v= McCabe's complexity number
e= Number of edges
n= number of nodes
What is requirement driven testing?
Develop a test case matrix (requirements vs. tests) to insure that each requirement undergoes at least one test.
What is a stub?
a stub simulates the behaviour of teh module/unit; it may do nothing/ may always exhibit the same default behaviour; may only handle those cases needed for tests
What is acceptance testing?
testing the real data for the customer to satisfy the customer that the system meets the requirements in customer environments
What is static verification
Analyzing the product to deduce its correct operation asa logical consequance of the definition (document)
eg. reviews, walkthroughs, inspections
top-down testing (dis)
- not so easy to devise tests at this level
-additional costs of implemeting stubs
Bottom-up testing (adv)
- every component is tested before integration into a larger component
- makes location of errors easier since we first assume it is in the integration/interaction of subcomponents rather than within the subcomponents
Bottom-up testing (def)
test units, then modules then subsystems
-need a driver to supply necessary input, output, data structures to test the unit, module subsystem
Reviews, Walkthroughs, Inspections
Aim: discovery of errors, NOT fixing errors
Basic Idea: team examines a software document during a meeting
Why: a group of people are more effective
Subsystem Testing
testing a susbsystem consisting of several modules, to check module interaction and module interfaces are ok
ex. an output subsystem writing to a database and keeping an audit trail and providing rollback services
What is a black box (aka functional testing)?
choose tests without knowledge of how the program works
top down testing (adv)
- catches high level design errors early
- saves cost
How do you ensure coverage of every componenent?
(white box testing)
1. all statements- every statement in the program must be exercised during testing
2. all edges- all edges of teh control graph ,ust be exercised
3. all branches- each possibility at a brach point (if or case statemetn) should be exercised
4. all paths
Waht is risk driven testing?
These tests check "worst case" scenario and boundary conditions. They ensure robustness.
alpha testing (dis)
- number of customers is small
expensice to invite the users onsite
Verification
builing the product right
What does the test case consists of?
1. the purpose of the test interms of system requirements
2. an input specification
3. a specification of teh expected output
What happends in a review?
- the author of the document presents the main themes
- others criticize, discuss, look for omissions, inconsistencies
- faults and potential faulsts are recorded
What happends in a walkthrough?
- need the team
- each statement or sentence is read by the author
- others ask for explanation or justification if necessary
What is white box based on?
based on the structure of the code
-the control flow graph
-the conditions controlling if-statements and loops
What is McCabe complexity?
it is how to measure the complexitybased on the control graph of a program
v=e-n+2
Beta testing (def)
-testing is performed on the customer site
- customers are supposed to record all problems
Beta testing (adv)
- cheaper
- a large number of tests can be conducted
-test cases are performed using different environmetns and setting
Beta testing (dis)
- many reported problems might not be real problems- related with the software system
- large number of system tests/errors might have to be processed
-not always easy to duplicate
Waht is recovery testing?
- enforce different types of failures in the system and check the recovery

ex. rebooting, killing processes, disconnect the network
Alpha testing (adv)
- controlled environment- errors and tests can be repeated
- test cases/erros are recorded by staff
Waht is alpha testing? (def)
-testing is conducted on the developer's site by a set of customers
-done is a controlled environment
Black Box testing- problem specification
1. Range
2. Enumerate the values
3. condition
4. boundary values
What happends during an inspection?
code is carefully examined with everyone looking for common errors
Module Testing
testing a module consisting of several units, to sheck that their interaction and interfaces are ok.
ex testing that pop and push in a stack module provide a last-in-first-out behaviour
Varietes of Testing
Goal-driven testing (4)
Phase driven testing
1- requirements-driven testing
2- Structure-driven testing
3- Statistics-driven testing
4- Risk-driven testing
What is a white box?
aka structural testing or glass box testing
choose tests based on our knowledge of how the program works
What are the steps in debugging?
1. locate the error
2. ascertain hot to correct error (is it a mistake in coding, desgn, requirements?)
3. fix it
4. re-run all tests

Deck Info

52

permalink