What is integration testing

Document Sample
What is integration testing Powered By Docstoc
					What is integration testing?
Integration testing is unit testing based on the summary of all the
functions in accordance with the design requirements of a subsystem or
system assembly at the test.

The purpose of integration testing?

Verification Interface is compatible with the design; find design
errors and needs that exist.

The focus of integration testing?

1. The interface between elements.

Connect to each module when the data through the module interface will
be lost; global data structure if there are problems, will not be
unusual changes.

2. The integration of functions.

After each sub-module combination, the parent can achieve the desired
function; a functional module to another module's function is
adversely affected; accumulated error of a single module, it will
enlarge to an unacceptable degree.

The level of integration testing?

Module integration testing; subsystem integration testing; subsystems
of integration testing.
There are integration testing strategy?

Big Bang integrated approach: all the unit tests conducted with the
unit assembled for testing.

Advantages: can be completed quickly integrated test; Driver and Stub
less design; use case is also the least; method is simple; multiple
testers working in parallel, high resource utilization.

Disadvantages: Errors found hard to locate; interface testing is not
sufficient; due process inevitably exist in the presence of interfaces
between modules, global data structures and other issues, an unlikely

Scope: maintenance-type projects; demand-based projects; small

Top-down integration method: using the same order and design to test
the system, it the first time the system was verified by control
interface; using top-down integration testing methods focus primarily
on top-level components , and then gradually test at the bottom of the
component; can use depth-first and breadth-first strategy.

Advantages: earlier in the testing process to verify the main points
of control and judgments; up as long as a drive to reduce the driver
development costs; function earlier confirmed the feasibility, but
also to developers and users the confidence of success; If you choose
the direction of the depth of the assembly, it can be the first to
achieve and validate a complete software functionality; support fault
Disadvantages: the development and maintenance of pile is the biggest
cost of this strategy; the underlying components of behavior
verification was delayed; the underlying components of the increase,
the whole system becomes more complex, leading to the underlying
components of the test is not sufficient, especially reuse those

Scope: Product control structure clearer and stability; products of
high-level interface to little change; products or frequent low-level
interfaces can be modified is not defined; product control component
has a greater technical risk, need to be verified as soon as possible;
hope as soon as possible be able to see the product functional
behavior of the system.

Since low-up integrated way: from the structure of the program start
the bottom of the component assembly and testing.

Benefits: support for fault isolation; allow the underlying components
of the early acts of verification; in the initial work can be
integrated in parallel, at this point than the top-down strategy to
use efficiency; reduce the workload of the pile.

Cons:-driven development is a huge amount of work; on high-level
verification was postponed to the end, the design errors can not

Scope: the underlying interface, more stable, less changes in the
product; more frequent high-level interface to change the product; the
underlying components of the product is finished earlier.
Sandwich integration strategy: the system is divided into three, the
middle layer of the target layer, when tested on the target layer
above the layer with the top-down strategy, the following from the
lower layer up with the strategy, the final test in the target layer
join. Cons: the middle layer has been integrated in the pre-test is
not sufficient.

Backbone integration strategy: mainly used in embedded systems.

Layered integrated strategy: ... ...

Integration strategy based on function: identification of priority
functions; of the highest priority function path, the path on the
integration of all components together, if necessary, use the driver
and pile; analysis of key features in the next, until Zhendui all
functions were integrated. Disadvantages: For some interface testing
is not sufficient, will lose many Interface error; may be relatively
large redundancy test.

Message-based integration strategy: ... ...

Based on the progress of the integration strategy: ... ...

Risk-based integration strategy: ... ...

What is system testing?

System testing is a good software system will be integrated,
computer-based system as a whole element, peripherals, some of the
support software, data and personnel combined with other system
elements, in the actual operation (use) environment, the computer
system, a series of test events.

Common types of system testing.

1. Functional testing whether the main findings of incorrect or
missing features? Function realization meets user requirements and
system design of the hidden needs? Can the right to accept input?
Whether the correct output?

2. Performance Testing (Performance Testing)

Performance test information collected: CPU usage; IO use; memory
usage; channel use; the percentage of execution time for each module;
a module to wait for IO completion percentage; instruction over time
to track the path; each group instruction page for entry and for a
number of times; system response times; system throughput, that is,
the number each time the processing unit; all the major elements
instruction execution time.

3. Stress Test (Stress Testing)

Certain hardware and software and network environment, operating
through a large number of users large amounts of data, the system
resources limit the pressure in a run, the purpose is to find
practical point system.

Load test: some hardware and software and network environment, the
number of users to run through different orders of magnitude different
business, observe the system performance under different loads.

4. Capacity Test (VolumeTesting)

Overloading the system data capacity to bear to discover whether it
can properly handle?

5. Safety Testing (Security Testing)

Some features of the security problem: there is no password can log
into the system? Division at all levels of user rights is reasonable?
Errors and file access are properly logged? System configuration data
is stored correctly, the system failure can restore?

6.GUI test 7. Usability testing 8. Installation and testing 9.
Configuration test 10. Abnormal test 11. Backup Test 12. Robustness
test 13. Document test 14. Online help test 15. Network Test 16.
Stability Test
In the software testing process, we define the unit testing,
integration testing, system testing stages. Against
 Different software programs, testing the depth of different test stop
criteria are not the same. Such as unit testing, some projects I
 Are required to achieve a certain coverage (statement, branch, basic
path). Some items not requested, or reduce coverage
 . Consult integration testing and system testing of a stopping
criterion. Particularly good grasp integration testing at this stage,
the unit
 Testing phase is sometimes the work of some integration testing
(integration stage is not very clear!)