软件测试:从基础原则到新兴技术
1. 测试层次与平衡
测试可以分为微观和宏观两个层次。微观测试聚焦于代码的细节,而 API 测试、UI 功能测试、可视化测试等则关注宏观层面。然而,微观和宏观测试分布的不平衡会带来诸多问题。
一方面,这种不平衡会延迟反馈,进而影响软件质量。例如,只注重宏观测试的团队可能会忽略细节,像在订单创建测试中,虽然测试了订单成功创建和因商品缺货导致创建失败等宏观场景,但可能会忽视生产环境中商品价格为负数或小数位数异常的情况,从而导致订单创建失败。
所以,在测试过程中,需要不断地在宏观和微观层面之间切换,以确保既能把握整体情况,又能关注到细节。
2. 快速反馈原则
快速反馈的核心是尽早发现缺陷,从而加快缺陷修复周期和产品发布周期。缺陷发现的时间越晚,修复所需的时间和成本就越高。在特性开发阶段,开发者对代码有全面的了解,能够快速定位并修复缺陷。但随着代码库的不断增长和重构,开发者可能会失去对代码的上下文理解,导致调试和修复缺陷变得更加困难。
此外,缺陷跟踪周期也会对缺陷修复周期产生显著影响。例如,在特性开发两周后发现的高优先级缺陷,需要花费时间创建缺陷卡片、进行分类、在迭代中跟踪,并找到有时间修复的开发者,这些任务可能需要数天甚至数周。在某些极端情况下,由于期间的开发工作,可能需要进行重大重构才能修复缺陷,从而延迟发布时间。
为了实现快速反馈,可以采用左移测试的方法。具体操作步骤如下:
1. 实施开发环境测试(在开发者的机器上尽早运行自动化测试)。
2. 采用测试金字塔模型。
3. 让产品负责人或业务代表对用户故事进行签字确认,并在每个冲刺结束时向所
超级会员免费看
订阅专栏 解锁全文
4460

被折叠的 条评论
为什么被折叠?



