Как можно выбрать другое раскрывающееся значение каждый раз для цикла - PullRequest
0 голосов
/ 11 февраля 2019

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

С помощью for я могу выбрать и добавить одно и то же значение 3 раза, но хочу выбрать и добавить другое раскрывающееся меню.значение каждый раз.

Сейчас я могу добавить один и тот же навык три раза, но я хочу добавить три.

Пожалуйста, предложите, как может отличаться значение при каждом выполнении цикла, вот код, которыйЯ использую прямо сейчас.

for(int i=0; i<=2; i++){
        Select skill = new Select(m1.findElement(By.xpath(".//select[@id='skill']")));
        skill.selectByValue(skills);
        Select proficiency = new Select(m1.findElement(By.xpath(".//select[@name='proficiency']")));
        proficiency.selectByValue("3");
        m1.findElement(By.xpath(".//button[@id='addskill']")).click();
        Thread.sleep(2000);

1 Ответ

0 голосов
/ 11 февраля 2019

Если вы хотите добавить другое значение раскрывающегося списка 3 раза, используйте dropdown.selectByIndex (index).

Select skill = new Select(m1.findElement(By.xpath(".//select[@id='skill']")));
Select proficiency = new Select(m1.findElement(By.xpath(".//select[@name='proficiency']")));

for(int i = 1; i <= 3; i++){      
    skill.selectByIndex(i);
    proficiency.selectByIndex(i);
    m1.findElement(By.xpath(".//button[@id='addskill']")).click();
    Thread.sleep(2000);
}

ИЛИ

  1. Для случайного выбора значения в выпадающих элементах. Высначала нужно знать, сколько предметов в выпадающем списке.
    Select skill = new Select(m1.findElement(By.xpath(".//select[@id='skill']")));
    List<WebElement> listOptionDropdown = skill.getOptions();
    int dropdownCount = listOptionDropdown.size();


    Select proficiency = new Select(m1.findElement(By.xpath(".//select[@name='proficiency']")));
    List<WebElement> listOptionDropdown1 = skill.getOptions();
    int dropdownCount1 = listOptionDropdown1.size();


    for(int i = 1; i <= 3; i++){  

        int random = (int)(Math.random());
        random = random*dropdownCount +1;   
        skill.selectByIndex(random);
        int random1 = (int)(Math.random());
        random1 = random1*dropdownCount1 +1;  
        proficiency.selectByIndex(random1);
        m1.findElement(By.xpath(".//button[@id='addskill']")).click();
        Thread.sleep(2000);
    }

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...