2014-10-15 4 views
0

Я пишу автоматические тесты с использованием огурцов и SitePrism. Один тест добавляет роль пользователя в список, и у меня возникли проблемы с проверкой наличия роли (для проверки ее успешного назначения) на последних шагах.Проверка наличия опции в списке?

корнишоны является ...

Scenario: Assigning roles to a user 
    Given I have reached the user edit view in the admin 
    When I click the Assign Roles tab 
    And select the first value in the Add Role dropdown 
    And click Add role 
    Then I should receive the message of save successful 
    And the role should be present in the current role list 

... С And the role should be present in the current role list является шагом у меня возникают проблемы с. После того, как And click Add role шаг выполняется, то HTML для списка появляется как таковой ...

<dd> 
    <select id="current-role-a02322d1-8add-4234-aeca-02d3fca2a239" class="current-role" name="role_id" multiple="multiple"> 
    <option title="System Administrator Role" value="1">Administrator</option> 
    </select> 
</dd> 

Это один я застрял на. Что я устанавливаю как элемент на модели страницы, и что я пишу в своих определениях шагов, чтобы проверить наличие <option title="System Administrator Role" value="1">Administrator</option> и сделать шаг неудачным, если его нет? Я предпочел бы проверить на value="1" вместо title или текст.

Заранее благодарю за помощь!

+0

Почему вы отметили 'Capybara', когда ваш вопрос содержит код огурца? – Surya

+1

Тег должен быть связан с тем, что * непосредственно * участвует в вопросе. Люди заботятся, потому что правильное рассмотрение вопросов - это то, что StackOverflow. – tadman

+1

Я не думаю, что этот вопрос имеет отношение к огурцу. Вы можете использовать любую библиотеку, которую вы выбираете, в определении шага, и, похоже, вопрос заключается в написании определения шага, которое взаимодействует с веб-страницей. –

ответ

1

Определите метод на странице модели, который будет извлекать значение, которое вы пытаетесь утвердить. Этот метод будет содержать определение элемента, а затем .text или .value в конце определения вашего элемента. Здесь вы можете использовать значение = «1» или название.

В определении шага вызовите метод и утвердите, что возвращаемое значение равно «Администратор».

Смежные вопросы