如果我使用RAILS_ENV=test Rails server
启动rails服务器,然后运行cypress run
,我可以在本地运行cypress,但我不知道如何执行此操作关于 CI。
我正在使用 SemaphoreCI,它允许我在运行 rspec 之前设置命令:
$ bundle install
$ npm install
$ bundle exec rake db:create db:migrate db:test:prepare --trace
其次是实际工作:
$ bundle exec rspec
根据cypress ,我无法使用 cy.exec()
启动 Rails 服务器,并且无法将 rails server
作为我的最后一个设置命令运行,因为它不会退出。我还能如何在 CI 上启动测试服务器以便运行 cypress run
?
最佳答案
我最终添加了RAILS_ENV=test bundle execrails server -p 3000 -d
,以便它在后台运行,然后kill -9 $(cat tmp/pids/server.pid )
用于作业后命令(一旦 rspec/cypress 完成运行)
关于ruby-on-rails - 在 CI 上使用 Cypress 启动 Rails 测试服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51661617/