Итак, я сейчас пытаюсь протестировать приложение Rails, связанное с Mongoid с Cucumber.У меня все настроено (или я так полагаю), так что будет запущен следующий тест:
Feature: Create and manage about entries
In order to use the about data effectively
As an application consumer
I want to create and manage some about entries
Scenario: Create about entries
Given the following abouts exist
| title | body_copy |
| "About entry #1" | "hello body!" |
When I go to the list of about entries
Then I should see "About entry #1"
Scenario: Create and retreive specific about entry
Given the following abouts exist
| id | title | body_copy |
| 4e4d37756ea257f031000003 | "About entry #1" | "hello body!" |
When I go to about entry with id 4e4d37756ea257f031000003
Then I should see "About entry #1"
В моем файле путей есть следующие записи для поддержки вышеуказанных тестов:
when /^the list of about entries$/i
'/abouts'
when /^about entry with id (.+)$/i
"/abouts/#{$1}"
Эти тесты отлично работают.Однако мне нужно проверить действие удаления.Я провел некоторые исследования в Интернете, но, похоже, все проходит через пользовательский интерфейс для удаления этих элементов, и проблема, с которой я столкнулся, заключается в том, что мое приложение Rails обслуживает только файлы JSON и JSON, и мне нужен более лучший (более программный) способ тестирования вещей безПользовательский интерфейс участвует.Что касается макетов, я использую стандартные макеты, встроенные в Pickle.Я открыт для использования другого программного обеспечения для насмешек, если это необходимо, например, от фабриканта, но вы должны будете дать мне несколько подробных отзывов о том, как я могу подключить это.В настоящее время у меня есть мой тест на удаление (который НЕ работает):
Scenario: Delete about
Given the following abouts exist
| title | body_copy |
| title 1 | body_copy 1 |
| title 2 | body_copy 2 |
| title 3 | body_copy 3 |
| title 4 | body_copy 4 |
When I delete the 3rd about
Then I should see the following abouts:
| Title | body_copy |
| title 1 | body_copy 1 |
| title 2 | body_copy 2 |
| title 4 | body_copy 4 |
Проблема в том, что автоматически сгенерированный тест (как показано выше) использует вызов метода click_link "Destroy"
, но это не будетРабота.