当前位置:网站首页>Test left shift real introduction
Test left shift real introduction
2022-06-12 07:11:00 【Snow falls on the devil's land】
Preface
In the previous traditional software development process , Most projects are developed using waterfall model . The most typical step in waterfall model is to put large-scale testing work after software function development . However, with the increase of software scale and the uncertainty of business requirements , Testing is becoming more and more difficult , The cost is getting higher and higher , Resulting in lower and lower test efficiency . And with the company's pursuit of R & D efficiency , Therefore, some companies in the industry have launched de testing activities , And cut off a large number of testers who only do manual testing in the traditional R & D process . So in the current situation , How should testers reflect their value , And cooperate with the improvement of R & D efficiency , Is an issue that needs important attention . In various test methods and practices , Testing left shift may be the most effective method and practice to cooperate with R & D efficiency .
What is test shift left
Test left shift is not a new test method , And it's been around for a long time , As early as 2001 year ,Larry Smith In his article 《Shift-Left Testing》 This paper puts forward the concept of test left shift and the corresponding practice . The main way to move test to the left is to move all test related work to some stages of the R & D process , For example, move the unit test to the left in the process of writing code , Move some work related to user acceptance function test to the left to the stage of user requirements analysis and design , be based on V The left shift of word model test can be seen in the figure below :

Why do you want to test left shift
As we all know, the biggest waste in software development is rework (rework), Whether it's because of repair Bug And rework , Or rework because you understand the wrong requirements and write the wrong code , It's a huge waste . An effective practice to solve this waste is to test shift left . In addition to eliminating waste , Moving the test left can also detect and repair problems early , Save repair costs ; Motivate testers 、 Better collaboration between R & D personnel and business demand personnel ; It can well increase the effectiveness of the test , It can also help the team develop better automated tests .
The main practice of testing shift left
If you want to effectively implement the test shift left , Some testing practices are needed , One of the most important test practices is test analysis and test design , Improve software testability , Effective implementation ATDD and UTDD.
1. Test and analysis And Test design
Test analysis and test design are the basic skills in the field of testing , And the most important part . If there is no good and effective test analysis and test design , Then all related tests may be ineffective or ineffective . So in the test shift left , Test analysis and test design are also the most important practices . The test analysis includes the analysis of products , Analysis business , Analyze business architecture and technical architecture , Design includes design quality system , Design test strategy , Design test cases and test architecture, etc . These corresponding tasks need to move left to the relevant R & D stage .
2. ...Testability
Improving software testability is also an important practice in test left shift , Because it can effectively help the team design effective test strategies suitable for the team ; Testers are required to participate in software architecture and design , And put forward relevant testability requirements , Help developers design software architecture and code modules that are easy to test , So as to increase the efficiency and effectiveness of testing . Improve software testability , It can also increase R & D personnel to implement ATDD and UTDD Efficiency and effectiveness of .
Software testability generally includes controllability 、 Observability 、 Isolation 、 Comprehensibility 、 Automation 、 Separation of concerns 、 Heterogeneity, etc . If the testability of software can be effectively improved in the practice of test moving left , The efficiency of testing can also be greatly improved .
3. ATDD & UTDD
For developers , The most important practice in testing left shift is TDD( Include ATDD and UTDD). If you want to implement it efficiently TDD, It needs to be implemented uniformly ATDD and UTDD, adopt ATDD Effective transmission of business knowledge and acceptance conditions , Re pass UTDD Complete the code design and code writing that meet the acceptance conditions . The specific practical steps are shown in the figure below :

thus it can be seen ,ATDD and UTDD It can help developers sort out and understand requirements , It can also help developers get better code design , And can effectively reduce rework (Rework), Then get a large number of effective test cases and automated test code , Finally, fast feedback can be achieved , Improve the internal quality of software , So as to improve the R & D efficiency of software .
Test the premise of left movement
Test shift left, although there are so many benefits , But not every team can implement . If the team doesn't meet some prerequisites , Then the test shift left will encounter various obstacles , And get twice the result with half the effort .
If you want to efficiently implement the test left shift , The team generally needs to have the following prerequisites :
There is no departmental wall between the testing department and R & D Department of the whole product R & D team , Testers 、 Developers and business people can work directly together
If it is the tester who performs the test shift left , It requires testers to have business analysis ability and software R & D ability , Including being able to do some business analysis , Be able to understand business architecture and technical architecture , Can even analyze code logic
The whole team agrees that defects should be prevented as much as possible before software functions are developed , Instead of seeking to find defects after the development work is completed
The whole team resists any form of rework (Rework), Pursue doing the right job at once as much as possible
summary
With the increasing importance of software R & D efficiency 、 More and more , Test left shift will certainly become an important method and practice to improve R & D efficiency , It is also a baptism and opportunity for testers . Testing never dies , But if you don't keep learning , Testers who don't embrace change , Maybe it will be eliminated in the near future !
边栏推荐
- Kali and programming: how to quickly build the OWASP website security test range?
- What is the difference between < t > and object?
- d中的解耦
- Junior high school education, less than 3k, to 30k+ monthly salary, how wonderful life is without restrictions
- Redis supports data structure types
- openwrt uci c api
- 5 statement
- Meituan won the first place in fewclue in the small sample learning list! Prompt learning+ self training practice
- MySQL group query to obtain the latest data date function of each group
- Win10 list documents
猜你喜欢

RT thread studio learning (VIII) connecting Alibaba cloud IOT with esp8266

Junior high school education, less than 3k, to 30k+ monthly salary, how wonderful life is without restrictions

2 variables and basic types

Scons编译IMGUI

Detailed explanation of coordinate tracking of TF2 operation in ROS (example + code)

Throw away the ugly toast. The movable toast is more interesting

leetcode.39 --- 组合总和

ROS dynamic parameter configuration: use of dynparam command line tool (example + code)

RT thread studio learning (VII) using multiple serial ports

Error mcrypt in php7 version of official encryption and decryption library of enterprise wechat_ module_ Open has no method defined and is discarded by PHP. The solution is to use OpenSSL
随机推荐
Imx6q pwm3 modify duty cycle
5 statement
12.13-12.19 summary
Day 4 of pyhon
Oracle Database
【高考那些事】准大学生看过来,选择方向和未来,自己把握
What is the difference between < t > and object?
Curry carries the fourth game of the warriors against the Celtics
[data clustering] data set, visualization and precautions are involved in this column
Meituan won the first place in fewclue in the small sample learning list! Prompt learning+ self training practice
Problems encountered in learning go
Introduction to JDE object management platform and use of from
Decoupling in D
sql server 2019安装出现错误,如何解决
Vscode common plug-ins
8. form label
Static coordinate transformation in ROS (analysis + example)
RT thread studio learning (x) mpu9250
Freshmen are worried about whether to get a low salary of more than 10000 yuan from Huawei or a high salary of more than 20000 yuan from the Internet
Go common usage