【问题标题】:aggregate test results from different parts of the stack to one graph将堆栈不同部分的测试结果汇总到一张图
【发布时间】:2014-12-03 17:56:37
【问题描述】:

如今,网络应用由许多不同的堆栈组成。我们有后端 Ruby/Python/PHP/JavaScript/C 代码,然后我们有带有 AngularJS、EmberJS 等框架的 MVC/客户端代码。本质上,开发人员编写测试代码来覆盖他们各自的堆栈部分。也许是一些用于 Rails 堆栈的 RSPec,用于 JavaScript 测试的 QUnit,用于无头浏览器测试的 Selenium,等等。

我的问题如下:目前是否有一个框架可以将这些测试的所有结果合并到一个结果电子表格/图表中?我最感兴趣的是在一个位置查看应用程序的整体运行状况,而不是去堆栈的每个部分并单独调查它们。这些天是怎么做到的?是否有现代工具能够获取 rspec 测试、qunit 测试、selenium 测试的结果并将结果放入一个漂亮的图表中?

理想情况下,我想构建一个测试框架,该框架将为我使用的所有不同堆栈提供一个“GO”按钮,并将结果交付到一个统一的输出,我可以显示为 HTML、CSV 或任何所需的格式当时。

【问题讨论】:

  • 听起来您正在寻找一个持续集成系统。
  • 你试过 GruntJS 吗?至少您会同时运行所有测试,并且可能会为结果设置一个公共输出。

标签: javascript testing selenium rspec integration-testing


【解决方案1】:

我曾经参与过复杂项目,这些项目有多个用 java、ruby、R、scala 编写的服务,具有不同的数据库,前端是用 javascript 框架、本机移动应用程序和 rails 编写的。我们有一个叫做“构建监视器”的东西,如下所示,显示不同测试套件的状态,因此系统的状态在一个地方,这是非常明显的。 这是通过jenkinsgoteam citytravis 等构建工具实现的。这些工具提供以下功能。

  1. 执行并整合用 java、ruby 编写的测试的结果, javascript、.net、R 等。这可以是单元测试、集成测试、功能 ui 测试、性能测试、端到端测试。
  2. 定期或在代码更改时触发测试
  3. 成功测试部署应用程序
  4. 通过电子邮件、短信等方式报告测试结果
  5. 通知导致失败的代码更改
  6. 存档测试结果并显示测试执行趋势
  7. 还有很多其他的东西......

关于Continuous Integration (CI)的一些理论

建议谷歌了解更多关于 CI 工具的具体实现以及任何语言和测试套件的具体实现的详细信息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-08-22
    • 2021-08-13
    • 2012-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-27
    相关资源
    最近更新 更多