Research and test co-construction to improve the quality of test submission | JD Cloud technical team

1. Preface

Daily research and testing work interpretation

Do you also have the same confusion?

Regarding the need for follow-up, just one second before the test was launched, I was told that the test could not be launched as scheduled, and the research and testing plan was disrupted;

The test function is like a bad shopping experience, lacking in quality and not in line with prd’s expectations;

The needs of the three parties involved in production, research and testing were inconsistent, so a temporary group meeting was held to discuss and come up with a temporary solution;

etc. . .

Have you also encountered the following challenges?

1. Time constraints: The agile development cycle is short and the iteration speed is fast, making it difficult for testers to thoroughly test the software within the available time;

2. Regression testing: In the continuous iteration, there are so many functional points in the system, large and small. How can we accurately determine the regression scope?

3. Test automation: Agile development usually requires a high degree of test automation to keep up with the rapid development pace. The development and maintenance of test cases require a lot of time and energy.

Faced with these confusions and challenges, how should we promote and improve the quality of R&D testing? Are there any prerequisite actions that can improve the quality of the test?

2. Co-construction of quality research and testing

In software projects, there are many factors that affect product quality: demand quality, design quality, coding quality**, test quality, and even the configuration during release will all affect the final delivery quality. The work before the test takes up a high proportion and is the core link. The quality of the process and quality directly determines the final result.

1. Responsibility and Mission

The participation and sense of responsibility of the participants will directly affect the quality of the entire product:

Management by objectives: "Wherever you want to go, where you want to go, you can look forward to the future." This is also applicable to software projects. Only when you have clear goals, that is, do the work well, do it to the extreme, and do it perfectly, can you have good results. result.

Think offside and work within the scope : In addition to considering the work within the scope of job responsibilities, each participant must also immerse themselves in the entire process and the entire link, think about the upstream and downstream connection points, and make a seamless connection.

Embrace change : In software development management, change is the norm, and participants must be good at adjusting plans and adapting to changes.

Self-improvement : At work, constantly improve your technical capabilities, expand business knowledge, improve communication and collaboration skills, and improve work efficiency and work quality through continuous improvement.

2. Project management

2.1 Resource management

People are the most important project resource. When arranging work, the following points should be fully considered:

Are the personnel responsible enough? Can it support him to complete this task?

Does the personnel ability match the ability required by the project? Can a small person pull a big cart?

Do the personnel understand the business? Can it grasp current needs?

Is the staff's workload saturated? Can it absorb current demand?

2.2 Process management

During each iterative implementation process, a standardized collaboration flow is formed, as shown below:

Under the standard process, there are some details that can help improve the quality of test submission:

2.2.1 Requirements review stage

In agile management, requirements review is a key link. Requirements are the common standard reference in the project implementation process. The quality of requirements largely determines the final delivery quality. Research and testing should be fully considered before review:

  1. Before the review, the research staff previewed the requirements, prepared questions to be confirmed, and gathered information on the requirements issues;

  2. Abstract: From a macro level, understand the business background and understand the business pain points to be solved;

  3. Concrete: Understand the required functions and understand the context of related functions;

  4. Detachment: Reason, evolve, and expand functions, propose scenarios with unclear requirements, and conduct supplementary confirmation;

  5. Controlling the field: Reasonably reject situations where the ambiguity is large and the demand lacks a lot of information.

  6. For review issues, a to-do list is formed and the person responsible is assigned. Follow up on questions and synchronize conclusions.

2.2.2 R&D design review stage

In agile management, design plan review is an important link, aiming to ensure that the project's design plan meets project requirements and technical standards, and accurately assesses the scope of impact.

  1. R&D personnel need to write clear, specific, and verifiable design documents, database designs, and interface documents to better understand and evaluate the design plan during the review process;

  2. Testers preview relevant documents before review: including but not limited to the following documents, design documents, dependent internal, third-party, enterprise and micro interface documents, data warehouse tables, upstream and downstream functions, etc.;

  3. Testers prepare issues to be confirmed, which are not limited to design issues, but can also include business scenario supplements and impact scope supplements;

  4. Testers provide reasonable material requirements: such as number creation, log keyword support, smoke testing in the test environment, configuring dependent configuration information, and completing smoke testing through business flow;

  5. Testers can identify complex number-making scenarios in advance, communicate with R&D, and negotiate the use of scripts or other tools to complete them in advance;

  6. R&D technical reform needs. In order to pursue perfection, R&D plans may be modified into multiple versions. Changes are arbitrary and require clear change points, scope of influence, and scope of return;

