Я искал ответ на этот вопрос и нашел много
более сложные вопросы, но ни один не дал мне достаточно понимания, чтобы
понять это.
Что я делаю:
1- открыть страницу с номером, который, вероятно, будет большим
2 - получить путь X к этому номеру и сохранить его в переменной
3 - сделать JavaScript, чтобы сравнить вышеупомянутую сохраненную переменную, чтобы увидеть, если она больше 10, если так, установите новую переменную в true; иначе ложь (потому что это значение по умолчанию)
4- убедитесь, что переменная в # 3 истинна
Звучит достаточно просто, нет?
Где это идет не так:
На шаге 3 сравнение переменной с шага № 2 до 10 недопустимо, по крайней мере не так, как я пишу.
Почему?
подробности:
<tr>
<td>open</td>
<td>http://www.google.com/search?hl=en&q=selenium+verifyEval</td>
<td></td>
</tr>
<tr>
<td>store</td>
<td>/html/body/div[5]/div/p/b[3]</td>
<td>resultCount</td>
</tr>
<tr>
<td>storeEval</td>
<td>var isMoreThan10 = new Boolean(); isMoreThan10 = (resultCount > 10);</td>
<td>isMoreThan10</td>
</tr>
<tr>
<td>verifyExpression</td>
<td>${isMoreThan10}</td>
<td>true</td>
</tr>
Я только что подумал об одном возможном обходном пути: разверните код javascript, чтобы получить там значение, и назначьте его переменной там, так что я с большей вероятностью смогу использовать эту переменную в javascript. Не уверен, как именно это будет сделано - кто-нибудь хочет помочь с этим?
Но, конечно, есть лучший путь, не так ли? Я должен иметь возможность присвоить значение переменной в Selenium, а затем в следующей строке использовать эту переменную в JavaScript, верно?