当前位置:网站首页>【软件测试】05 -- 软件测试的原则
【软件测试】05 -- 软件测试的原则
2022-07-05 06:39:00 【衍生星球】
软件测试的原则
1.测试应基于客户需求
所有的测试工作都应该建立在满足客户需求的基础上,从客户角度来看,最严重的错误就是软件无法满足要求。有时候,软件产品的测试结果非常完美,但却不是客户最终想要的产品,那么软件产品的开发就是失败的,而测试工作也是没有任何意义的。因此测试应依照客户的需求配置环境,并且按照客户的使用习惯进行测试并评价结果。
2.测试要尽早进行
软件的错误存在于软件生命周期的各个阶段,因此应该尽早开展测试工作,把软件测试贯穿到软件生命周期的各个阶段中,这样测试人员能够尽早地发现和预防错误,降低错误修复的成本。尽早地开展测试工作有利于帮助测试人员了解软件产品的需求和设计,从而预测测试的难度和风险,制订出完善的计划和方案,提高测试的效率。
3.穷尽测试是不可能的
由于时间和资源的限制,进行完全(各种输入和输出的全部组合)的测试是不可能的,测试人员可以根据测试的风险和优先级等确定测试的关注点,从而控制测试的工作量,在测试成本、风险和收益之间求得平衡。
4.遵循GoodEnough原则
GoodEnough原则是指测试的投入与产出要适当权衡,形成充分的质量评估过程,这个过程建立在测试花费的代价之上。测试不充分无法保证软件产品的质量,但测试投入过多会造成资源的浪费。随着测试资源投入的增加,测试的产出也是增加的,但当投入达到一定的比例后,测试的效果就不会明显增强了。因此在测试时要根据实际要求和产品质量考虑测试的投入,最好使测试投入与产出达到一个GoodEnough状态。
5.测试缺陷要符合“二八”定理
缺陷的“二八”定理也称为Pareto原则、缺陷集群效应,一般情况下,软件80%的缺陷会集中在20%的模块中,缺陷并不是平均分布的。因此在测试时,要抓住主要矛盾,如果发现某些模块比其他模块具有更多的缺陷,则要投入更多的人力、精力重点测试这些模块以提高测试效率。
6.避免缺陷免疫
在软件测试中,缺陷也是会产生免疫性的。同样的测试用例被反复使用,发现缺陷的能力就会越来越差;测试人员对软件越熟悉越会忽略一些看起来比较小的问题,发现缺陷的能力也越差,这种现象被称为软件测试的“杀虫剂”现象。它主要是由于测试人员没有及时更新测试用例或者是对测试用例和测试对象过于熟悉,形成了思维定式。
要克服这种情况,就要不断对测试用例进行修改和评审,不断增加新的测试用例,同时,测试人员也要发散思维,不能只是为了完成测试任务而做一些输入和输出的对比。
没有缺陷的软件是不存在的,软件测试是为了找出软件测试中的缺陷,而不是为了证明软件没有缺陷。
边栏推荐
- mingling
- Orin 安装CUDA环境
- 数学分析_笔记_第8章:重积分
- 微信小程序路由再次跳转不触发onload
- SRE核心体系了解
- [MySQL 8.0 does not support capitalization of table names - corresponding scheme]
- Package webapp or H5 pages into apps
- GDB code debugging
- Relevant information of National Natural Science Foundation of China
- Design specification for mobile folding screen
猜你喜欢
Vscode creates its own code template
.net core踩坑实践
ROS2——初识ROS2(一)
ROS2——功能包(六)
ROS2——安装ROS2(三)
LSA Type Explanation - detailed explanation of lsa-2 (type II LSA network LSA) and lsa-3 (type III LSA network Summary LSA)
Orin two brushing methods
All English in the code
Skywalking全部
Pycahrm reports an error: indentation error: unindent does not match any outer indentation
随机推荐
Design specification for mobile folding screen
数据库Mysql全部
Cookie、Session、JWT、token四者间的区别与联系
Qt项目中的日志库log4qt使用
Use ffmpeg to rotate, flip up and down, and flip horizontally
微信小程序路由再次跳轉不觸發onload
Rehabilitation type force deduction brush question notes D1
[tf] Unknown: Failed to get convolution algorithm. This is probably because cuDNN failed to initial
Edge calculation data sorting
Dameng database all
SOC_SD_DATA_FSM
how to understand the “model independent.“
达梦数据库全部
你心目中的数据分析 Top 1 选 Pandas 还是选 SQL?
H5 embedded app adapts to dark mode
程序中的负数存储及类型转换
Cloud native related technology learning
Configuration method and configuration file of SolidWorks GB profile library
How to correctly ask questions in CSDN Q & A
Build a microservice cluster environment locally and learn to deploy automatically