Как сгенерировать инкрементный номер версии с помощью sendkeys - PullRequest
0 голосов
/ 08 января 2019

Я тестирую веб-сайт .gov и хочу добавить увеличивающийся номер версии в мой java-скрипт. На веб-сайте не может быть повторяющихся записей названия учетной записи или номеров версий.

Я искал в Google и YouTube, но ничего не могу найти код, который я сейчас использую:

    driver.findElement(By.xpath("//input[@name='title']")).sendKeys("e2e01");

Приведенный выше код вводится в e2e01. Я бы хотел, чтобы мой код увеличивал номер версии на +1 при каждом запуске сценария или генерировал случайное число в конце e2e, чтобы оно перешло на e2e02, затем e2e03 и т. Д. .

Ответы [ 2 ]

0 голосов
/ 08 января 2019

Привет Это код, который вы можете конвертировать в Java, который я сделал для Python для вашей справки.

from selenium import webdriver
import traceback
from builtins import str
from robot.utils.error import Throwable

driver = webdriver.Ie("C:/automation/config/IEDriverServer.exe")
driver.get("https://www.w3schools.com/")
driver.maximize_window()
driver.find_element_by_xpath("/html/body/div[5]/div/a[1]/i").click()
test=True;
loopCounter=0;
try:
    while (test):
    loopCounter += 1
    if (loopCounter == 20):
        test=False
        break
    else:
        driver.find_element_by_css_selector("#gsc-i-id1").send_keys("e2e" + str(format(loopCounter, '02d')))
        driver.find_element_by_css_selector("#gsc-i-id1").clear()

except :
    Throwable(traceback)
0 голосов
/ 08 января 2019

Я предлагаю вам создать файл XML, который будет служить поставщиком данных для вашего теста. При каждом запуске он увеличивает номер и обновляет файл XML:

<?xml version="1.0" encoding="UTF-8"?>
<vars>
  <counter>1</counter>
</vars>

Функция увеличения значения:

int incrementCounter() {
   int counter = loadValueFromXML();
   counter++;
   incrementValueInXML();
}

А в тебе отправляют ключи:

driver.findElement(
By.xpath("//input[@name='title']")).sendKeys("e2e0" + Integer.toString(incrementCounter()));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...