Настроить репу и Database_cleaner

Я использую репа и Ruby on Rails. У меня есть сценарии с использованием и без использования JavaScript. Я хочу использовать transaction Стратегия DatabaseCleaner для не-JavaScript сценариев и truncation стратегия для сценариев, отмеченных @javascript, @selenium и так далее.

Я использую следующее решение для Rspec Features

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

Но это не работает в случае репа. Каков наилучший способ сделать так, как я ожидал? Или другими словами, как указать сценарий репы, отмеченный @javascript (или же @selenium и т. д.) тег в config.before?

1 ответ

Изучая код репы, я получаю такие параметры конфигурации

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

В этом случае стратегия установлена ​​на truncation когда сценарий помечен @javascript пометить как следующее:

  @javascript
  Scenario: Viewing users
    Given the following users:

Но в моем душе, когда вы хотите использовать, например, Selenium в одном сценарии, вы не должны заменять @javascrtipt отметить по @selenium пометить но добавить @selenium тег после @javascript пометить как следующее

  @javascript @selenium
  Scenario: Viewing users
    Given the following users:
Другие вопросы по тегам