Пожалуйста, помогите мне выбрать случайное имя страны из выпадающего списка страны при каждом запуске скрипта.Как выбрать значение в случайном порядке с помощью xml в веб-драйвере selenium с Java
Я хочу попробовать использовать xml.
XPATH из выпадающего списка является .//*[@id='intselect ']
HTML code:
<select id="intselect" name="intselect" onchange="setCurrency(this);">
<option value="US">UNITED STATES</option>
<option value="AG">ANTIGUA AND BARBUDA</option>
<option value="AR">ARGENTINA</option>
<option value="AW">ARUBA</option>
<option value="AU">AUSTRALIA</option>
<option value="AT">AUSTRIA</option>
<option value="BH">BAHRAIN</option>
<option value="BD">BANGLADESH</option>
</select>
countryname.xml
<?xml version="1.0" encoding="UTF-8"?>
<array name="testArray">
<country>
<countryname>UNITED STATES</countryname>
</country>
<country>
<countryname>ANTIGUA AND BARBUDA</countryname>
</country>
<country>
<countryname>ARGENTINA</countryname>
</country>
<country>
<countryname>ARUBA</countryname>
</country>
<country>
<countryname>AUSTRALIA</countryname>
</country>
</array>
// Метод выборки случайного значения из XML
public void Fetch_XML()
{
SAXBuilder builder = new SAXBuilder();
File xmlFile = new File("C:\\Documents and Settings\\vlakshm\\MyTNG\\list\\countrynames.xml");
Element node = null;
try {
//Element result=null;
Document document = (Document) builder.build(xmlFile);
Element rootNode = document.getRootElement();
List list = rootNode.getChildren("country");
Random random = new Random();
int newcountryname= random.nextInt(list.size());
node = (Element) list.get(newcountryname);
}//End of Try loop
catch (IOException io) {
System.out.println(io.getMessage());
} catch (JDOMException jdomex) {
System.out.println(jdomex.getMessage());
}
node.getChildText("countryname");
//element_array = driver.findElement(By.xpath("//select[@id='intselect']/option"));
}//End of randomPartnum method
// Я звоню, чтобы этот метод был выбран в раскрывающемся списке
public void Choser() {
Fetch_XML();
driver.findElement(By.id("intselect")).click();
System.out.println("---------------------------------------");
System.out.println("Country choser layer test case-Success");
System.out.println("---------------------------------------");
}
но получаю пустой указатель exception.Can кто-нибудь помочь мне разобраться с проблемой в коде
Я попытался с помощью следующих code.But его не выбора значения. – user2353517
Я отредактировал вопрос с кодом, который я пробовал ... – user2353517
Не знаю, понимаю ли я вашу логику. Можете ли вы посмотреть здесь (http://stackoverflow.com/questions/6430462/how-to-select-get-drop-down-option-in-selenium-2). Попробуйте выбрать один вариант страны по метке без использования ваших тестовых данных xml - select.selectByVisibleText («ARGENTINA») ;. – behold