这是我第一次在开发中使用azk(Ruby 2.2.3 + Rails 4 项目)
我想运行 Rspec 测试。
如何使用Azkfile创建特定的系统测试环境? (测试 gem 的 + 测试数据库 + webkit 依赖项)
最佳答案
将系统 test
和 postgres-test
添加到您的 Azkfile.js 中,如下例所示。
要运行该配置,您必须使用启动然后停止系统:
$ azk start -R test && azk stop test
$ azk shell -- bundle exec rspec spec
或者您可以直接在 shell 中运行配置命令:
$ azk start postgres-test
$ azk shell test
bundle install --path /azk/bundler
bundle exec rake db:create
bundle exec rake db:migrate
$ azk shell -- bundle exec rspec spec
示例:
systems({
app: {
// ..
},
postgres: {
// ...
},
/* TEST */
test: {
extends: "app",
depends: ["postgres-test"],
command: "bundle exec rspec spec && exit 0",
provision: [
"bundle install --path /azk/bundler",
"bundle exec rake db:create",
"bundle exec rake db:migrate",
],
scalable: { default: 0, limit: 1 },
http: false,
wait: false,
envs: {
RAILS_ENV: "test",
RACK_ENV : "test",
BUNDLE_APP_CONFIG: "/azk/bundler",
HOST: "#{system.name}.#{azk.default_domain}",
},
},
"postgres-test": {
extends: "postgres",
scalable: { default: 0, limit: 1 },
envs: {
// set instances variables
POSTGRES_USER: "azk",
POSTGRES_PASS: "azk",
POSTGRES_DB : "#{manifest.dir}_test",
},
},
});
关于ruby - 如何设置测试环境(测试 gem`s + 测试数据库),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32926631/