日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

selenium编写脚本_Selenium脚本编写技巧和窍门

發布時間:2023/12/3 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 selenium编写脚本_Selenium脚本编写技巧和窍门 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

selenium編寫腳本

如果您剛剛開始學習Selenium,則以下技巧和竅門將成為您的救星。 這些技巧和竅門具有您可能會忘記的所有基本知識,將幫助您記住所有這些。 您只需瀏覽一次,幾秒鐘后您便會了解所有內容。 讓我們一一看一下所有的技巧和竅門。

  • 創建Webdriver實例的最佳方法

您可以使測試通用。 第一步是通過傳遞配置文件中的值來初始化瀏覽器。 您可以將一個鍵作為瀏覽器,并將值作為Chrome,Firefox或IE。 然后,您可以根據傳遞給瀏覽器的值來初始化瀏覽器。 讓我們看看將要涉及的代碼。在此處添加段落文本。

public static WebDriver getBrowser(String browserName) { If(driver == null) { if(browserName.equals(“firefox”)) { driver = new FirefoxDriver(); } else if(browserName.equals(“Chrome”)) { driver=new ChromeDriver(); } else if(browserName.contains(“IE”)) { driver=new InternetExplorerDriver(); } } return driver; }
  • 檢查元素是否存在的最佳方法

如果必須檢查Web應用程序中是否存在某個元素,則可以通過獲取Web元素的大小然后檢查它是否大于零來輕松地做到這一點。

布爾值isElementExists = driver.findElements(By.xpath(“”))。size()> 0

  • 如何等待頁面完全加載?

有時,頁面需要花費一些時間來加載,因此您必須等待一段時間才能完全加載頁面。 為此,您必須首先檢查它是否正確裝入,然后可以對其進行任何其他操作。 您可以使用Javascriptexecutor檢查頁面是否完全加載。

wait.until(new Predicate < WebDriver > () {@Overridepublic Boolean waitPageLoaded(WebDriver driver) {return ((JavascriptExecutor) driver).executeScript("return document.readyState").equals("complete");}});
  • 如何使用Selenium Webdriver 截 屏 ?

有時,在執行過程中截取屏幕截圖以了解出了什么問題非常重要。 該死的說要用Selenium來做。 您可以擁有Selenium驅動程序,然后將其強制轉換為“截屏”界面。 創建它的一個實例,然后使用它來獲取屏幕截圖。 您可以使用工具包方法.getScreenshotAs,然后可以指定期望的屏幕截圖格式。

//將屏幕快照存儲在當前項目目錄中

字符串screenShot = System.getProperty(“ user.dir”)+“ \\ screenshottest.png”;

//廣播Webdriver來截取屏幕截圖

