2016-07-21 3 views
0

Я пытаюсь выбрать опцию, Robot Framework нативного Ключевое слово «Выбрать из списка» команды, однако он не смог с сообщением об ошибке:Robot Framework «Выбрать из списка» ошибка команды

источник HTML страницы:

<select id="reason" placeholder="Please select" style="width: 100%; display: none;" class="m-b-xs" data-role="combobox" aria-disabled="false" aria-readonly="false"> 
<option value="a">Assume</option> 
<option value="b">New</option> 
<option value="c">Renew</option> 
<option value="d">Purchase</option> 
<option value="e">Refinance</option> 
<option value="f">Reschedul</option> 
<option selected="selected" value="New">New</option> 
</select> 

Я использовал значение "Пусть" или "а":

Choose Application Reason 
    Select From List xpath=//select[@id="reason"] Assume 

Тест был неудачно с сообщением об ошибке:

INFO : Selecting option(s) 'Assume' from list 
'xpath=//select[@id="reason"]'. 
..... 
FAIL :ValueError: Option 'Assume' not in list 'xpath=//select[@id="reason"]'. 
INFO : Selecting option(s) 'a' from list 'xpath=//select[@id="reason"]'. 
..... 
FAIL : ValueError: Option 'a' not in list 'xpath=//select[@id="reason"]'. 

Но если заменить значение "Предположим" с по умолчанию юдоли "Новый": был принят

Choose Application Reason 
    Select From List xpath=//select[@id="reason"] New 

тест.

Может ли кто-нибудь помочь? Спасибо заранее.

ответ

4

У меня были похожие проблемы с выбором drop downs, и я попробовал это и работал для меня.

click element xpath=//select[@id="reason"] 
wait until element is visible xpath=//option[contains(text(),'${label}')] 
click element xpath=//option[contains(text(),'${label}')] 

Если вы хотите выбрать любое статическое значение из списка.

click element xpath=//select[@id="reason"] 
click element xpath=//select/option[0] 

Вы также можете использовать текст равного,

click element xpath=//option[text()='${label}')] 

Игнорирования пустым,

click element xpath=//option[normalize-space(text())='Assume'] 
0

Я предполагаю, что это работало как новая опция по умолчанию. Ключевое слово «Выбрать из списка по значению» работает лучше. Try:

Select From List by Value xpath=//select[@id="reason"] a 

Если он не работает - я имел обыкновение иметь ошибку с состоянием элемента - добавить элемент Нажмите, прежде чем выбрать из списка:

Click Element xpath=//select[@id="reason"] 
Select From List by Value xpath=//select[@id="reason"] a 
0

следует использовать этикетки, что означает текст

eg

Select From List By Label xpath=//select[@id="reason"] Assume 
0

Другая альтернатива с помощью Index

Select From List By Index xpath=//select[@id="reason"] 1 
0

Я думаю, вы должны выбрать по значению:

select from list by value  xpath=//select[@id="reason"]  a 
Смежные вопросы