当前位置:网站首页>Detailed explanation of software testing process
Detailed explanation of software testing process
2022-06-12 03:58:00 【Zezhongyun test】
One 、 The content of unit testing :
1、 modular The interface test
The data flow through the tested module shall be test
The number of input parameters and formal parameters of the module when calling the measured module 、 Whether the attribute and order match
When the measured module calls the sub module , The number of input sub module parameters is the same as the formal parameters of sub module 、 Whether the attributes and order match
The number of parameters output to the standard function 、 Whether the attributes and order are correct
Whether the definition of global variables is consistent in each module
When the module is input through an external device / Output operation , Whether the file properties are correct 、open and close Is the statement correct , Stipulated I/O Format description and I/O Does the statement match ; Whether the buffer capacity matches the record length , Whether the file is opened before reading and writing , Whether the file is closed after reading and writing , Yes I/O Whether the error has been handled
2、 Local data structure test
Local data structures are a common source of error
Inconsistent data types
Incorrect or inconsistent data description
Use variables that have not been assigned or initialized
Wrong initial value or wrong default value
3、 Path test
Priority of operations 、 Common comparison and control flows
4、 Error handling tests
Encountered an error condition , And set appropriate error handling
5、 Boundary test
For example, the number of cycles , Maximum or minimum
4、 unit testing step :
Design with design documents The test case
Create the pile module or drive module of the module under test
Use the module under test 、 Drive module and pile module to establish the test environment , To test
Driver module : Equivalent to the main program of the tested module , It receives test data , Transmit these data to the tested module , Finally, output the actual results
Pile module : Used to replace the sub module called by the tested module
Two 、 Integration testing
Also known as assembly test or joint test , On a unit test basis , All modules need to be assembled according to the requirements of the outline design specification and the detailed design specification .
When connecting the modules , Data passing through the interfaces of various modules will be lost
Whether the function of one module will adversely affect the function of another module
After the sub functions are assembled , Whether the expected parent function can be achieved
Is there a problem with the global data structure
Whether the accumulated errors generated by a single module will be amplified
The way modules are assembled into a system : One time assembly and proliferation assembly
1、 One time assembly
First, test the modules separately , Then assemble all modules for testing . shortcoming : It's not easy for me to locate when I find it wrong .
Two 、 Value added assembly testing
First, test each module , Then these modules are gradually assembled into a system , There are two ways : Top down proliferation and bottom-up proliferation .
1、 Top down proliferation ( No driver module is required )
The module is integrated into the system program structure , Strictly control the assembly from top to bottom .
Firstly, the main module is used as the tested module and driver module , All subordinate modules of all directly subordinate main modules are replaced by pile modules , Test the main module . Then adopt the strategy of depth first or breadth first , Replace the pile module with the actual module , Replace their direct subordinate modules with pile modules , Form a new subsystem with the tested modules . Then perform a regression test .
2、 Bottom up proliferation ( No driver module is required )
The driver module controls the parallel test of the underlying module .
3、 Mixed proliferative
Top down proliferation :
advantage : Be able to identify major control problems earlier .
shortcoming : The pile module needs to be established , Added some additional tests , The modules involving algorithms and input and output are generally at the bottom , These underlying modules will not be discovered until later in assembly and testing . Once problems are found, there will be too many regression tests .
Bottom up proliferation :
advantage : There is no need to build pile modules , It is much easier to build the drive module than the pile module , At the same time, the modules involving the input and output of the algorithm should be tested first , Solve the problem prone parts at an early stage .
shortcoming : The program has never existed as an entity , You can't form an entity until the last module is added , The control side is the last to touch .
3、 ... and 、 Sign of completion of integration test
1、 All integration tests specified in the test plan were successfully performed
2、 Fixed the errors found
3、 The test results are reviewed by a special team
4、 Test report to be submitted for integration test
5、 Integration test plan 、 Integration test specification and integration test analysis report
3、 ... and 、 Confirmation test
The goal of validation test is to verify whether the function, performance and other characteristics of the software are consistent with the user's requirements . Validation test generally includes effectiveness test and software configuration review . Generally, there is a third-party testing organization to carry out .
1、 Test the effectiveness
Now the software is confirmed to pass a series of black box tests . Validation testing also requires the development of test plans and processes , The test plan shall specify the type of test and test progress , The test process defines some special test cases , It aims to explain whether the software is consistent with the requirements .
No plan or process , Should focus on whether the software meets all the functions and performance specified in the contract , Is the documentation complete 、 Accurate HMI and other aspects ( for example , Portability 、 Compatibility 、 Error recovery capability and maintainability ) Whether the customer is satisfied .
There are two possibilities for the results of the validation test , One is that the function and performance indicators meet the requirements of software requirements description , The user can accept .
The other is that the software does not meet the requirements of the software requirements specification , Users cannot accept . Serious errors and deviations are not found until this stage of the project. It is generally difficult to correct them within the scheduled construction period , Therefore, it is necessary to negotiate with the user , Find a proper solution to the problem
2、 Software configuration review
Ensure that all components of the software configuration are complete , The quality meets the requirements . The steps specified in the user's manual and operation manual should be followed .
Four 、 The system test
Software as part of a computer system , And hardware 、 The Internet 、 peripherals 、 Support software 、 Data and people are combined , In a real or simulated environment , Test the computer system , The purpose is to compare with the system requirements , Find the problem .
5、 ... and 、 The acceptance test
User oriented testing , Software developers and quality assurance personnel participate in , Test cases are designed by users . It's not a full coverage test of the system , It's about testing the core business processes .
边栏推荐
- 【FPGA混沌】基于FPGA的混沌系统verilog实现
- Three ways for ORALCE to process column to row conversion and finally generate table style data
- Yyds dry inventory MySQL learning - how transactions are isolated
- [untitled]
- Sed command
- What does kotlin collaboration scope and coroutinescope mainscope globalscope viewmodelscope lifecyclescope represent respectively
- Functions (arguments, formal parameters, bubbling)
- What does hard work mean to you?
- 智能面板WiFi联动技术,ESP32无线芯片模组,物联网WiFi通信应用
- 绝对定位使盒子居中显示的三种方式
猜你喜欢

