Software Testing 6: software testing model

Source: Internet
Author: User
Test Model v MODEL

  Test phaseUnit Test

Integration Test

System Test

  Implementation Significance

The V model is a variant of the software development waterfall model. It reflects the relationship between test activities and analysis and design.
.

It describes the basic development process and test behavior from left to right, and clearly identifies the different levels in the test process, it also clearly describes the mappings between these test phases and various stages during the development process.

On the left side, the development process phases are decreased in turn. Correspondingly, the components on the right side are increased in turn, that is, the phases of each test process.

User requirement Acceptance Test

Requirement Analysis and System Design validation testing and System Testing

Summary design integration test

Detailed Design Unit Test

Encoding

  

Software Test v MODEL

V model Problems

1. testing is a stage after development.

2. The test object is the program itself.

3. Errors in the demand phase are easily discovered in actual applications until the final system test phase.

4. the process quality assurance of the entire software product is completely dependent on the developer's ability and responsibility for the work, and the results of the previous step must be adequate and correct. If a problem occurs at any stage, it will seriously affect the quality and expected progress of the entire project.

W Model

The W model was proposed by evolutif. Compared with the V model, the W Model adds verification and validation activities that should be performed simultaneously in various stages of software development. The W Model consists of two v‑type models, which represent the testing and development processes respectively. The figure clearly shows the parallel relationship between testing and development.
W model emphasizes that testing is accompanied by the entire software development cycle, and testing objects are not only programs, but also needs and designs to be tested. That is to say, testing and development are synchronized. The W model is conducive to comprehensive Problem Discovery as soon as possible. For example, after the requirement analysis is complete, the tester should participate in the requirement verification and validation activities to identify the defects as soon as possible. At the same time, testing the demand is also conducive to timely understanding of the project difficulty and test risks, and early preparation of countermeasures, which will significantly reduce the overall test time and speed up the project progress. However, W models also have limitations. In the W model, requirements, design, encoding, and other activities are considered serial. At the same time, the test and development activities also maintain a linear relationship between the front and back, and the last stage is completely over, to start the next phase. In this way, iterative development models cannot be supported. The W model cannot lift the confusions of test management when software development is complex and changing.

  



W Model

H Model

In the H model, the activities of the software testing process are completely independent throughout the entire product cycle and are carried out concurrently with other processes. When a test point is ready, from the test preparation stage to the test execution stage. Software testing can be performed as early as possible, and can be performed at different levels based on the tested objects.

  

Software testing (H Model)

This demonstrates a test of "microcirculation" at a certain level throughout the production cycle ". Other processes marked in the figure can be any development process, such as the design process or encoding process. That is to say, as long as the test conditions are mature and the test preparation activities are completed, the test execution activities can be carried out.

The H model reveals the principle that software testing is an independent process that runs throughout the entire lifecycle of the product and is executed concurrently with other processes. The H model indicates that software testing should be prepared and executed as soon as possible. Different test activities can be carried out in a certain order, but they may also be repeated. As long as a test reaches the readiness point, the test execution activities can be carried out.

X Model

The X model is also an improvement to the V model. The X model proposes to separate code and test individual program fragments. After that, through frequent handover, it is integrated into executable programs. The left side of the X model describes the code and tests for separate program segments. After that, the code is frequently handed over and integrated into executable programs, then test these executable programs. Finished Products that have passed the integration test can be encapsulated and submitted to users. They can also be part of larger scale and in-Range Integration. Multiple Parallel curves indicate that changes can take place in each part. As shown in the figure, the X model also positions exploratory testing, which is a special type of testing that is not planned in advance, this approach often helps experienced testers discover more software errors outside of the test plan. However, this may result in a waste of manpower, material resources, and financial resources for testing, and a high requirement on tester proficiency.

  

X Model
Pre-Model

  Career development prospects of software testing

With the development of China's software industry, professional software testers have become the targets of many well-known companies. Software Testing has broad development prospects, which can be divided:

· Junior Test Engineer: junior position, development test script, and execution Test

· Test Engineer/Program analyst: compile an automatic test script program

· Senior test engineers/program analysts: Determine the test process and guide Junior test engineers

· Test group owner: supervises 1-3 persons, responsible for scale/Cost Estimation

· Testing/programming director: supervises 4-8 persons, arranges and leads tasks, and proposes technical methods

· Testing/quality assurance/Project Manager: responsible for one or more projects of more than 8 persons, responsible for the entire life cycle

· Business/Product Manager: manages the personnel of multiple projects, and is responsible for the project direction and business profit and loss.

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.