文件srcFile =(((TakesScreenshot)驅動程序).getScreenshotAs(OutputType.FILE);

//保存屏幕截圖

FileUtils.copyFile(srcFile,new File(screenShot));

  • 如何在Selenium Webdriver中 獲取Web元素HTML源 ?

Selenium WebDriver為您提供了一種名為getAttribute的方法,該方法將允許您獲取Web元素的內部HTML。 您可以通過首先獲取元素來實現。 之后,您可以使用getAttribute獲取Web元素的innerHTML。

字符串html = element.getAttribute(“ innerHTML”);

  • 如何使用“選擇類”選擇下拉選項?

在Selenium中,如果遇到任何下拉菜單,則可以使用select類在其中選擇任何選項。 您可以通過多種方式選擇選項。 其中一些方法包括按文本,索引和值進行選擇。

Select drp= new Select(Driver.findElement(By.xpath(“”));drp.deselectAll();drp.selectByVisibleText("selectLabel");
  • 如何在 Webdriver中 刷新網頁 ?

如果要刷新頁面,則可以使用Selenium Web驅動程序的navigation()方法。 然后,您可以使用refresh()方法實際刷新頁面,以便從頭開始初始化所有元素。

driver.navigate()。refresh();

  • 如何使用Selenium Webdriver 切換到新選項卡 ?

您可以使用Selenium Webdriver輕松切換到新選項卡。 首先要記住的是使用.getWindowHandles(),然后可以切換到具有所有窗口句柄的數組列表的第一個索引。

ArrayList<String> tabs = new ArrayList<String> (driver.getWindowHandles());driver.switchTo().window(tabs.get(0));
  • 如何在 Webdriver中 設置驅動程序可執行路徑 ?

對于瀏覽器,chrome和ie,您必須查看驅動程序可執行文件的路徑。 要設置路徑,您必須在Selenium中使用System.setProperty方法。 讓我們看看它的外觀。

File ieDriverPath = new File("path//iexploredriver.exe");System.setProperty("webdriver.ie.driver", ieDriverPath.getAbsolutePath());WebDriver driver = new InternetExplorerDriver();
  • 如何切換到新的彈出窗口?

如果要切換到打開的特定窗口,則可以先getAllWindowHandles(),然后使用driver.switchTo()方法切換。

/ Get the current window handle.String hBefore = driver.getWindowHandle();// action which opens lot of windows.// Switch to new windows.for(String hNew: driver.getWindowHandles()){driver.switchTo().window(hNew);}// Close all new windows.driver.close();// Switch back to first window.driver.switchTo().window(hBefore);

但是如果萬一,您想專門切換到特定窗口。 您可以獲取一個Web元素,并在特定窗口中查看它的可見性。 如果存在,則可以切換到它。

/ Get the current window handle.String hBefore = driver.getWindowHandle();// Click to open new windows.// Switch to window which has a webelement attached to itfor(String hNew: driver.getWindowHandles()){If(driver.findElements(By.xpath(“”)).size()>0){driver.switchTo().window(hNew);}}// Close all new windows.driver.close();// Switch back to first window.driver.switchTo().window(hBefore);
  • 如何單擊一個不可見的復選框?

在許多情況下,您想要單擊的復選框不可見,很遺憾,您無法單擊該復選框。 您必須先啟用它,然后才能實際單擊它。 如果您不啟用它,則會出現異常,例如“元素當前不可見,因此可能無法與之交互。”

可以使用Java腳本執行器啟用它,以便Selenium可以單擊它。 代碼段如下:

((JavascriptExecutor)driver).executeScript("arguments[0].checked = true;", checkbox);
  • 如何在Selenium Webdriver中進行鼠標懸停動作?

如果要將鼠標懸停在Web元素上,則可以使用Actions()類進行處理。 您可以依次使用函數moveToElemenet(),build()和perform()在Web元素上執行鼠標懸停操作。

Actions action = new Actions(driver);WebElement item = driver.findElement(By.xpath(""));action.moveToElement(item).moveToElement(driver.findElement(By.xpath("")) ).click().build().perform();
  • 如何在運行測試腳本之前刪除Cookies?

有時在運行測試腳本之前清除所有cookie是非常重要的。 您可以使用driver.manage()的DeleteAllCookies方法方法。

代碼片段如下:

this.driver.Manage()。Cookies.DeleteAllCookies();

另外,如果您有一個具有特定名稱的Cookie,則可以使用以下方法將其刪除:manage()類的DeleteCookiesNames。

this.driver.Manage()。Cookies.DeleteCookieNamed(“ CookieName”);

  • 如何在測試腳本中最大化窗口?

有時,您需要以全窗口大小和分辨率測試腳本。 您可以通過使用驅動程序實例的manage()方法輕松完成此操作。 然后,您可以使用window()方法,然后使用maximum()方法將窗口放大到最大大小。

代碼段如下:

public void MaximizeWindow(){this.driver.get(“");this.driver.Manage().Window().Maximize();}

因此,有一些重要的技巧可以幫助您進行Selenium測試。 如果您牢記這些,則可以在“自動化測試”中編寫腳本時解決大部分問題。 因此,使用它們可以節省您的時間。 祝一切順利!!

翻譯自: https://www.javacodegeeks.com/2019/09/selenium-scripting-tips-tricks.html

selenium編寫腳本

總結

以上是生活随笔為你收集整理的selenium编写脚本_Selenium脚本编写技巧和窍门的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。