System testing, integration testing, connection and differentiation of unit tests

Source: Internet
Author: User

First of all, three Tests are introduced to the basic concepts of these three

One: System testing

By name, system testing is a system that sets together hardware and software, verifying that the actual operating environment and conditions are simulated as much as possible, and by comparing with the requirements,

A test that discovers a place that is inconsistent with or inconsistent with the system definition.

System test Common types: Features, performance, pressure, capacity, security, GUI, availability, installation, configuration, exception (resiliency), backup, robustness, documentation, online Help, networking, stability testing.

1. Functional Testing:
1) Concept: According to the product's SRS and test requirements list, verify that the functional implementation of the product meets the requirements of the product specifications
2) Goal: To find the following types of errors
A) whether there is an incorrect or missing function
b) functional implementation to meet user needs and system design hidden requirements

c) Can the input be accepted correctly? Can I output the results correctly?
2. Performance test:
1) Concept: Used to test the performance of software in integrated systems

2) Goal: Measure the gap between the system and the predefined goals

3) Tools: LoadRunner, Webload, Silkperformer

4) Importance:

A) performance is an important part of quality
b) Establish a good image for users

c) Important means of cost savings
5) The key of performance test: Effective coordination, correct model, bottleneck location, reasonable suggestion

6) Performance requirements Five main features: Demand line, representativeness, completeness, testability, usability

3. Stress testing: Focus on stability and destruction
1) Objective: To investigate the performance of the system under the condition of its resource overload
2) Objective: Through the limit test method, discover the system in the limit or the harsh environment self-protection ability, the main verification system reliability.
4. Capacity testing:
1) Objective: To enable the system to withstand excess data capacity to find out whether it can properly handle

2) Focus:

A) overall business flow (general attention to static capacity)

b) capacity of the database

c) Maximum number of files

d) Maximum number of transactions
5. Security test: Password authentication, encryption and decryption technology, rights management, security log

6. GUI Test:
1) Focus: interface implementation and interface design of the agreement, confirm the correctness of the interface processing

2) object: Simple interface element, combined class interface element, complete interface (window)

3) Content: Appearance, interface element behavior, layout, friendly function

7. Usability Testing:

Focus Point:
1) complex functions or instructions

2) Difficult installation process

3) error information is too simple
4) Households are forced to remember too much information

5) Inconsistent syntax, formatting, and definitions

8. Configure the Test
Concept: The system has the function and the performance under the various hardware and software configuration, the different parameter configuration.
Objective: To verify the operability and effectiveness of all configurations, in particular to test for maximum configuration, minimum configuration, or special configuration
9. Anomaly Testing:
Concept: Also called system fault tolerance and recoverability test, through the artificial intervention means to make the system to produce software and hardware anomalies, by verifying the system anomalies before and after the function and operation State,

The ability to test fault tolerance, troubleshooting, and recovery of the system is achieved. It is an important means of system reliability evaluation.

Fault-tolerant Processing: System automatic processing, manual intervention processing

System Reliability Index: Average failure interval (MTBF), mean time to recovery (MTTR) system Reliability Design Technology:

1) Avoid errors
2) Fault-tolerant technology: structural redundancy (dynamic, static), information redundancy, time redundancy, hardware redundancy, additional redundancy technology
10. Robustness Test: Robustness Testing

Used to test whether the system can automatically recover or ignore failures to continue running in the event of a failure
11. Network test:
Concept: In the network environment and other equipment docking, the system functions, performance and indicators of testing, to ensure that equipment docking normal.
Content: To investigate the system's processing ability, system compatibility, system stability and reliability and user use.

1) Conformance test: The degree of conformance between the detection System and protocol specification

2) Performance test: Detect the performance of the Protocol entity or system

3) Interoperability Testing:
4) Robustness Test: detects the ability of a protocol entity or system to operate in a variety of harsh environments

12. System Stability Test: The purpose is to evaluate the system under a certain load situation, the long time operation situation.

Second: Unit test

1, the basic properties of the unit:

1) Clear function

2) Definable specifications

3) Clear division of interfaces with other units

2, the purpose of unit testing:

is to discover the various errors that may exist within each module, mainly based on white-box testing.

