当前位置:网站首页>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 :

 picture

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 :

 picture

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 :

  1. 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

  2. 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

  3. 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

  4. 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 !

原网站

版权声明
本文为[Snow falls on the devil's land]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/03/202203010558306888.html