selenium實戰:登入網站
阿新 • • 發佈:2021-08-12
實現功能如下:
1. 通過id定位,使用者名稱輸入框、密碼輸入框、登入按鈕
2. 登入後實現一個xpath索引定位
程式碼如下:
import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import java.util.concurrent.TimeUnit; public class LoginCnBlogs { publicstatic void main(String[] args) { //指定chrome驅動 System.setProperty("webdriver.chrome.driver", "C:\\drivers\\chromedriver.exe"); //呼叫Login方法 Login(); } /** * 登入CNBlogs */ public static void Login() { WebDriver driver = new ChromeDriver(); String Url2= "https://home.cnblogs.com/set/profile"; driver.get(Url2); driver.manage().window().maximize(); driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS); //通過id定位使用者名稱輸入框,並輸入使用者名稱 WebElement name = driver.findElement(By.id("mat-input-0")); name.sendKeys("username"); //通過id定位密碼輸入框,並輸入密碼 WebElement PassWord = driver.findElement(By.id("mat-input-1")); PassWord.sendKeys("password"); //通過id定位密登入按鈕,並點選登入 WebElement login = driver.findElement(By.tagName("button")); login.click(); //登入後如果需要定位,一定要頁面等待,否則會報錯 try { //頁面等待 Thread.sleep(10000); } catch (InterruptedException e) { e.printStackTrace(); } //索引定位ul下多個同等級的li,選擇第4個 WebElement option = driver.findElement(By.xpath("//ul[@class = 'app_list']/li[4]")); option.click(); } }