使用hudson获取远程测试结果

时间:2009-11-26 16:27:40

标签: web-services continuous-integration hudson

我有一台运行专有语言的服务器,我可以用这种语言运行“单元测试”。我不能在这台机器上安装Hudson slave,但是希望将这些测试结果出现在hudson的工作中(至少要监视这个服务器代码的代码质量)。 我目前正在尝试使用Web服务来获取结果并将它们存储在Hudson工作区中,但我确实认为它不是正确的解决方案。 您可以为我提供哪些解决方案?

3 个答案:

答案 0 :(得分:1)

我终于通过了Web服务路径,虽然这并不容易。 此路径中有一些步骤

  1. 我创建了一个带有groovy的maven mojo(有关更多信息,请参阅GMaven),使用groovyws调用了一个Web服务,该服务根据测试结果创建junit report
  2. 使用此mojo,我创建了一个调用Web服务的maven项目,并将junit.xml文件存储在输出文件夹中
  3. 最后,我在哈德森创建了这个项目的maven工作并定期调用它。由于在maven构建中使用junit报告集成,我的测试结果在Hudson中显示为图形,用户可以深入查看失败的测试。

答案 1 :(得分:0)

不确定这些是否可行,但......

也许有一个选项是构建作业完成时执行第二个构建目标或脚本来将测试结果从远程服务器scp到本地构建服务器,以便它们出现在hudson中

或者如果平台允许

使用sshfs等

之类的东西将远程计算机上的目录映射到本地文件系统

卡尔

答案 2 :(得分:0)

是的,您可以使用脚本任务将scp或任何结果(以junit xml格式)添加到当前工作空间目录。然后有一个“发布JUnit测试结果报告”的构建后任务&将它指向复制的文件。

显然,如果它不是junit兼容的格式,你将不得不转换它。

听起来你正走在正确的道路上