E2E测试指标

5

如果这个问题适合在Stack Exchange程序员社区问,抱歉。我在两个网站上都发布了这个问题,因为我觉得这个问题很棘手。

问题:是否存在有价值的端到端自动化测试指标?(收集任何关于它们的数据是否有意义?)

背景:例如,当我编写单元测试时,我实现了一个测试覆盖率包,它涵盖了%的类,#方法等......

以下是一些我遇到的点:

  • 测试效率(规范速度)
  • 应用程序性能(响应/加载时间)
  • 自动化进展(当前自动化测试的数量与可以自动化测试的数量之间的比较)
  • 缺陷效率(测试期间发现的缺陷数与交付后发现的缺陷数之间的比较)

有什么想法吗?如果重要的话,我正在使用Angular应用程序上的Protractor。


1
你应该首先在你的环境中定义测试自动化的目标。然后创建指标来表示与期望结果之间的差距。没有明确定义目的的情况下,随意抛出指标是毫无用处的。 - Florent B.
@FlorentB。没错,感谢你的建议。我想主要目标是在开发过程中通过验证应用程序的主要部分仍然可以正确工作来进行合理性检查(我猜这就是功能/回归测试?)我不想说这只是快乐路径测试(因为我认为它比那更深入)......但由于缺乏更好的术语,我们可以考虑它是这样的。 - Gunderson
2个回答

2
我想到的关于Protractor的一些事情: 您也可以使用端到端测试来测量代码覆盖率,但这需要一些设置技巧,请参考:https://www.npmjs.com/package/protractor-istanbul-pluginhttps://www.npmjs.com/package/grunt-protractor-coverage
请注意,这不是一个干净的解决方案 - 您的代码可能会被压缩,服务器端未包含在内,请记住这一点。
此外,您还可以使用类似protractor-perf的工具来测量页面性能(加载速度、JS执行速度、CSS渲染等客户端计算): https://github.com/axemclion/protractor-perf 但也要记住,这需要大量的准备工作,但无论如何都很酷。
关于自动化进度/百分比可自动化 - 我认为您无法自动跟踪这一点,除非您的需求非常详细,并存储在具有API的某个系统中。然后,您可以将测试用例与特定要求链接起来并跟踪它。实际上我从未见过这样的工作。
缺陷效率 - 使用JIRA报告更容易跟踪。

太棒了,感谢您的输入。是啊,我一直在思考这个问题:“这值得付出努力吗?”我会等待其他答案的。 - Gunderson

1
是的,收集端到端测试指标的数据是有意义的。除了测试用例执行、性能和其他测量之外,它还可以帮助我们做出下一阶段活动的决策,例如估计未来项目的成本和时间表、了解成功项目所需的改进类型以及决定需要修改的流程或技术等。测试指标是衡量软件质量最重要的指标。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接