自动化应用程序测试(phantomjs)和合并分支

时间:2016-07-30 06:44:16

标签: javascript git unix testing phantomjs

我想自动化测试和合并/部署我的应用程序。

拳头我通过 Chimp ESLint 进行测试:

$ chimp --ddp=http://localhost:3000 --mocha --path=tests --browser=phantomjs

$ eslint ./

如果这些测试完全通过,我想将开发分支合并到主分支:

git checkout master
git merge development

是否可以自动执行这些步骤?因此,如果任何测试失败,则不应进行合并。

1 个答案:

答案 0 :(得分:0)

您可以在脚本中声明这些步骤,在处理其他命令之前测试每个命令的退出状态。

例如,您可以使用预提交挂钩调用您的javascript命令。请参阅" Commit in git only if tests pass"

但是这种序列属于持续集成工具(TravisCircleCICodeShip,当然还有Jenkins)。

您可以在自己的构建步骤中定义每个命令:如果一个命令失败,则其他步骤不会执行。

.git/hooks/pre-commit:

#!/bin/sh
tests.sh || exit 1

tests.sh中有$PATH个脚本,如果一切顺利,则返回退出状态0。