如何存储文本字段值并在以后检索它 - Selenium Web Driver使用Java

时间:2014-05-01 06:58:37

标签: java selenium selenium-webdriver

需要您的帮助,使用Java进行Selenium Webdriver编码。

我有一个场景,我在其中创建课程名称并将其提交到数据库,然后我需要按照我创建的名称搜索课程。 只需要工作流程; 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 个答案:

答案 0 :(得分:0)

你可以做一些事情:

String course = "My Curriculum" + genData.generateRandomAlphaNumeric(10);
driver.findElement(By.id("Text1")).sendKeys(course); 
  

稍后您可以在代码中的任何位置使用存储的变量。

答案 1 :(得分:0)

您可以将值作为属性存储在类中,如果它不能解决您的问题,您可以序列化该值以在需要时恢复。