元素定位_css_js_frame_窗口

如果用class定位,class的名稱包含空格,那麼要把空格改成.

class和id的方式可以一起使用如:  #top-ida.top-classa

 

使用屬性定位也可以用:      [role="search"][name="word"]

 

---------------------------------js調試-------------------------------------

在console界面可以輸入代碼:

$('#birthday').unbind()   去掉彈窗

java代碼如下:

//輸入框無法sendkeys鼠標點不到,需要用Js去掉輸入框的點擊綁定事件,然後輸入
        JavascriptExecutor js = (JavascriptExecutor)driver;
        js.executeScript("$('#birthday').unbind();");

-------------------------------iframe切換------------------------

//切換frame
        driver.switchTo().frame(0);//使用索引切換
        driver.switchTo().frame("ptlogin_iframe");//id
        //先定位frame,然後用元素對象
        WebElement iframe = driver.findElement(By.cssSelector("iframe[frameborder='0']"));
        driver.switchTo().frame(iframe);
        
        //切換完畢操作完成後,要切換回原來的
        driver.switchTo().defaultContent();

 

---------------------------多窗口切換--------------------------------------

------------------隱士等待-------------------------------

//只針對webelement
        driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);

-------------------------顯示等待-------------------------------------

//WebDriverWait wait = new WebDriverWait(driver, 20);
        //元素是否出現
        //wait.until(ExpectedConditions.presenceOfElementLocated(By.name("new_name")));
        //元素可用
        //wait.until(ExpectedConditions.visibilityOfElementLocated(By.name("new_name")));

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章