软件测试之谷歌测试定律

本文探讨了谷歌测试定律,即随着测试阶段从单元测试到系统测试推进,发现的软件Bug解决成本呈指数级增长。谷歌测试定律指出,应当倾向于在早期测试阶段发现和修复Bug,以降低解决成本。文章还提出了测试追溯定律,建议优化前期测试,提高测试自动化,以减少后期测试的压力,并提倡尽早开始测试和缩短测试时间。
摘要由CSDN通过智能技术生成

什么是谷歌测试定律?

软件测试(Software Testing)是软件工程(Software Engineering)中不可或缺的一个过程。软件测试触发预定义的测试步骤、比较软件的实际输出结果和预期输出结果,以此来评价软件质量(Quality),判断软件的实现是否满足设计目标和用户需求。只有经过严格测试的软件,才能发布给用户使用。在实际中,根据测试阶段的不同,软件测试可以分为:

  • 单元测试: 测试对象通常是一个函数(Function)或一个类(Class)。单元测试与软件代码高度相关,通常由开发人员自己完成。

  • 组件测试: 测试对象通常是一个模块(Module),目的是验证模块的功能是否满足设计目标。组件测试通常和软件开发同步进行。

  • 集成测试: 测试对象可以是一个独立软件实体(Entity)的对外接口(本质上测试的是这个软件实体对外呈现的功能);也可以是多个相邻软件实体相互之间的接口(本质上测试的是多个相邻软件实体呈现的整体功能)。集成测试聚焦于软件功能,一般在软件开发部分或全部完成后进行。

  • 系统测试: 测试对象是包含了所有软件实体的真实系统。系统测试从用户的角度设计测试步骤,目的是检验系统是否满足用户需求。一般在系统所有软件都开发完成后进行。

在谷歌,测试的分类更多地强调测试范围,而不是测试阶段。具体来说,谷歌把软件测试分为:

  • Small Tests(小范围测试): 通常对应单元测试和组件测试。

  • Medium Tests(中等范围测试): 通常对应集成测试。在谷歌,Medium Tests强调的测试对象是相互之间有直接接口或互操作(Interoperation)关系的相邻软件模块/软件实体。

  • Large Tests(大范围测试): 通常对应系统测试。

在长期的测试实践中,谷歌发现,不同的测试范围或阶段中发现的软件Bug(即缺陷、漏洞,下同),其解决成本(

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值