需要您的帮助,在Selenium Webdriver编码与Java。
我有一个场景,我创建了一个课程名称并将其提交到数据库,然后我需要按创建的名称搜索该课程。1.在文本框中键入课程名称(这里我随机生成一个字符串,这样它就不会被硬编码,我需要准确地检索我在这里键入的内容)2.存储键入的名称3.在搜索框中键入该名称
private void createCurriculum() throws InterruptedException {
selenium.open("http://url.com");
driver.findElement(By.id("Text1")).clear();
driver.findElement(By.id("Text1")).sendKeys("My Curriculum" + genData.generateRandomAlphaNumeric(10)); // Here I'm randomly generating the name, I need to retrieve what I type here in the next method
//String curName = driver.findElement(By.id("Text1")).getAttribute("value");
//I tried this but it didn't work
Thread.sleep(300);
}
private void searchCurriculum(String curName) throws InterruptedException {
selenium.open("http://url.com");
driver.findElement(By.xpath("//div/input")).sendKeys("curName"); // Here I want to retireve what I previously generated. It's not working
// . . .
另外,在main方法中,我也声明了变量。
public class TestCaseCreateCurriculum {
private Selenium selenium;
private WebDriver driver;
GenerateData genData;
public String curName;
// . . .
有人能帮我纠正这个代码吗?
修改后效果很好(感谢Vageesh Bhasin)
driver.findElement(By.id("Text1")).sendKeys(curName = "My Curriculum" + genData.generateRandomAlphaNumeric(10));
和
driver.findElement(By.xpath("//div/input")).sendKeys(curName);
2条答案
按热度按时间3qpi33ja1#
您可以执行以下操作:
以后你可以在代码的任何地方使用存储变量。
ecbunoof2#
您可以将值作为属性存储在类中,如果这不能解决您的问题,您可以序列化值,以便在需要时恢复。