Convert py file to EXE file

怎样拥有心灵的平和?获得一颗全新的心灵

KV storage separation principle and performance evaluation of nebula graph

MySQL的check约束数字问题

顺序表与链表---初阶

Sequence list and linked list ----- advanced

The solution to the error "xxx.pri has modification time XXXX s in the futrue" in the compilation of domestic Kirin QT

MongoDB精华总结

绝对定位使盒子居中显示的三种方式

如何修改mysql 查询出来的结果名称 结果1,结果2
随机推荐
MySQL的check约束数字问题
MongoDB精华总结
Emperor Wu of Wei knew that he could not correct it, so he stopped offering his words
La mise en évidence de la recherche par blocs est - elle prise en charge dans les versions ultérieures?
oralce 处理列转行的三种方式 最后生成表格样式数据
Esp32c3 remote serial port
What is a request response pair called? [repeat] - what is a request response pair called? [duplicate]
JSP实现银柜台业务绩效考核系统
PostgreSQL basic introduction and deployment
Hudi of data Lake (14): basic concepts of Apache Hudi
Will subsequent versions support code block search highlighting
2.28 (defect filling) data type conversion exception handling part multi threading
mysql/oracle 以唯一时间为分界,小于等于该时间求和,大于该时间求和
How do I extract files from the software?
关于 国产麒麟Qt编译报错“xxx.pri has modification time xxxx s in the futrue“ 的解决方法
Eight fallacies of distributed computing
Webpack--- optimization_ cache
[untitled]
R language uses the coxph function of survival package to build Cox regression model, uses the ggrisk function of ggrisk package to visualize the risk score map (risk score map) of Cox regression, and
技术经济与企业管理 复习 第四章
https://www.alltesting.cn/tools/dsfcs.html