当前位置:网站首页>【软件测试】05 -- 软件测试的原则
【软件测试】05 -- 软件测试的原则
2022-07-05 06:39:00 【衍生星球】
软件测试的原则
1.测试应基于客户需求
所有的测试工作都应该建立在满足客户需求的基础上,从客户角度来看,最严重的错误就是软件无法满足要求。有时候,软件产品的测试结果非常完美,但却不是客户最终想要的产品,那么软件产品的开发就是失败的,而测试工作也是没有任何意义的。因此测试应依照客户的需求配置环境,并且按照客户的使用习惯进行测试并评价结果。
2.测试要尽早进行
软件的错误存在于软件生命周期的各个阶段,因此应该尽早开展测试工作,把软件测试贯穿到软件生命周期的各个阶段中,这样测试人员能够尽早地发现和预防错误,降低错误修复的成本。尽早地开展测试工作有利于帮助测试人员了解软件产品的需求和设计,从而预测测试的难度和风险,制订出完善的计划和方案,提高测试的效率。
3.穷尽测试是不可能的
由于时间和资源的限制,进行完全(各种输入和输出的全部组合)的测试是不可能的,测试人员可以根据测试的风险和优先级等确定测试的关注点,从而控制测试的工作量,在测试成本、风险和收益之间求得平衡。
4.遵循GoodEnough原则
GoodEnough原则是指测试的投入与产出要适当权衡,形成充分的质量评估过程,这个过程建立在测试花费的代价之上。测试不充分无法保证软件产品的质量,但测试投入过多会造成资源的浪费。随着测试资源投入的增加,测试的产出也是增加的,但当投入达到一定的比例后,测试的效果就不会明显增强了。因此在测试时要根据实际要求和产品质量考虑测试的投入,最好使测试投入与产出达到一个GoodEnough状态。
5.测试缺陷要符合“二八”定理
缺陷的“二八”定理也称为Pareto原则、缺陷集群效应,一般情况下,软件80%的缺陷会集中在20%的模块中,缺陷并不是平均分布的。因此在测试时,要抓住主要矛盾,如果发现某些模块比其他模块具有更多的缺陷,则要投入更多的人力、精力重点测试这些模块以提高测试效率。
6.避免缺陷免疫
在软件测试中,缺陷也是会产生免疫性的。同样的测试用例被反复使用,发现缺陷的能力就会越来越差;测试人员对软件越熟悉越会忽略一些看起来比较小的问题,发现缺陷的能力也越差,这种现象被称为软件测试的“杀虫剂”现象。它主要是由于测试人员没有及时更新测试用例或者是对测试用例和测试对象过于熟悉,形成了思维定式。
要克服这种情况,就要不断对测试用例进行修改和评审,不断增加新的测试用例,同时,测试人员也要发散思维,不能只是为了完成测试任务而做一些输入和输出的对比。
没有缺陷的软件是不存在的,软件测试是为了找出软件测试中的缺陷,而不是为了证明软件没有缺陷。
边栏推荐
- Dameng database all
- Some classic recursion problems
- confidential! Netease employee data analysis internal training course, white whoring! (attach a data package worth 399 yuan)
- LSA Type Explanation - detailed explanation of lsa-2 (type II LSA network LSA) and lsa-3 (type III LSA network Summary LSA)
- 代码中的英语全部
- [QT] QT multithreading development qthread
- Genesis builds a new generation of credit system
- What is linting
- 基于FPGA的一维卷积神经网络CNN的实现(八)激活层实现
- mysql设置触发器问题
猜你喜欢
随机推荐
H5 模块悬浮拖动效果
Time is fast, please do more meaningful things
[nvidia] CUDA_ VISIBLE_ DEVICES
Interval problem acwing 906 Interval grouping
Game theory acwing 891 Nim games
Game theory acwing 893 Set Nim game
*P++, (*p) + +, * (p++) differences
ROS2——安装ROS2(三)
逻辑结构与物理结构
Rehabilitation type force deduction brush question notes D3
‘mongoexport‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件。
Page type
Game theory acwing 892 Steps Nim game
cgroup_ memcg
三体目标管理笔记
MQClientException: No route info of this topic: type_ topic
Log4qt usage of logbase in QT project
2022年中纪实 -- 一个普通人的经历
ROS2——工作空间(五)
Technology blog learning website