In the technology exchange group I created earlier , I shared a topic : How to make a qualified test ?

After listening to the peer sharing last night , I have another thought summary , What are the responsibilities of Software Test Engineer ?

first , My idea is to execute use cases , Defect finding , That's it , Simple and rough ...

later , Look 《Google The way of software testing 》 This book , Slightly changed , It becomes active discovery , Exposed defects , And team work , solve the problem ...

Second half of last year , The company airborne a director , He made a point : Improve delivery quality and speed ! All of a sudden , right , The purpose of our work is not to improve the quality of the delivered software system , And improve efficiency !

After listening to the peer sharing last night , Think and summarize , How to improve the quality and speed of delivered software applications
This question , I found that I didn't consider some details , It's still inexperienced , The road of learning and growth , A long way to go !!!

Below , Reorganized some opinions shared by the big guys , Combine some of your ideas , It's a reference ...


One , demand

1, Requirements review

Why need review ? The reasons are as follows :

①, Familiar with business , Explain requirements by product or business , To know , It is not necessary to expose problems caused by unfamiliar business in the development and test stage ;

②, multipartite agreement , Before officially entering the development stage , test , development , The product confirms the uncertainty of some requirements , Reach an agreement , Avoid subsequent problems ;

③, Assess workload , Difficulty of realization , And about resources ;

④, Define development test boundary , Objectives and scope , What to do and what not to do ;

2, Requirements document

①, As detailed as possible , The corresponding function points and test points need to be extracted from the requirements ;

②, Proper granularity of function point and test point , This makes it easy to observe the deviation between test results and requirements ;

③, generally speaking , The bigger the system , The more complex the business , It is easier to judge the deviation degree of demand than small system ;


Two , system architecture

In addition to demand , Understand and be familiar with the technical architecture of the whole system , It's also a must . For example, the architecture of the whole system , Characteristics of each , What communication service framework is adopted , Database type , Front and rear frame, etc , This makes it easier to locate defects ,

And select the appropriate automated testing framework according to the system architecture , Performance test strategy, etc .

features : generally speaking , The better the stability of the system , So the less adaptable it is , The impact is the rising cost of each architecture change and the change in the direction of the development team's reconstruction or test team as a whole .

In recent years, the distributed architecture of popular and large-scale applications has been developed , Microservices, etc , They are all based on the availability and scalability of the system , To reduce the cost of changes .


Three , Process management

The recording of test process results should depend to a certain extent on the completeness of the process records .

If process change is involved , We should also deal with different observation objects ( test / development ) Record the effect and result , To determine its impact on quality and evaluation criteria .

The test process is as follows :

①, Start up phase

The development manager determines the test submission time in the development plan , After getting the latest relevant documents, the test director estimates the scale and establishes a test team , complete 《 test plan 》;

②, design phase

Include test plan , Test plan , Test case and other output documents ;

After the requirements analysis document establishes the baseline , Test group needs to write test cases for test requirements , In the actual test , Test cases will be the only implementation criteria . In the process of writing use cases , The specific tasks and responsibilities are as follows :

③, implementation phase

Executing test cases will take most of the test group's time , These works are all based on a lot of planning work in the early stage ;

④, Report stage

On that day ( Or every small stage ) After testing , The test engineer needs to summarize the test results of the day , Report test progress ;

⑤, Summary stage

After the test , Test director prepares test report , Summarize the test , And submit , Provide important information support for the follow-up work of the product ;


⑥, acceptance phase

After all the above work is completed , The process of testing , Result acceptance , Announce the end of the test phase ;


⑦, Filing stage

The test archive is to declare the test valid at the end of test acceptance , After the end of the test , Archive various standard documents involved in the test process ;



Four , Document management

Document help for work , It's necessary . Although now many enterprises advocate agile , But agile is not without documentation , It's a light document . The importance of documents is as follows :

1, It is very helpful for knowledge transfer in history and current testing process ;

2, You can compare historical and current document changes , It is easy to observe the quality of testing during the whole requirement change process ;

3, When it comes to disputes over personnel changes or defects , Faster knowledge transfer rate and reference basis ;


Five , risk management

There are risks at every stage of the project , Common defects are as follows :

1, Unclear needs ;

2, Imperfect system design or test design ;

3, Unsafe code writing ;

4, Insufficient test cases , Low coverage ;

5, Insufficient test resources , Improper regression workload estimation ;

7, Improper project schedule , Impact of other projects on the project ;

therefore , Risk management and prevention is a necessary and important work , And the responsibilities of the test engineer , Isn't it to provide the quality of the delivered software !!!


Six , time management

Engineers with some experience in testing have basically experienced insufficient investment in resources , Lack of time , Test time is compressed , Overtime and even production accidents ! So do a good job in time management , It's so important .

People who manage their time are often closer to success , How to use time reasonably to solve urgent project problems , Conflict issues , Resource arrangement , priority , Execution sequence of test cases, etc , Time management is one of the factors to ensure quality . 

For example, new demand is involved or Requirement changes must be documented accordingly ( It can be the requirement specification or email description ) As a basis for testing ;

Two books are recommended here :《 Tomato working method 》,《 Seven habits of highly effective people 》


The above parts , The responsibilities of test engineer are described , As well as some parts and details that need attention , of course , Specific content such as process management , Different enterprises have their own characteristics , For reference only ...


©2019-2020 Toolsou All rights reserved,
golang One line of code converts the slice into a semicolon separated string Keras Summary of training data loading Linux File name validity detection Go language Array initialization and basic operations 【Python】 read txt file , Gets the specified location data in the specified row C#/.NET System optimization (redis Chapter 6 data structure 【List】)ajax get Request Chinese parameter garbled solution ( Essence )2020 year 6 month 26 day C# Class library Exception handling help class 【Git】 Retrieve deleted files ( already rm+commit)vue obtain el-select Of the selected item label value