A) The verification code is consistent with the design;

b) Identify errors in the design and requirements;

c) Found errors introduced in the encoding process. (inconsistent with the design or in accordance with the design, but because

Code omission)

3. Unit testing focuses on:

Error handling, unit interfaces, local data structures, independent paths, boundary conditions

4, Unit testing the main focus point:

1) Whether the attributes, order and number of parameters are consistent with LLD

2) cannot modify the input parameters only, otherwise it may result in incorrect modification of the data

3) Whether the constraints are transmitted via formal parameters

5, the driving and the function of the pile:

1) Drive unit: The main function of the measured function, can accept input data, output actual test results

2) Pile unit: A sub-unit used in place of the measured unit call

6. Unit Test Strategy:

Isolated test strategy, top-down, bottom-up Unit test strategy

1) Isolate the test strategy:

· Method: The pile module and the driver module are designed for each module regardless of the relationship between each module and other modules. Separate unit tests for each module.

· Advantages: The method is the simplest and easiest to operate. can achieve high structural coverage. This method is purely unit-tested.

· Disadvantages: The pile function and the driving function work very much, the efficiency is low.

2) top-down unit test strategy:

· Method: First the topmost unit is tested, and the unit called by the top layer is made into a pile module. Secondly, the second layer is tested, using the unit tested above to do the driver module. This analogy is done until all modules have been tested.

· Advantages: It can save the development work of the driving function, the test efficiency is high.

· Cons: As one of the units being tested is added, the test process will become more complex and the cost of development and maintenance will increase.

3) bottom-up Unit test strategy:

· Method: The module of the lowest layer on the hierarchy graph is called to test the module, and the module of the module is called to do the driver module. Then do a unit test on the above layer, using the following has been

The tested modules do pile modules. And so on, until all modules have been tested.

· Advantages: It can save the development work of pile function, and the test efficiency is high.

· Cons: Not purely unit tests, the test quality of the underlying function tests the upper function to produce

Have a big impact.

7. Four phases of unit test: test Plan: Complete unit test plan;

· Test design: Complete unit test plan;

· Test implementation: Complete unit test Cases, Unit test procedures, unit test scripts and data files;

· Test execution: Execute unit Test cases, modify discovered problems and perform regression tests, and submit unit test reports.

Three: Integration testing

    1. Purpose of integration testing: Ensure that the components are grouped together to run in accordance with the intended intent and to ensure that the incremental behavior is correct (belongs to the gray box test)

1) Verify that the interface is compatible with the design

2) identify errors in design and requirements

2. Integration testing focus on: Interface between units, integrated functions

3. Level of integration testing: in-module integration, intra-subsystem integration, inter-subsystem integration

4. Integration Test Strategy:

1) Big Bang Integration

2) top-down integration

3) Bottom-up integration

4) Sandwich (mixed type) integration

5) Backbone Integration

6) Tiered Integration

7) function-based integration

8) Message-based integration

9) Progress-based integration

10) risk-based integration

The difference between the three:

Depending on the test phase, the test can be divided into unit , integration , system and acceptance tests .

It embodies the test process and the idea of divide and conquer from small to large, from inside to outside, and gradually.

Unit Test is the smallest size , generally by the development team using white box method to test, the main test unit is consistent with the " design ."

integration test bounds and system test , " Bridge effect " " design " " demand "

System Testing of the largest particle size , generally by the independent Test team using black box method to test, the main test system is consistent with the " Requirements Specification ."

The acceptance test is similar to the system test, the main difference is that the tester is different, and the acceptance test is performed by the user.

The black box test does not consider the internal structure and logical Structure of the program, it is mainly used to test whether the function of the system satisfies the requirement specification. Typically there is an input value, an input value, and a comparison of expected values.

White Box testing is mainly used in the unit testing phase, mainly for code-level testing, for the internal logic structure of the program, testing means: statement coverage , decision coverage , conditional coverage , Path coverage , conditional combination coverage integration testing is primarily used to test the interface between modules and modules, while also testing some of the main business functions.

System testing is the test of the complete simulation of the customer environment after the verification of the above stages.

System testing, integration testing, connection and differentiation of unit tests

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.