2014-10-10 3 views
0

Я пытаюсь проверить даты с помощью Selenium. Итак, мой сценарий;Пример сравнения даты селена

Scenario: Date validation 
When I set field <field> to value <value> 
And I save the form 
Then I should see error message <message> 

Examples: 
| field | value | message | 
| startDate | 01/01/2014 | End date should be greater than start date | 
| endDate | 01/01/2014 | End date should be greater than start date | 

Мой метод заполнения для заполнения поля является общим, как показано ниже;

@When("I set field <field> to value <value>") 
public void populateField(@Named("field") String fieldName, @Named("value") String value) { 
    populateFieldValue(fieldName, value); 
} 

Мой вопрос, так как метод шаг является универсальным, как установить дату начала, затем дата окончания и отобразить сообщение об ошибке в одном примере строки.

Просьба предложить.

ответ

0

Вы можете использовать StringListConverter передать списки значений параметров

Простой пример:

Scenario: Date validation 
When I set field <field> to value <value> 
Then I should see error message <message> 

Examples: 
| field | value | message | 
| startDate | 01/01/2014 | End date should be greater than start date | 
| endDate | 01/01/2014 | End date should be greater than start date | 
| startDate,endDate | 01/01/2014, 01/01/2014 | display the error message in a single example line. | 

И тестовый код:

@When("I set field <field> to value <value>") 
public void xxxx(@Named("field") List<String> fields, 
       @Named("value") List<String> values){ 

    System.out.println(">>>>>------------->>>>----------->>>>>"); 
    for(int i = 0; i < fields.size(); i++){ 
     String field = fields.get(i); 
     String value = values.get(i); 
     System.out.println(" --> Set field: " + field + " to value: " + value); 
    } 

} 
@Then("I should see error message <message>") 
public void when(@Named("message") String message){ 
    System.out.println(" -------> message = " + message); 
} 

выше тест генерирует эти результаты:

Running story main/resources/test.story 
>>>>>------------->>>>----------->>>>> 
--> Set field: startDate to value: 01/01/2014 
-------> message = End date should be greater than start date 
>>>>>------------->>>>----------->>>>> 
--> Set field: endDate to value: 01/01/2014 
-------> message = End date should be greater than start date 
>>>>>------------->>>>----------->>>>> 
--> Set field: startDate to value: 01/01/2014 
--> Set field: endDate to value: 01/01/2014 
-------> message = display the error message in a single example line.