1. 上线时间
上线时间就是在最终用户面前获得新功能或更新的速度。发布新功能所需的时间越长,敏捷性就越低,响应动态客户需求和新兴市场趋势的难度就越大。根据应用程序的性质,延迟可能会对收入、运营效率和/或竞争优势产生负面影响。
鉴于测试通常被认为是交付瓶颈的首要来源,可以公平地说,上市时间高度依赖于测试效率(执行测试的速度)。
反过来,测试效率基于执行自动化测试运行(包括准备、执行和分析)与常规测试运行(同样包括准备、执行和分析)相比所花费的时间。
差异越大,实现上线时间收益的潜力就越大。而且,运行测试的频率越高,回报就越大。
影响测试效率的其他考虑因素包括:
应该运行多少测试: 这可能比你现在实际执行的多或少——测试用例设计方法和风险评估可以帮助解决这个问题。
测试数据和测试环境的可用性: 仅仅定义自动化测试是不够的;如果想更快地到达终点线,需要持续访问执行它们所需的所有元素。
软件交付生命周期中的测试点: “左移”策略,例如采用自动化 API 测试和使用新技术在 UI 和 API 实施之前开始对其进行测试,可以对测试效率产生积极影响,从而加快时间市场。
2. 降低风险
降低风险就是防止多少缺陷进入生产。逃脱的缺陷会带来一系列的麻烦。
了解业务风险覆盖范围是评估风险降低的关键。
风险覆盖范围越大,缺陷密度越低。
3. 投资回报率
通过更高效的测试,可以节省多少时间和成本?在自动化的帮助下,可以同时运行更多测试,或者可以在更短的时间内运行相同数量的测试。
请务必考虑以下事项:
测试用例数
发布数量
手动创建报告所需的时间和精力
正在测试的应用程序的数量和类型
手动测试执行的持续时间
获取/创建和准备测试数据所需的时间
获取/创建和准备测试环境所需的时间
测试套件的业务风险覆盖
测试套件的冗余级别
谁参与测试(包括业务专家)及其每日费率
人工总成本
修复进入生产的缺陷的成本
测试的阶段(冒烟、每天、完全回归)