用竹子测试硒

Posted

技术标签:

【中文标题】用竹子测试硒【英文标题】:Selenium Tests with Bamboo 【发布时间】:2015-02-16 01:40:19 【问题描述】:

我将在每次 Bamboo 构建后执行一些 Selenium 测试。据我所知,最好的方法是将它们存储在单独的存储库中,并使用特定项目(或现有项目中的阶段)来运行这些测试。但是有一个问题,我想不通。我正在使用部署计划在构建到开发环境后交付产品,所以我希望只有在部署成功的情况下才能执行我的测试。有人知道如何用 Bamboo 触发器的术语正确表达这一点吗?谢谢你。

【问题讨论】:

【参考方案1】:

这是一个相当混乱和复杂的过程。众所周知,selenium 需要一个实时网站来指向以执行测试。使用 Bamboo 有几种方法可以实现这一点。我假设您已经为自动部署设置了构建管道。根据您想要什么以及如何部署多个agents 可以用于执行测试。另一种方法是使用Selenium Grid。您想在使用多个从属设备进行部署后触发selenium 任务。网格创建集线器和从属关系,并告诉集线器相应地执行测试。 Here 是有关可用于触发 Selenium Testng 测试的插件的一些信息。当然,正如您所说,您希望创建依赖于部署的selenium 任务,因此如果部署失败,则测试将不会运行。希望对您有所帮助!

【讨论】:

感谢您的回复,赛弗;我决定使用 SauceLabs 网格来执行 Selenium 测试,Spock 将它们包装并从 Gradle 中使用,所以我主要想知道的是如何在部署后正确触发构建任务。 @sviklim 您能否解释一下部署后如何正确触发构建任务? this 会帮忙吗? 重点是,测试保存在单独的存储库中,并被视为黑色/灰色框;要执行它们,我需要一个单独的“构建计划”(在 Bamboo 中),它可以在部署后立即触发(或延迟触发)。我看过这个讨论goo.gl/KcVF6C 并且一些解决方案非常有趣。但是有没有一种方法可以在不涉及外部存储库或 REST API 的情况下以“自然”方式实现构建调用?换句话说,“正确触发..”的意思是“如何在部署完成后在 Bamboo 上开始构建任务,而不需要“巫毒”的东西,例如,使用插件或内置工具”

以上是关于用竹子测试硒的主要内容,如果未能解决你的问题,请参考以下文章

提高 AWS 实例中硒测试的屏幕分辨率

如何从竹变量替换硒框架属性文件值?

所有测试都通过了,但竹子构建失败并显示“没有找到失败的测试,可能发生了编译错误”。

来自云中竹子的 Selenium Web 驱动程序测试,用于测试文件上传

软件测试题目精选

如何分析每个单独的硒测试?