【问题标题】:Executes tests in parallel failing on Jenkins but passing locally在 Jenkins 上并行执行测试失败但在本地通过
【发布时间】:2022-12-05 06:41:01
【问题描述】:

我在这里写也许我可以得到一些想法可能是什么问题。

我正在用黄瓜和春天的宁静。 serenity 3.3.2 使用了以下包: 宁静核心 宁静剧本 宁静-screenplay-webdriver 宁静剧本休息 宁静-确保 宁静之泉 宁静-junit 宁静黄瓜

附加库(春季需要): 弹簧启动启动器测试 春豆 春兔 我也在使用其他其他库,但在测试开发期间用于帮助。

我使用 maven-failsafe 插件和来自 here 的文档将测试配置为并行执行。我使用 3.0.0-M3 故障安全插件版本(否则不会触发测试并行执行)。

这些测试是并行运行的,以防我在本地使用 maven 执行它们。我尝试了两种不同的操作系统机器:Windows 和 Unix。测试执行没有任何问题,所有测试都通过了。

如果我在 Jenkins 上执行测试,我会遇到问题。 首先,所有测试也在 Jenkins 上以并行方式触发(线程信息显示在日志中:pool-1-thread-2;pool-1-thread-1;pool-1-thread-3)。 一些测试在 Jenkins 上失败了。测试失败,因为在当前状态下找不到该元素。屏幕截图捕获已启用。这些元素相应地显示在屏幕截图上。我还检查了测试失败的断言是由在同一测试中执行上述其他步骤的同一线程执行的。

我正在使用 Xvfb Jenkins 插件以便能够与测试执行 UI 交互:

代理配置了 5 个执行器。不使用这些执行程序,因为测试在同一台机器(而不是多台机器)上并行运行。如果我错了请纠正我。

我不知道可能是什么问题。有人对这种配置有任何经验吗?我欢迎任何想法。

【问题讨论】:

    标签: jenkins automated-tests cucumber-serenity


    【解决方案1】:

    我有同样的问题,我还不能解决。测试失败是因为未找到该元素但屏幕截图显示相反,或者测试失败是因为该元素仍然可见,但不在屏幕截图上。尝试了许多不同的等待,但没有结果。你找到什么了吗?

    【讨论】:

      猜你喜欢
      • 2015-03-26
      • 2021-06-02
      • 1970-01-01
      • 2018-12-18
      • 2016-11-29
      • 1970-01-01
      • 2020-07-14
      • 2017-01-16
      • 1970-01-01
      相关资源
      最近更新 更多