当前位置:网站首页>[software testing] 04 -- software testing and software development
[software testing] 04 -- software testing and software development
2022-07-05 07:06:00 【Derived planet】
Software testing and software development
Software development and software testing are very important components of software projects , Software development is the production of software products , Software testing is to check whether the software product is qualified , Close cooperation between the two can ensure the quality of software products .
1. The relationship between software testing and software development
Problems in software are not necessarily caused by coding , Software will go through problem definition before coding 、 Demand analysis 、 Software design and other stages , Problems in the software may also be caused by the early stage , If the demand is not clear 、 There are mistakes in software design , Therefore, it is very necessary to test in each stage of the software project . Testers have been involved since the beginning of software project planning , Understand the whole process of the project , Find problems in the software in time , Improve the quality of software . The role of software testing in each phase of the project is as follows .
(1) Project planning stage : Responsible for monitoring the whole test stage from unit test to system test .
(2) Demand analysis stage : Determine test requirements analysis , That is, determine what needs to be tested in the project , At the same time, make the system test plan .
(3) Outline design and detailed design stage : Make unit test plan and integration test plan .
(4) Encoding phase : Develop corresponding test code and test script .
(5) Testing phase : Implement the test and submit the corresponding test report .
Software testing runs through the whole process of a software project , But its implementation process is different from software development . Software development is top-down 、 The process of gradual refinement , The software planning phase defines the software scope , The software information domain is established in the software requirements analysis stage 、 Functional and performance requirements, etc , The programming language is selected in the software design stage 、 Design module interface, etc ; Software testing is the opposite of the software development process , It is bottom-up 、 The process of gradual integration , First unit test , Eliminate defects in the internal logic and function of the module , Then the modules are integrated and tested according to the software design requirements , Detect errors in subsystem or system structure , Finally, run the complete system , Conduct system test , Verify that it meets the software requirements .
The relationship between software testing and software development can be illustrated 1 Express , Among them b Figure a The refined .
2. Common software testing models
In the process of software development , People have summed up many software development models based on experience and lessons and combined with the development trend of future software , Like the waterfall model 、 Rapid prototyping model 、 Iterative model, etc , These models have a good guiding role for the software development process , Unfortunately, they do not pay enough attention to software testing , Using these models can not better guide software testing . Software testing is a series of planned activities closely related to software development , Is an important means to ensure the quality of software , Therefore, many software testing models have been designed to guide the testing work .
The software testing model takes into account the software development process , Software development and testing are well integrated , It clarifies the relationship between software development and testing , It also makes the testing process interact with the development process , It is an important reference for testing .
Software testing model has a guiding role for testing , It has a great impact on the test effect and quality , Many testing experts continue to improve and innovate in practice , Created many practical software testing models . Here are some important software testing models .
①V Model
V The model was made by Paul · Luke (Paul Rook) stay 20 century 80 Proposed in the S , It is one of the most representative software testing models .V The model is a variation of the waterfall model , Added testing work in the second half of the waterfall model , Pictured 2 Shown .
V The model describes the basic development process and test behavior , It mainly reflects the relationship between test activity analysis and design . It clearly shows the different levels involved in the testing process , And the relationship between each stage of testing and each stage of development .V The left side of the model is from top to bottom 、 Gradually refine the development process , On the right is from bottom to top 、 The process of gradual integration , This also conforms to the relationship between software development and software testing .
V The model uses the idea of waterfall model to divide the complex testing work into small stages with clear goals , There are stages 、 Order and dependence , It includes both low-level testing of the source code , It also includes high-level testing of software requirements . however V The model also has some limitations , It can only be tested after coding , Early requirements analysis and other preliminary work are not covered , Therefore, it cannot find early errors such as requirements analysis , This is for later system testing 、 The acceptance test buried hidden dangers .
②W Model
W The model is made by V The model evolved from , It emphasizes that testing should accompany the whole software life cycle . Actually W The model is a double V Model , Software development is a V Model , Software testing is another process that goes hand in hand with development V Model , Pictured 3 Shown .
W The test scope of the model includes not only the program , It also includes requirements analysis 、 Software design and other preliminary work , This is conducive to the early and comprehensive discovery of problems . however W The model has its own limitations , It divides the software development process into requirements 、 Design 、 code 、 Integration and a series of serial activities , Cannot support iteration 、 Items requiring change and adjustment, such as spontaneity .
③H Model
In order to solve V Model and W The problem with the model , Some experts put forward H Model ,H The model completely separates the testing activities , Form a completely independent process , This process clearly reflects the test preparation activities and test execution activities . The test process and other workflows are executed concurrently , As long as the conditions of a workflow are ripe, you can start testing . For example, complete a test on the outline design workflow , The process is shown in the figure 4 Shown .
chart 4 It just reflects a test at the outline design level in the software life cycle “ Microcirculation ”. stay H In the model , There is no strict order relationship between test levels , The testing work in each stage of the software life cycle can be triggered repeatedly 、 iteration , That is, different tests can be carried out repeatedly . In the actual test work ,H The model does not have much guiding significance , The reader's focus is to understand the design significance .
④X Model
X The design principle of the model is to divide the program into multiple segments and test repeatedly , Then integrate multiple fragments and perform iterative testing , Pictured 5 Shown .
X The left side of the model describes the separate coding and testing for individual program segments , Frequent handover of multiple program segments , stay X The upper right part of the model , Integrate multiple fragments into an executable program for testing . Products that pass integration testing can be integrated on a larger scale , It can also be encapsulated and submitted to the customer .
stay X Exploratory tests are also located in the lower right part of the model , It can help experienced testers find more software errors beyond the test plan , But the requirements for testers will be higher .
The above introduces 4 A software testing model , In the actual test work , Testers are more integrated W Model and H The model works , The test content of all aspects of the software is based on W The model shall prevail , And the test cycle 、 The test plan and schedule are based on H Model as a guide .X The model is more of a final test 、 Template for proficiency testing , For example, a business test has 2 Year time , You can use X The model is modularized 、 Exploratory orientation test .
边栏推荐
- The “mode“ argument must be integer. Received an instance of Object
- Skywalking all
- Instruction execution time
- Inftnews | drink tea and send virtual stocks? Analysis of Naixue's tea "coin issuance"
- 并发编程 — 死锁排查及处理
- 【无标题】
- .net core踩坑实践
- IPage can display data normally, but total is always equal to 0
- Ros2 - configuration development environment (V)
- . Net core stepping on the pit practice
猜你喜欢
随机推荐
你心目中的数据分析 Top 1 选 Pandas 还是选 SQL?
Spinningup drawing curve
How to answer when you encounter a jet on CSDN?
Empire help
Use the Paping tool to detect TCP port connectivity
Binary search (half search)
ROS2——ROS2对比ROS1(二)
Huawei bracelet, how to add medicine reminder?
An article was opened to test the real situation of outsourcing companies
Rehabilitation type force deduction brush question notes D2
Vant Weapp SwipeCell設置多個按鈕
Pycahrm reports an error: indentation error: unindent does not match any outer indentation
摄像头的MIPI接口、DVP接口和CSI接口
能量守恒和打造能量缺口
Orin two brushing methods
扫盲-以太网MII接口类型大全-MII、RMII、SMII、GMII、RGMII、SGMII、XGMII、XAUI、RXAUI
NVM Downloading npm version 6.7.0... Error
Rehabilitation type force deduction brush question notes D3
Ros2 - Service Service (IX)
【obs】x264编码:“buffer_size“