当前位置:网站首页>[software testing] 05 -- principles of software testing
[software testing] 05 -- principles of software testing
2022-07-05 07:05:00 【Derived planet】
Principles of software testing
1. Testing should be based on customer requirements
All testing work should be based on meeting customer needs , From the customer's point of view , The most serious mistake is that the software can't meet the requirements . occasionally , The test results of software products are perfect , But it's not the product that customers ultimately want , Then the development of software products is a failure , And testing is meaningless . Therefore, the testing environment should be configured according to the needs of customers , And test and evaluate the results according to the customer's usage habits .
2. The test should be carried out as soon as possible
Software errors exist in all stages of the software life cycle , Therefore, testing should be carried out as soon as possible , Run software testing through all stages of software life cycle , In this way, testers can find and prevent errors as soon as possible , Reduce the cost of bug fixes . Early testing helps testers understand the requirements and design of software products , So as to predict the difficulty and risk of testing , Formulate and perfect plans , Improve the efficiency of testing .
3. It's impossible to run out of tests
Due to time and resource constraints , Complete ( All combinations of various inputs and outputs ) The test is impossible , Testers can determine the focus of testing according to the risk and priority of testing , So as to control the workload of testing , At test cost 、 Strike a balance between risk and benefit .
4. follow GoodEnough principle
GoodEnough The principle is that the input and output of the test should be properly balanced , Form an adequate quality assessment process , This process is based on the cost of testing . Inadequate testing cannot guarantee the quality of software products , However, too much testing investment will cause a waste of resources . With the increase of test resource investment , The output of testing is also increased , But when the investment reaches a certain proportion , The effect of the test will not be significantly enhanced . Therefore, the test input should be considered according to the actual requirements and product quality , It is best to achieve a balance between test input and output GoodEnough state .
5. Test defects shall comply with “ sixteen ” Theorem
Defective “ sixteen ” The theorem is also called Pareto principle 、 Defect clustering effect , In general , Software 80% The defects will focus on 20% In the module , Defects are not evenly distributed . So when testing , We should grasp the main contradiction , If some modules are found to have more defects than others , It takes more manpower 、 Focus on testing these modules to improve testing efficiency .
6. Avoid defective immunity
In software testing , Defects can also produce immunity . The same test cases are used repeatedly , The ability to find defects will become worse and worse ; The more familiar testers are with the software, the more they will ignore some seemingly small problems , The worse the ability to find defects , This phenomenon is called the of software testing “ Insecticide ” The phenomenon . It is mainly because testers do not update test cases in time or are too familiar with test cases and test objects , Formed a thinking pattern .
To overcome this situation , It is necessary to constantly modify and review the test cases , Add new test cases , meanwhile , Testers should also think differently , You can't compare input and output just to complete the test task .
Software without defects does not exist , Software testing is to find out the defects in software testing , Not to prove that the software is flawless .
边栏推荐
猜你喜欢

ethtool 原理介绍和解决网卡丢包排查思路(附ethtool源码下载)

Ros2 topic (VIII)

Mipi interface, DVP interface and CSI interface of camera

ROS2——node节点(七)

Pycahrm reports an error: indentation error: unindent does not match any outer indentation

【软件测试】02 -- 软件缺陷管理

Orin installs CUDA environment

Sum of two numbers, the numbers in the array are converted to decimal, added, and output inversely

U-Boot初始化及工作流程分析

Logical structure and physical structure
随机推荐
Ros2 - common command line (IV)
【软件测试】02 -- 软件缺陷管理
PowerManagerService(一)— 初始化
LSA Type Explanation - detailed explanation of lsa-2 (type II LSA network LSA) and lsa-3 (type III LSA network Summary LSA)
UTC, GPS time and Tai
Use ffmpeg to rotate, flip up and down, and flip horizontally
Matlab在线性代数中的应用(四):相似矩阵及二次型
Orin 两种刷机方式
npm install -g/--save/--save-dev的区别
Log4qt usage of logbase in QT project
Unity 之 ExecuteAlways正在取代ExecuteInEditMode
U-Boot初始化及工作流程分析
MySQL (UDF authorization)
Skywalking全部
Executealways of unity is replacing executeineditmode
【软件测试】05 -- 软件测试的原则
并发编程 — 如何中断/停止一个运行中的线程?
Get class files and attributes by reflection
ROS2——工作空间(五)
Powermanagerservice (I) - initialization