0

在 Snapdeal 中,当我将鼠标悬停到 Sign In 并单击 login 时,它正在打开注册对话框,当我尝试登录并单击 google Sign in 时,它正在单击,正在打开电子邮件对话框,但没有找到电子邮件文本框的元素它不接受任何值,也没有找到下一个按钮的元素。我正在使用 selenium java 和黄瓜框架。

 @When("The user  selects that particular account linked with snapdeal")
    public void the_user_selects_that_particular_account_linked_with_snapdeal() {
    WebElement Email = driver.findElement(By.xpath("/html/body/div[1]/div[1]/div[2]/div/div[2]/div/div/div[2]/div/div[1]/div/form/span/section/div/div/div[1]/div/div[1]/div/div[1]/input"));
       Email.sendKeys("ap3570801@gmail.com");
    
    l1=new LoginPojo();
            btnClick(l1.getNext());
    @FindBy(xpath = "//span[contains(text(),'Next']")
    private WebElement Next;
    public WebElement getNext() {
    return Next;
    }
4

1 回答 1

1

Gmail输入字段位于新窗口中。你需要像这样切换到窗口

   // on clicking on google Sign in button, you need to switch like this :- 
   ArrayList<String> allWindowsHandles = new ArrayList<String>(driver.getWindowHandles());
   driver.switchTo().window(allWindowsHandles.get(1));
   
   // here your code, to send keys to input
于 2021-08-19T08:12:08.037 回答