当前位置:网站首页>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 :
- Individuals and interactions are higher than processes and tools ;
- Working software is higher than detailed documentation ;
- Customer cooperation is higher than contract negotiation ;
- 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 .
边栏推荐
- [mysql_16] variables, process control and cursors
- ArrayList#subList这四个坑,一不小心就中招
- TP-LINK 1208 router tutorial (2)
- Nacos source code - Interface read configuration
- Ten thousand campus developers play AI in a fancy way. It's enough to see this picture!
- 不用做实验的6分+基因家族纯生信思路~
- OpenGL es shared context for multi-threaded rendering
- 《opencv学习笔记》-- 图像的载入和保存
- [live review] battle code pioneer phase 7: how third-party application developers contribute to open source
- LS-DYNA beginner's experience
猜你喜欢
《opencv学习笔记》-- 图像的载入和保存
我真傻,招了一堆只会“谷歌”的程序员!
PHP SMS notification + voice broadcast automatic double call
[Old Wei makes machines] issue 090: keyboard? host? Full function keyboard host!
u盘安装kali并且持久化
GLOG从入门到入门
AXI低功耗接口
TP-LINK 1208 router tutorial (2)
[Architect (Part 41)] installation of server development and connection to redis database
Linker --- linker
随机推荐
11+ article - machine learning builds Protics framework - deeply reveals the impact of tumor infiltrating immune cells in different molecular subtypes on prognosis
Audio knowledge (III) -- MFCCs code implementation
The solution of distributed system: directory, message queue, transaction system and others
FreeRTOS overview and experience
GTest从入门到入门
Ingenious conception - iron death regulatory factor classification and prognosis 6+
Database migration tool flyway vs liquibase (II)
【206】使用php语言去生成go语言的代码
Variable parameter template implements max (accepts multiple parameters, two implementation methods)
d的10个0符
FreeRTOS概述与体验
Installation and operation of libuv
怎样申请打新债 开户是安全的吗
Insurance app aging service evaluation analysis 2022 issue 06
How to develop mRNA vaccine? 27+ pancreatic cancer antigen and immune subtype analysis to tell you the answer!
电商红包雨是如何实现的?拿去面试用(典型高并发)
最新热点:使用铜死亡相关基因进行肿瘤预后分型!
单基因泛癌+简单实验就能发表7分+
Example of PHP observer mode [useful in the laravel framework]
Embedded must learn! Detailed explanation of hardware resource interface - based on arm am335x development board (Part 1)