gpt4 book ai didi

javascript - 配置 Turnip 和 Database_cleaner

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:36:17 24 4
gpt4 key购买 nike

我正在使用 Turnip和 Ruby on Rails。我有使用和不使用 javascript 的场景。我想对非 javascript 场景使用 transaction DatabaseCleaner 策略,对 @javascript, @ 标记的场景使用 truncation 策略 Selenium

我正在为 Rspec Features 使用以下解决方案

config.around(:each, :js => true) do |ex|
DatabaseCleaner.strategy = :truncation
ex.run
DatabaseCleaner.strategy = :transaction
end

但它在 Turnip 案例中不起作用。使它按预期工作的最佳方法是什么?或者换句话说,如何在 config.before 中指定由 @javascript(或 @selenium 等)标记标记的萝卜场景?

最佳答案

通过检查 code of Turnip我产生这样的配置选项

 config.around(:each, type: :feature, javascript: true) do |example|
DatabaseCleaner.strategy = :truncation
example.run
DatabaseCleaner.strategy = :transaction
end

在这种情况下,当场景被 @javascript 标签标记时,策略设置为 truncation,如下所示:

  @javascript
Scenario: Viewing users
Given the following users:

但是在我看来,当你想在一个场景中使用例如 Selenium 时,你不应该用 @selenium 标签替换 @javascrtipt 标签,而是添加 @selenium 标记在 @javascript 标记之后,如下所示

  @javascript @selenium
Scenario: Viewing users
Given the following users:

关于javascript - 配置 Turnip 和 Database_cleaner,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15487209/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com