《手把手教你》系列技巧篇(四十六)-java+ selenium自動化測試-web頁面定位toast-下篇(詳解教程)

巨集哥發表於2021-12-03

1.簡介

終於經過巨集哥的不懈努力,偶然發現了一個toast的web頁面,所以直接就用這個頁面來夯實一下,上一篇學過的知識-處理toast元素。

2.安居客

事先宣告啊,巨集哥沒有收他們的廣告費啊,純粹是為了學習和實戰的。

2.1被測網址

1.被測網址的地址:

https://login.anjuke.com/login/form?history=aHR0cHM6Ly9iZWlqaW5nLmFuanVrZS5jb20v

2.網頁如下圖:

2.2程式碼設計

2.3參考程式碼

package lessons;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;

/**
 * @author 北京-巨集哥
 * 
 * 《手把手教你》系列技巧篇(四十五)-java+ selenium自動化測試-web頁面定位toast-下篇(詳解教程)
 *
 * 2021年11月17日
 */
public class TestToast1 {
    
    public static void main(String[] args) throws InterruptedException {
            
            System.setProperty("webdriver.gecko.driver", ".\\Tools\\chromedriver.exe");
            WebDriver driver =null;
            try {    
                driver = new ChromeDriver();  
                 
                driver.manage().window().maximize();  
                      
                driver.get("https://login.anjuke.com/login/form?history=aHR0cHM6Ly9iZWlqaW5nLmFuanVrZS5jb20v");
                
                Thread.sleep(5000);
                
                driver.switchTo().frame("iframeLoginIfm");
                
                WebElement phoneIpt = driver.findElement(By.id("phoneIpt"));
                
                phoneIpt.sendKeys("13617831920");
                
                WebElement smsIpt = driver.findElement(By.id("smsIpt"));
                
                smsIpt.sendKeys("9999");
                
                driver.findElement(By.id( "checkagree" )).click();
                driver.findElement(By.id( "smsSubmitBtn" )).click();
                WebElement elementText = driver.findElement(By.className("toast"));//(加粗字型根據實際定位的元素資訊進行填寫)
                Thread.sleep(1000);
                String info = elementText.getText();
                System.out.println(info);
            } catch (Exception e) {
                e.printStackTrace();
            } finally{
                System.out.println("執行結束,關閉瀏覽器");
                driver.quit();
            }
    }

}

2.4執行程式碼

1.執行程式碼,右鍵Run AS->Java Appliance,控制檯輸出,如下圖所示:

2.執行程式碼後電腦端的瀏覽器的動作,如下小視訊所示:

3.小結

 要麼找不到,要麼找到了,就都出現了,巨集哥在這裡定位了好久頁面元素,可是執行程式碼報錯,找不到元素,結果檢視HTML發現,這裡有一個iframe,沒有切換所以死活定位不到,切換到iframe後,就定位成功了。

4.擴充套件

1.開啟瀏覽器,訪問頁面,在出現提示資訊的操作之前,按下F12,開啟開發者工具,點選小齒輪。如下圖所示:

2.按下F1(或者點選右上角的三個點出來設定),開啟設定頁面,如下圖所示:

3.操作頁面,讓提示資訊出現,然後馬上勾選Debugger欄下的Disabled JavaScript

4.這個時候提示資訊就不會消失了,該怎麼處理就怎麼處理

5.最後,記得改回去哦(去掉勾選)。

相關文章