【问题标题】:How would you run jasmine tests on a CI environment *without nodejs*你将如何在 CI 环境中运行 jasmine 测试 *没有 nodejs *
【发布时间】:2014-08-29 19:04:21
【问题描述】:

我有一堆想在 jenkins CI 服务器上运行的 jasmine 测试。

目前,我们使用运行规范的 html 页面,开发人员可以在自己机器上的浏览器中打开该页面。 如果我可以访问某种服务器端测试运行程序(如 karma),那么过渡到 CI 会很容易,但是由于一些未公开的原因,我无法在我们的 CI 服务器上运行 nodejs。

因此,本着受约束的创造力的精神,我可以使用什么来在没有节点的情况下自动执行 jasmine 测试? (但任何可以用 maven 和 jdk 运行的东西都可能很好......)

【问题讨论】:

  • 您也没有透露您使用的 CI 解决方案或语言...
  • @mpm :你是对的,对不起。我编辑了我的帖子 - 这是一个 jenkins 服务器,任何基于 java 的东西都应该是公平的游戏。谢谢。
  • 你能跑 rhino 吗?因为你使用的是 jvm。
  • 我需要测试 DOM 操作,据我所知,rhino 只是一个 javascript 引擎,而不是无头浏览器,对吧?我尝试了一堆基于phantomjs的解决方案,但恐怕我无法访问最新版本...
  • 不,但我虽然犀牛可以发射业力。但显然它没有nodejs api。在 java 上运行的 ringoJS 怎么样,也许有 E2E 解决方案。

标签: jenkins jasmine


【解决方案1】:

您可以让您的测试自动生成一个带有运行单元测试的页面的浏览器。棘手的部分是把结果返回给主测试运行器。我找到的解决方案是使用自定义 jasmine 报告器(您只需要实现与其他报告器相同的功能),当规范完成运行时,您执行 AJAX 调用以将该结果写入文件。主运行程序只需要等到该文件中写入某些内容即可查看结果。一旦测试完成,别忘了关闭浏览器,否则你的 CI 服务器会被窗口淹没。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-08-06
    • 1970-01-01
    • 2015-10-15
    • 1970-01-01
    • 2023-04-05
    • 2014-02-06
    • 2016-09-24
    相关资源
    最近更新 更多