当前位置:网站首页>Continuous testing | test process improvement: practice continuous testing within iterations in coding

Continuous testing | test process improvement: practice continuous testing within iterations in coding

2022-06-24 12:17:00 CODING

The author of this article : Cheng Shengcong - CODING The product manager

The revolution of continuous testing

Keep testing ( Or agile testing ) Testing is required as a basic activity throughout the whole process of software delivery . Compared with DevOps The traditional testing mode of the times in trouble , The first change in continuous testing is “ Post test “ The state of , Stress testing before , By defining tests early 、 Testing and development go hand in hand 、 Keep close cooperation in the process , So as to achieve the purpose of fast feedback business risk . The practical change of continuous testing is about people 、 Comprehensive engineering of process and Technology : It needs technical support , Like continuous integration 、 Basic capabilities for continuous deployment , It also needs to improve the ability of people to automate code , At the same time, the improvement of the process is also an indispensable part . As the Agile Manifesto begins with four core values , Teams should focus on behaviors and outcomes that bring value to customers 、 Instead of the traditional step-by-step completion of established project items and production process delivery , It's the same requirement for testing :

  1. Individuals and interactions are higher than processes and tools ;
  2. Working software is higher than detailed documentation ;
  3. Customer cooperation is higher than contract negotiation ;
  4. Responding to changes is higher than following the plan .

However , For the “ Four higher than ” Literally , People tend to be confused : Collaboration is important , So is it a process 、 file 、 The plan is no longer needed ? It's not , After all, the inherent complexity of software is still , So planning and documentation for better software delivery still has important value . It's just that we need to change the overstaffed process 、 file 、 plan , Let it no longer be the shackles of the team's quick response goals . therefore ,“ Light process ”、“ The right size ”、“ Plan as soon as possible ” That's the right change we should make . If automated testing and accurate testing are the improvement of efficiency at the single point of test execution , Then the iterative internal test is to improve the test efficiency in the overall process .

How to practice continuous testing within an iteration

The testing process generally includes planning 、 Design use cases 、 Carry out these links , The following is the classic workflow of the test perspective in the iteration of agile pattern . Let's start with the classic workflow from the perspective of testing in agile mode , Explore how to practice continuous testing in an iteration .

Based on the above scenario , We can carry out testing activities according to the following steps , Achieve synchronization with development work 、 The goal of broadening the test time window : First , At the iterative planning meeting , The product manager interprets the requirements story with the team 、 Analysis and workload assessment . When the mission is claimed , Development and testing ( Or another development in this role ) Pair up for a requirement story . When iterative planning is complete , In fact, you can create test plans corresponding to iterations , The plan should include a list of iteration stories and corresponding acceptance criteria (Acceptance Criteria, abbreviation AC). then , In the iteration process , It should be delivered as a whole with requirements stories that represent business value . in other words , Paired development and testing should deal with a requirement story with the same priority , As soon as possible after the end-to-end delivery of the story , Deal with the next demand story . So while developing and implementing coding , Tests should also write test cases for the story at the same time —— Most of the time it's right AC Expand the details and complete the preparation . When the use case is finished, it will be reviewed in time , Even if the interface contract is guaranteed, we can realize the coding of interface automatic test . In this way, every story is tested and passed immediately after development , In a deliverable state . Last , At the end of the iteration , You can even execute a set of test cases that cover the requirements story of the current iteration , Review according to the overall test situation reflected in the test report , For continuous improvement .

CODING How to facilitate continuous testing within practice iterations

Based on the above scenario ,CODING With 【 Test plan is the main body of test activities 】 For the idea , Design and polish products , Strive to bring “ Immersive ” My test experience . Next, I'll show you how to CODING Carry out a complete iterative test activity in test management : 1. At the iterative planning meeting : First , Start with planned iterations in project collaboration , see / Create the team's test plan 、 And associated with the corresponding iteration .

Then after the team test plan is created , The plan shows the iterative requirements story . Then create the corresponding function use case for the requirement story , The content may be just the acceptance criteria agreed in the planning meeting (AC), Assign the related use case tasks to the corresponding test students , There is a Iterative Kanban from the perspective of test team . These operations can be completed at the planning meeting or in a short time after the meeting , The test plan includes a list of iteration stories and the corresponding AC Use cases as content , Let's call it “ test plan alpha edition ”.

2. Iteration in progress : Develop students to achieve coding at the same time , Test students write test cases of the story at the same time , A complete test plan supplemented by use cases can be called “ test plan beta edition ”. When the use case is finished, review it in time , Even if the interface contract is guaranteed, we can realize the coding of interface automatic test . This rhythm also realizes the synchronization of test and development .

After testing the demand story , Execute test case , Verify whether the function is normal according to the use case steps . In this way “ Take a short walk ” In the mode of , The end of an iteration at any time can deliver a business value requirements story , Not a batch of “ Partially Prepared Products ”. such Through the close collaboration of development and testing , Getting closer to continuous delivery that reflects business value .

3. When it was released : After all the requirements stories at the end of the iteration , Then we can get the complete test case content “ The official version of the test plan ”. Test reports are generated from this , Judge whether it can be released to the next environment according to the pass rate and the risk reflected in the report ( Such as STG).

summary

CODING The core idea of testing workflow from the perspective of iteration is to guide the front of testing , Enhanced collaboration and feedback between the test and other roles in the process . The goal is to help the team solidify good practices through product capabilities , To achieve efficient testing : First , The test was planned as early as possible . Starting with demand planning , After fully understanding the requirements and claiming the tasks , So we can define the scope of the test , And this leads to a simple version of the test plan 、 And quickly develop acceptance criteria and complete the preparation of preliminary use cases . secondly , By establishing the relationship between requirements and use cases , For high priority ( Business value ) The requirements of the test should be clear at a glance , For risk-based testing strategies (Risk-based Testing) Lay the foundation . Again , In the process of iteration, test and development work can be carried out in parallel . While the development engineer implements the business code , Test engineers can further refine and complete test cases , And even automated code implementation of testing . Through close collaboration 、“ Take a short walk ”, Every delivery is full of business value “ finished product ”. Last , Record the operation and data generated during the test , Feedback to the team quickly , And these precipitated data , It will become a guide for continuous improvement of engineering practice .

原网站

版权声明
本文为[CODING]所创,转载请带上原文链接,感谢
https://yzsam.com/2021/06/20210603180304720Z.html