我是 Web 自动化的新手,我想从一个简单的问题开始。
我正在 Chrome 中使用 Selenium Webdriver。我测试的每个页面上都有一个按钮:
<button class="next_btn btn green">Btn</button>
我第一次必须编写以下语法才能使其正常工作:
driver.findElement(By.xpath("//button[contains(.,'Btn')]")).click();
其他 xpath 不起作用。下次我不得不使用这个:
driver.findElement(By.xpath("//*[@id=\'formtop\']/div/form/div/fieldset[2]/div[2]/button[2]")).click();
下一页上的相同按钮将不接受任何内容。
我试过了:
WebElement stupidBtn = driver.findElement(By.xpath("//*[@id=\'formtop\']/div/form/div/fieldset[3]/div[2]/button[2]"));
stupidBtn.click();
driver.findElement(By.xpath("//*[@id=\'formtop\']/div/form/div/fieldset[3]/div[2]/button[2]")).click();
WebElement stupidBtn = driver.findElement(By.xpath("//*[@id=\'formtop\']/div/form/div/fieldset[3]/div[2]/button[2]"));
JavascriptExecutor executor = (JavascriptExecutor) driver;
executor.executeScript("arguments[0].click();", stupidBtn);
WebElement stupidBtn = driver.findElement(By.id("//*[@id=\'formtop\']/div/form/div/fieldset[3]/div[2]/button[2]"));
Actions buildAct = new Actions(driver);
buildAct.moveToElement(stupidBtn).click(stupidBtn);
buildAct.perform();
driver.findElement(By.cssSelector("#formtop>div>form>div>fieldset:nth-child(3)>div.multiform_buttons>button.next_btn.btn.green")).click();
一般来说,我想知道我不明白什么以及为什么我不能总是使用与 Katalon Automation Recorder 中相同的语法。不幸的是,KAR 无法满足我的所有需求。
相关分类