如何在GitHub上自动修改Pull请求?

时间:2018-05-10 13:50:30

标签: github pull-request system-testing

我想让TravisCI或其他一些GitHub应用程序根据我提供的脚本自动修改拉取请求。我怎样才能做到这一点? (或者可能有一个比我想出的更好的解决方案。)

原因:

我正在尝试将集成测试添加到GitHub项目中,以便它自动运行项目并将输出与已知的良好输出进行比较。如果存在差异,则应报告错误。

但是,我的测试在多个平台上运行并使用不同版本的库。平台和库的不同组合导致不同的输出,全部有效。例如,旧版本的库可能会进行与新版本不同的优化,因此输出不同但都有效。

由于难以为每个可能的库组合生成输出,我认为TravisCI可以生成它们并代表PR作者将它们添加到pull请求中。

或者完全不同的系统测试解决方案也可以。谢谢!

更具体的例子:

我正在处理的项目是pcb2gcode。它将电路板布局(gerbers)转换为CNC机床(g代码)的指令,以铣削和钻孔板。根据某些库的版本,例如boostgerbv,输出可能略有不同但仍然有效。

我希望有一个自动运行的测试gerber目录,并与预期的输出进行比较,这些输出已经提交到github。如果实际输出与预期输出匹配,则测试通过。

但预期的输出取决于库。一种解决方案是为不同的库组合提供预期的输出。然后根据正确的预期输出集进行比较。

生成这些预期的输出很困难,因为开发人员需要使用所有库组合来运行代码。无论如何,TravisCI正在运行测试和生成输出,因此它也可以将这些新的预期输出写入PR。然后所有测试都将通过,并且在代码审查期间可以与PR的其余部分一起检查预期的输出。

或其他一些更好的系统测试方法!

0 个答案:

没有答案