2.2.3 R&D and self-test stage

  1. Communicate frequently, maintain frequent, timely and effective communication, confirm the consistency of understanding of requirements, and ensure a clear understanding of the needs and progress of the project;

  2. Have a thorough understanding of the business background and requirements to avoid development errors;

  3. Reasonably design the solution and have the ability to flexibly expand and cope with small changes in requirements;

  4. Reasonably split work to minimize cross-work and interdependence;

  5. Reasonably evaluate the workload, refine the work content, and avoid the impact of the construction period on quality;

  6. Reasonably design self-test scenarios, understand test cases in advance, and improve self-test awareness and coverage;

  7. Comprehensively assess and constrain the scope of impact to avoid unpredictable impacts on existing functions;

  8. The development details process can be traced to avoid omissions during the testing phase;

  9. Code review, through review, helps the team discover potential problems and improve the quality of testing.

2.2.4 Test case design and review stage

  1. Pre-positioning test cases helps the team discover potential problems and avoid discovering problems at a later stage, thus reducing the cost of fixing problems;

  2. Fully understand the needs and pain points of the business, design from the business layer, and fully cover the business scenarios;

  3. Understand the technology implementation process, understand the data storage and data processing logic, consider possible abnormal situations, and consider and design different states of data;

  4. Inventory automated test case resources, reuse automated use cases, improve testing efficiency, expand test regression scope, and ensure test quality;

  5. Preparation of test materials, environment construction, data preparation, script development, resource coordination, etc.;

  6. Fully carry out demand changes and accurately delineate the scope of changes through change points;

2.2.5 Smoke test phase

  1. Strictly follow the agreed standards for entry and exit;

  2. Flexibly adjust the smoke strategy based on past cooperation;

  3. Record the requirements that fail the smoke test;

  4. Can do necessary smoke support work as appropriate;

2.2.6 Continuous improvement

Quality data accumulation

Through accumulated measurement data, we provide data basis for analysis and process improvement.

Quality access control construction

The role of quality access control is to intervene in demand design, product design, technical solution design and other aspects as early as possible from the demand stage. Through reviews, questions, etc., we can discover as many existing problems as possible, and formulate scientific and reasonable plans that are consistent with the actual situation of the project. The entry and exit standards are set to ensure that the output results from each link are transferred to the next link with higher quality.

Not only does testing require building quality access control, but so does R&D.

Automated test case library construction

Automated test case construction is an important part of the software testing process, helping the testing team improve testing efficiency, reduce the workload of manual testing, and ensure software quality. Testers, after the project ends, should improve the response cases and break the problems caused by time constraints through the continuous accumulation of automated cases.

Review summary + sharing

Learning from history is an important learning method. Regular review and summary are necessary to help us avoid making repeated mistakes, learn from mistakes, supplement missing points, and form documents or reports for reference in future projects. .

Author: JD Retail Wang Lanqing

Source: JD Cloud Developer Community Please indicate the source when reprinting

Alibaba Cloud suffered a serious failure, affecting all products (has been restored). The Russian operating system Aurora OS 5.0, a new UI, was unveiled on Tumblr. Many Internet companies urgently recruited Hongmeng programmers . .NET 8 is officially GA, the latest LTS version UNIX time About to enter the 1.7 billion era (already entered) Xiaomi officially announced that Xiaomi Vela is fully open source, and the underlying kernel is .NET 8 on NuttX Linux. The independent size is reduced by 50%. FFmpeg 6.1 "Heaviside" is released. Microsoft launches a new "Windows App"
{{o.name}}
{{m.name}}

Guess you like

Origin my.oschina.net/u/4090830/blog/10143749