鉴于我在我的工作区中有一个 android 项目MyAndroidProject
和我的测试项目MyAndroidProjectTests
目录,我如何编写一个 pre-commit git hook 来运行测试MyAndroidProjectTests
并在测试失败时拒绝提交任何代码更改?
当我在终端上运行测试时,它们通常有如下输出:
com.mydomain.tests.Models.MyProjectTests:.......
Test results for InstrumentationTestRunner=.......
Time: 0.05
OK (10 tests)
我不确定的是如何使用什么来尝试确定测试是否通过或失败,而不是解析最后一行的输出(例如OK
,或者FAILED
我不确定我是否非常喜欢这种方法。我理想情况下我'想要从我用来在终端上运行测试的命令返回一个状态:
adb shell am instrument -w com.mydomain.tests/android.test.InstrumentationTestRunner
我想在一个 shell 脚本中使用响应,我可以将它.git/hooks/
作为预提交钩子放在文件夹中。
我将不胜感激任何信息或其他资源的链接,并提前非常感谢。