2

我们的代码库包含多种语言的代码,从 Python 到 C# 到 MATLAB 和 LaTeX。目前,我们对每种单独的语言都有单元测试(使用特定于语言的框架)。这使得测试自动化很麻烦,尤其是收集和检查所有不同的报告。

因此,我正在寻找一种测试自动化工具

  • 可移植(至少 Windows + Linux)
  • 与语言无关
  • 可以扩展(自定义报告,其他语言,...)

理想情况下,该工具将通过插件连接到现有的特定于工具的框架,如 Python unittest、C#NUnit等。

有这样的工具吗?如果没有,你如何处理这样的测试场景?

4

2 回答 2

5

也许您正在寻找类似Test Anything Protocol的东西?

Test Anything Protocol (TAP) 是一种允许在单元测试和测试工具之间进行通信的协议。它允许单个测试(TAP 生产者)以与语言无关的方式将测试结果传达给测试工具。

它并没有避免对特定语言测试的需要,但它确实确保您的测试结果都采用统一的格式,以便您可以构建跨语言报告。它也相当简单,所以如果您选择的语言没有 TAP 生产者,那么编写一个(并且可能将其分享给世界)并不是很困难。

于 2012-08-30T13:32:51.983 回答
4

如果您按照已经建议的那样使用 TAP,那么围绕它的完整测试基础架构就是Tapper

当您需要它的自动化层时,中央服务器会采用一些外部 Linux 工具,但除此之外,其他一切都是独立于语言和操作系统的。它可以接收 TAP 报告,无论它们是如何启动的:手动测试、crontab 驱动或可以从头开始设置机器或通过 ssh 启动测试的内置自动化。

有关更多信息,请参见上面的链接,尤其是查看链接的演示文稿。

概括:

  • TAP 作为编写测试的协议
  • 基础设施的 Tapper
于 2012-10-10T21:11:54.173 回答