我是硒的新手。
我正在使用Facebook页面并尝试在“注册类别”下的“手机号码或电子邮件”字段中输入“john”
当我运行应用程序时,在“电子邮件或电话”字段中输入文本“john”。这是在现有用户类别下。
以下是我正在使用的 xpath 。我知道我可以使用其他定位器,但想尝试xpath定位器。
WebElement mobile = driver.findElement(By.xpath("//div[@id='reg_form_box']/div[2]/div[1]/div[1]/div[1]"));
mobile .sendKeys("john");
答案 0 :(得分:0)
嗨,Shakeer Mirza尝试使用以下代码
<强>的xpath(“HTML /体/格[1] / DIV [2] / DIV [1] / DIV / DIV / DIV / DIV / DIV [2] / DIV [2] / DIV / DIV / DIV / DIV [1] /形式/ DIV [1] / DIV [2] / DIV [2] / DIV / DIV [1] /输入“))强>
示例脚本:
公共类Facebook { 静态WebDriver驱动程序;
@Test
public static void test() throws IOException, InterruptedException {
driver = new FirefoxDriver();
driver.get("https://www.facebook.com/");
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
driver.manage().window().maximize();
driver.findElement(By.xpath("html/body/div[1]/div[2]/div[1]/div/div/div/div/div[2]/div[2]/div/div/div/div[1]/form/div[1]/div[2]/div[2]/div/div[1]/input")).sendKeys("admin");}}
答案 1 :(得分:0)
您尝试处理<div>
元素,而目标应为<input>
。请尝试以下选择确切元素:
WebElement mobile = driver.findElement(By.xpath('//input[@placeholder="Email or Phone Number"]'));
mobile .sendKeys("john");
答案 2 :(得分:0)
感谢所有人,当我在最后添加输入时,这是正常工作
WebElement mobile = driver.findElement(By.xpath(“// div [@ id ='reg_form_box'] / div [2] / div [1] / div [1] / div [1] / input”) );
mobile .sendKeys("john");
现在我的问题是,当我没有添加“输入”时,应用程序在错误字段上输入文本而不是抛出一些错误。