进行端到端测试时如何正确运行我的应用程序?

时间:2019-03-07 07:53:59

标签: node.js reactjs testing e2e-testing cypress

我们有一个服务的前端应用程序,我们希望在CI服务器上对其进行e2e测试。最好的方法是什么?

整个测试应在非gui CI上运行,并且可以通过单个命令执行。

我想到的是这样的:

concurrently "npm run serve" "npx cypress run"

但是,这似乎增加了巨大且不必要的开销。另外,我必须以某种方式确保在实际投放应用之前不会执行测试。

2 个答案:

答案 0 :(得分:1)

Cypress continuous integration docs中所述,您可以使用一个名为wait-on的npm软件包来等待服务器,然后再运行Cypress:

npm run serve & # run this in the background
wait-on http://localhost:8000 && npm run cypress

答案 1 :(得分:0)

不是一个确定的解决方案,只是一些想法。我们正在使用bash脚本,该脚本会导致使用一个命令启动测试。在该bash脚本中,我们有以下内容:


    # environment variables
    export HOME=${PWD}

    yarn install
    ./node_modules/.bin/cypress install
    ./node_modules/.bin/cypress verify

    ./node_modules/.bin/cypress run ${SMOKETEST}