当前位置: 首页 > 知识库问答 >
问题:

在本地运行GitHub构建测试

谢华彩
2023-03-14

恐怕我是个新手,有一些新手问题。

一段时间以来,我一直将python用于简单的脚本和自动化,但我正在挑战自己,通过为GitHub上的一些开源项目做出贡献来深入研究。

在这样一个公共环境中犯愚蠢的错误很有趣,但也很伤脑筋。

有时我的一项更改会导致错误,该错误会被提交PR时GitHub项目运行的自动测试之一捕获。如果可能,我想在提交PR之前自己捕获这些。有没有办法让我在自己的机器上本地运行相同的构建测试?

对于在不要求维护者太多时间/帮助的情况下进行开源贡献的任何其他最佳实践建议也值得赞赏。

共有2个答案

高博涉
2023-03-14

Act在大多数情况下都能正常工作,但对它可以使用的图像类型有点限制。

我真的觉得你在这一点上,如果有这样的工具就好了:/

班泽语
2023-03-14

在本地运行整个构建并没有真正意义。尤其是对于测试。

Github和大多数开源存储库都有一个贡献指南。Github尤其有贡献。md允许回购所有人演示如何出资。

例如:

  • CPython在其自述中有一个测试部分
  • Django有一个贡献部分,介绍了如何在自述文件中运行测试套件

大多数合适的开源项目都会解释如何在本地运行测试/构建。

但是,不要为错误的测试之类的事情感到羞耻。这就是版本控制系统的作用。犯10个错误,修复错误/添加功能,之后犯20个错误。您可以只做错别字并在下一次提交中修复它们。没关系。只需在添加需要添加的内容后重新调整您的分支,您就可以开始了。犯错误没什么好羞耻的,尤其是因为我们有工具可以轻松修复这些错误。

为什么不行动?

动作是可以的。这是我自己使用的一个很好的工具。但是你不需要仅仅为了测试而运行整个工作流,当你可以在没有它的情况下运行测试时,它也不是一个真正的小工具。

act的问题在于,它只适用于github操作,而github操作只是众多CI工具中的一种。

Travis、CircleCI、Jenkins。。。

最好只是阅读你正在参与的项目并遵循他们的指导方针。

 类似资料:
  • 我正在尝试运行我的repo上列出的基本maven java操作:https://github.com/dhowe/rita2/ mvn-B包——文件pom。xmlcmd在本地repo中正确运行,但测试在github操作中失败,并出现以下错误(此处有完整日志): 因此,很明显,通过github操作运行时找不到字典资源。但是为什么maven会在本地找到文件(src/main/java/rita\u d

  • 我计划将我们的Travis CI构建迁移到使用Docker进行每次提交测试的GitHub Actions。 我是否可以在本地重复运行这些新的GitHub操作工作流?是否有一种在本地运行任何GitHub操作工作流的通用方法?

  • 我最近发现了命令来自动碰撞包版本号并提交更改。这是一个神奇的小发现。 有没有可能在撞击前进行测试 我在google或堆栈搜索“npm version......”中找不到任何东西匹配了太多不相关的结果。并且没有关于文档npm-version中测试的信息 在这个发现之前,我一直在乞求编写一个脚本。为了测试,碰撞版本,然后git提交。 我用的是karma,package.json包含 在测试npm版本

  • 问题内容: 我正在使用JUnit 4.4和Maven,并且有大量的长时间运行的集成测试。 关于并行化测试套件,有一些解决方案可以让我在单个测试类中并行运行每个测试方法。但是所有这些都要求我以一种或另一种方式更改测试。 我真的认为,在X线程中并行运行X个不同的测试类将是一种更干净的解决方案。我有成百上千的测试,所以我真的不在乎线程测试类。 问题答案: 使用Maven插件:

  • 我花了几个小时来找出为什么我的一个junit测试在本地运行,而不是在github工作流上运行。失败的测试检查一些文件是否存在,以执行一些配置工作。我正在使用maven资源插件将这些文件复制到目标目录中的一个文件夹中。这是我的pom插件设置。xml: 文件按预期复制,mvn clean test按预期运行,但不在github工作流中运行。 这是我的工作流定义: 我想这是一个典型的RTFM问题,但我没

  • 本地运行模式 本地运行模式主要用于测试功能是否正确。目前本地运行模式仅支持一个Worker(可以有多个Task)和一个PS。可以通过配置选项angel.deploy.mode来使用本地运行模式,具体的参数配置可参考Angel系统参数 1. 运行环境准备 Java >= 1.8 Angel发布包 angel-\-bin.zip 配置好HADOOP_HOME和JAVA_HOME环境变量,解压Angel