如何在存储库更改或添加请求请求时触发 E2E 测试?

How to trigger E2E tests when repositories are changed or pull requests added?

我发现的唯一类似问题如下:Trigger travis ci builds if another git repository updates

请记住,我们的 E2E 测试是全栈的:我们有一个实时服务器 运行ning,我们的测试是 运行 针对攻击服务器的 UI。没有任何东西被存根或嘲笑。

现在,我可以用这种方式触发 travis 重建,但是当我在分支和不同的存储库分支之间存在相互依赖关系时,问题就出现了。

假设我有 3 个存储库:backendfrontende2etests。如果我创建新分支 frontend/foo 也需要 backend/foo,e2e 测试将永远无法通过,因为它们将 运行 一次 frontend/foo 和 [=16] =] 还有一次 frontend/masterbackend/foo.

以前有人遇到过这个问题吗?你是怎么处理的?

经过大量挖掘,很明显没有解决方案,每个人都有自己的内置解决方案。

对我们有用的是 git 预推送挂钩,环境变量指向我们的存储库,当您推送它时,它会询问您是否要为 UI 项目使用不同的分支(如果您在 UI,询问您是否要为服务器项目使用不同的分支)并且默认情况下它使用您所在项目的当前分支。所以它在推送时非常快,通常你只需再按一次 ENTER,这两个分支基本上是所需的依赖项,并且将使用 API 端点触发 travis 构建。

到目前为止工作正常。