This article has participated in the third “More Productive writing” track of the Denver Writers’ Camp
1. What is the test left shift
The common R&D process is like this:
- Demand stage: demand output, review, schedule
- Development stage: develop and write codes, and test according to the test access standards
- Beta phase: QA is officially in beta
- Release stage: test completed, online release
The whole process is connected in series and can be clearly understood. The test moves to the left, that is, the test process moves to the R&D stage or even the requirements stage. Also, there is a test right shift, which is right to the release and live phase.
2. Why do we need to test the left shift?
In a word: Reduce bug costs. The earlier you find the problem, the cheaper it is to fix the bug. If you can intercept them during development, you don’t need to have recurring QA and RD lay-offs; If you can intercept in the requirements phase, even better. For example, now more and more companies, have requirements review, requirements review in addition to clear requirements and communication requirements and technology suitability, a very important, is to see whether the requirements are reasonable/correct, which can be roughly counted as a way to test the left shift, although measurable and landing is relatively weak. A great advantage of QA is that it is very familiar with the overall system, which is not available in product and r&d (of course, there are still some students who are more comprehensive). Just think, when the product students go to produce demand, it is very likely that they only see a part, rather than the whole, and finally, the online function cannot be used at all. Such a problem, if it is found before the line, the entire production and research resources have been wasted. Although this statement may seem extreme at first glance, it is not uncommon to encounter it in real work. So, as you can see, a test shift to the left is virtually inevitable as the test effort catches up with efficiency.
3. How to land the test left shift?
There are several basic ways, limited to space, can be broken down, here is a summary:
- Requirements quality measurement: As the name implies, measures the quality of the requirements themselves. This is a high requirement for QA, in the actual landing, need
- R & D single test: this is worth talking about a point, later details. In summary, it is highly recommended for teams with stable systems and a strong commitment to quality and efficiency to write a single test, not only to find problems early, but also to push back as much as possible to improve code quality.
- Code scanning: This is familiar, but how to better match the business and the team is a problem that needs to be considered.
- Other tools move to the left: tools such as automation, security scanning, etc