Maven硒测试自动化教程
在進行測試自動化項目時,您需要與之關聯的所有Selenium依賴項。 通常,這些依賴項是在項目生命周期中手動下載和升級的,但是隨著項目規模的擴大,管理依賴項可能會非常困難。 這就是為什么需要構建自動化工具(例如Maven)來自動處理它們的原因。
Maven可以更明確地定義為使用項目對象模型(POM)概念的軟件項目管理工具。 它使用戶可以創建初始文件夾結構,執行編譯和測試,然后打包和部署最終產品。 它有效地減少了構建過程中遵循的幾個步驟,而使構建成為一個一步的過程。
在這個Selenium Maven教程中,我將解釋Maven是什么以及為什么Maven作為構建自動化工具很重要。 此外,在本Selenium Maven教程中,我將向您展示如何為Selenium測試自動化項目安裝Maven,以及如何運行您的第一個項目。
為什么要使用Maven?
Maven在管理項目生命周期中扮演著至關重要的角色,通常包括驗證,代碼生成,編譯,測試,打包等等。 它是一個軟件構建工具,可以分階段工作,而不是任務(例如Ant)。 它基本上用于管理項目的生命周期。 Maven使構建管理過程更加容易,因為您只需要在pom.xml文件中指定依賴項,其余的工作將由Maven負責!
使用Maven的一些關鍵原因是:
- 它簡化了構建過程并提供了統一的系統
- 它有效地處理了編譯,分發,依賴管理和其他任務。
- 它提高了可重用性。
- 它減少了將jar文件添加到項目庫,構建報告,執行Junit測試用例,創建jar / war / ear文件進行部署的步驟。
- 它具有一個集中管理jar文件的存儲庫。
現在我們知道為什么要使用Maven了,讓我們在這個Selenium Maven教程“什么是Maven”中探討一個更大的問題。
為什么需要用于Selenium自動化測試的構建自動化工具?
讓我們深入學習
到現在為止,您已經有了Maven是用于管理項目依賴項和整個項目生命周期的構建自動化工具的想法。 Maven由Apache Software Foundation構建,主要用于Java項目。 它最初是為了使Jakarta Turbine Project的構建過程更加簡單而開發的,現在已廣泛用于使構建過程變得簡單而統一。
Maven可以更明確地定義為使用項目對象模型(POM)概念的軟件項目管理工具。 它使用戶可以創建初始文件夾結構,執行編譯和測試,然后打包和部署最終產品。 它有效地減少了構建過程中遵循的幾個步驟,而使構建成為一個步驟的過程。
您應該了解此Selenium Maven教程的一些關鍵術語:
Maven本地存儲庫:這是開發人員機器中的本地存儲庫,其中包含所有項目工件。 在執行Maven構建時,所有與項目相關的jar都將下載到本地存儲庫中。
Maven中央存儲庫:這是Maven官方的每個新項目中的默認存儲庫。 每當本地存儲庫中不存在任何依賴項時,Maven都會自動咨詢中央存儲庫以進行下載。
項目對象模型: POM XML包含Maven構建使用的項目信息和配置詳細信息。 它位于每個項目的根目錄中。 一個示例POM如下所示:
依賴關系: Java項目所依賴,運行或構建的任何庫都稱為依賴關系。 示例:Log4j jar,Apache Poi jar,Selenium Jar等。pom.xml中提到了相關性,如下所示:
Surefire插件:要在構建生命周期的測試階段執行應用程序的單元測試,可以使用Surefire插件。 surefire報告有兩種文件格式,即純文本文件(.txt)和XML文件(.xml)。 這個插件是必須使用的,因為它即使在使用TestNG或Junit框架時也可以幫助Maven識別測試。
Selenium Java測試:頁面對象模型
如何在Windows中安裝Maven?
可以通過命令行或Eclipse IDE安裝Maven。 我們將首先逐步介紹如何通過Eclipse IDE安裝它。
如何在Eclipse IDE中安裝Maven?
在Eclipse中安裝Maven非常簡單,涉及以下步驟:
步驟1:從Eclipse頂部菜單中單擊“幫助”,然后選擇“安裝新軟件”。
第2步:在新打開的窗口中,單擊添加按鈕。
步驟3:在名稱文本框中,鍵入“ Maven”,在位置文本框中,鍵入“ http://download.eclipse.org/technology/m2e/releases/”。 該URL是可以從中下載Maven的位置。
步驟4:一個復選框將出現在彈出窗口中,選中該復選框并單擊Next(下一步)按鈕。
步驟5:等待幾分鐘,以使窗口完成其過程。
步驟6:保留默認設置,然后單擊“下一步”按鈕。
步驟7:接受條款和條件,然后單擊Finish。
步驟8:等待安裝完成。
步驟9:安裝完成后,它將要求您重新啟動Eclipse。 單擊是,以查看所反映的更改。
繁榮! 就是這個。 現在,您已成功將Maven安裝到Eclipse IDE。
萬一您想通過命令行進行其他安裝,請按照以下步驟操作。
如何通過命令行安裝Maven?
這是此Selenium Maven教程中通過命令行安裝Maven的步驟:
步驟1:下載并安裝Java
您需要在系統中安裝Java(如果尚未安裝)。 可以從此鏈接下載最新版本的Java。
要檢查系統的Java版本,請運行并鍵入'cmd'以啟動命令提示符。 鍵入“ Java -version”,然后按Enter鍵以查看安裝了哪個Java版本。
步驟2:設定Java環境變數
安裝Java之后,設置Java環境變量。 打開系統設置以設置Java環境變量。
步驟3:下載Maven并設置Maven環境變量
https://Maven.apache.org/download.cgi
步驟4:更新路徑變量
為了從命令行運行Maven,我們必須使用Maven的安裝目錄“ bin”更新路徑變量。
步驟5:測試Maven安裝
現在,Maven已成功安裝在您的系統中。 現在讓我們從Windows命令行進行驗證。 打開命令提示符,然后鍵入mvn -version,然后按Enter。 檢查結果中是否顯示了系統中安裝的Maven版本。
現在,您已經完成了Maven安裝的準備,可以繼續使用Maven創建項目。
創建您的第一個Maven項目
就像我們在Selenium Maven教程前面討論的Maven安裝一樣,您也可以通過Eclipse IDE或命令行創建Maven項目。
使用Eclipse IDE創建Maven項目
以下是使用Eclipse IDE創建Maven項目的步驟:
步驟1:從Eclipse IDE創建一個新項目。
步驟2:在新項目窗口中,展開Maven并選擇Maven Project,然后單擊Next。
步驟3:您可以創建一個簡單的項目,也可以放開該選項。 現在,我們將使用一個簡單的項目,該項目將創建一個簡單的啟用Maven的Java項目。
步驟4:現在,單擊Next(下一步),您將需要輸入創建Maven項目的信息。 您可以參考以下說明來填寫值:
組ID-與您的組織名稱相對應。
工件ID-指項目名稱。
版本可以靈活選擇。 如果您的項目沒有任何父項依賴項,則無需填寫項目依賴項。 只需填寫適當的信息,然后單擊“完成”即可。
步驟5:您的Maven項目現已創建!
注意: Java代碼放在/ src / main / java中,資源放在/ src / main / resources中,測試代碼放在/ src / test / java中,測試資源放在/ src / test / resources中。
步驟6:您現在可以打開pom.xml來查看Maven設置的結構。 您將在此處看到我們在“第4步”中輸入的所有信息。 您可以使用底部的標簽來更改視圖。 pom.xml選項卡包含Maven項目的pom XML代碼。
Maven項目現在可以使用了。
接下來,讓我們看看如何使用命令行創建Maven項目。
步驟1:打開命令提示符,然后導航到要在其中設置項目的文件夾。 瀏覽后,鍵入以下命令:
mvn原型:generate -DgroupId = demoProject -DartifactId = DemoMavenProject -DarchetypeArtifactId = Maven-archetype-quickstart -DinteractiveMode = false
在這里,DgroupId是組織名稱,DartifactId是項目名稱,DarchetypeArtifactId是Maven項目的類型。
單擊Enter后,將創建您的Maven項目。
步驟2:您可以轉到項目位置查看新創建的Maven項目。 您可以打開項目文件夾中的pom.xml文件,默認情況下,生成的POM如下所示:
步驟3:您可以查看Maven項目的默認文件夾結構。
現在我們知道如何創建Maven項目,讓我們嘗試將Selenium與Maven集成。 但是在我們這樣做之前,我們需要了解各種有助于這種集成的依賴關系。
Selenium Maven對您的自動化項目的依賴
項目中使用的所有外部庫都稱為依賴項。 Maven具有出色的功能,可以從其中央存儲庫自動下載所需的庫,這使您無需在本地存儲它們變得很容易。 下面是在pom.xml中編寫Selenium Maven依賴項的示例:
<dependency> <groupId>org.Seleniumhq.Selenium</groupId> <artifactId>Selenium-java</artifactId> <version> 4.0 . 0 -alpha- 1 </version> </dependency>添加上述Selenium Maven依賴項后,Maven會將Selenium Java庫下載到我們的本地Maven存儲庫中。
可以根據需求將另一個Selenium Maven依賴項添加到pom.xml中。 您在我們的Selenium項目中可能需要使用的幾個示例是:
TestNG Selenium Maven依賴性:
這將導入Java的測試框架依賴性。
<dependency> <groupId>org.testng</groupId> <artifactId>testng</artifactId> <version> 6.14 . 3 </version> <scope>test</scope> </dependency>您的第一個TestNG自動化腳本的完整指南
Apache POI Selenium Maven依賴項:
這將下載訪問Microsoft格式文件所需的庫。
<dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>3.17</version> </dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>3.17</version> </dependency>您可以在pom.xml中添加這些Selenium Maven依賴項,如下所示:
<project xmlns="http://Maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://Maven.apache.org/POM/4.0.0 http://Maven.apache.org/xsd/Maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>organisationName</groupId><artifactId>myDemoProject</artifactId><version>0.0.1-SNAPSHOT</version><dependencies><dependency><groupId>org.Seleniumhq.Selenium</groupId><artifactId>Selenium-java</artifactId><version>4.0.0-alpha-1</version></dependency><dependency><groupId>org.testng</groupId><artifactId>testng</artifactId><version>6.9.10</version><scope>test</scope></dependency></dependencies></project>如果您想驗證這些Selenium Maven依賴項如何導入所需的庫,則必須返回到演示項目并查看默認情況下存在哪些庫。 為此,您需要右鍵單擊您的項目名稱并為您的項目配置構建路徑,然后在新打開的窗口的“庫”選項卡下進行檢查:
在這里,您可以看到此Selenium Maven教程的項目中存在的默認庫。
為了更清晰地了解,我將創建一個示例類以使用Selenium組件和一些testNG注釋。 請注意,我將在項目結構的src / test / java文件夾下創建示例測試類。 您可以在下面清楚地看到在添加庫之后可以進行錯誤糾正。
因此,現在,而不是通過在Selenium Maven教程中配置項目構建路徑來手動添加庫,我將在pom.xml中編寫項目的依賴項,Maven將直接從其存儲庫中下載依賴項。 這樣可以省去手動操作的麻煩,并減少了錯過添加某些廣口瓶的機會。 因此,這是添加依賴項的方法:
在添加Selenium Maven依賴項之前的pom.xml:
添加Selenium Maven依賴項后的Pom.xml:
保存并刷新項目后,檢查構建路徑,并查看正在添加Selenium Maven依賴項的Selenium和testNG庫。
另外,您現在可以進入測試類,查看不同的選項來更正此Selenium Maven教程中引發的錯誤:
您只需導入WebDriver,就可以了。 同樣,對于@Test注釋,只需導入testng.annotations。
您可以添加更多依賴項,例如apache POI,范圍報告,公共電子郵件,或以類似于pom.xml的方式特定于項目的任何依賴項。
現在我已經完成了配置項目的工作,我將運行項目以查看測試是否正常。
硒中的Maven生命周期
Selenium中有一個Maven生命周期,每個Maven構建都遵循該生命周期。 不同的方法只是目標。 在繼續之前,我將解釋這些目標是什么。
在系統中打開命令行,然后鍵入mvn,然后按Enter。
您會看到Build失敗消息,顯示錯誤,指出此Selenium Maven教程中尚未定義目標。 在解析此消息時,您會看到可以為我們的Maven項目定義的不同目標。 在詳細介紹Selenium項目所需的目標之前,我將快速瀏覽這些默認目標。
在上述默認目標中,三個對于Selenium測試自動化至關重要。 有清潔,安裝和測試。
您可以單獨使用這些目標,也可以結合使用它作為本Selenium Maven教程的全新安裝。
清理-它將清理目標文件夾,即先前版本的庫,版本文件(war,tar或jar文件),報告,輸出文件等保存在其中的文件夾。 在執行mvn -clean時,此目標文件夾將被刪除。
Install-這將安裝所有的依賴關系,在失蹤罐的情況下,以及(在Java中的情況下,戰爭/ jar文件)創建部署文件,然后它會運行測試。
測試-它只會運行測試,而無需創建任何部署文件。
使用Eclipse IDE時,可以通過右鍵單擊pom.xml,然后以“運行方式”并選擇任何選項來直接使用這三個目標中的任何一個。
Maven清潔
在此Selenium Maven教程中,我將從選擇Maven clean開始,您可以看到以下輸出:
因此,清理(刪除目標文件夾)的任務已成功完成,因此構建成功。
Maven安裝
在執行第二個安裝任務之前,您需要添加一個名為Maven Compiler插件的插件,否則將無法完成Selenium測試自動化構建。 該插件用于標識編譯器的特定位置。 您可以在pom.xml中添加以下插件,并在執行Maven安裝之前刷新項目。
<build><plugins><plugin><groupId>org.apache.Maven.plugins</groupId><artifactId>Maven-compiler-plugin</artifactId><configuration><compilerVersion>1.5</compilerVersion><source>1.5</source><target>1.5</target></configuration></plugin></plugins></build>添加此片段后,您的pom.xml將如下所示:
現在,就像在此Selenium Maven教程中對Maven Clean所做的一樣,轉到Maven安裝,并觀察構建安裝的控制臺輸出:
您可以在控制臺輸出中看到Maven安裝程序也執行了測試。 要查看本地系統中已安裝的目錄,請刷新項目并查看生成的目錄。 在下面的快照中,您可以看到由于Maven安裝而生成的所有文件(由于這是一個簡單的JAVA程序,因此也生成了jar文件)。 您可以直接共享此jar文件,以供其他人執行。
Maven測試
同樣,我們可以在Selenium Maven教程中進行Maven測試 ,并在控制臺中查看構建結果:
上面的步驟顯示了如何通過Eclipse IDE來執行執行,但是實時項目執行主要是通過命令行完成的,因此現在我們將從命令行使用這些目標。 在繼續執行這些任務之前,請確保您當前在cmd中的工作目錄指向本地工作區位置。 如果不這樣做,我們的Maven命令將無法找到所需的pom.xml,因此我們的Selenium測試自動化構建將失敗。
首先讓我們使用Selenium Maven教程中的命令提示符進行Maven Clean。 我們只需要寫“ mvn clean”:
您會看到目標文件夾被刪除。 本Selenium Maven教程的下一步是執行Maven安裝,方法是在命令提示符下鍵入“ mvn install”。
您可以看到控制臺輸出幾乎與Eclipse執行時的輸出相似。 現在讓我們通過鍵入“ mvn test”執行Maven測試,這將導致執行該測試而無需構建jar文件。
現在您已經知道執行自動化測試的基本目標,現在可以通過Maven運行自動化腳本了!
Maven Surefire插件
到目前為止,您已經在Selenium Maven教程中的控制臺輸出日志中閱讀了很長時間,所以我將對此進行一些說明。 surefire插件可幫助Maven識別測試,并與構建項目的框架一起使用。 要將Surefire插件添加到pom.xml中,請使用以下代碼片段:
<properties> <suiteXmlFile>src/main/resources/testng.xml</suiteXmlFile> </properties><build> <plugin> <groupId>org.apache.Maven.plugins</groupId> <artifactId>Maven-surefire-plugin</artifactId> <version>2.17</version> <configuration> <suiteXmlFiles> <suiteXmlFile>${suiteXmlFile}</suiteXmlFile> </suiteXmlFiles> </configuration> </plugin> </build>您的pom.xml應該如下所示:
在這里,我將src / main / resources中的testng.xml放入其中,從而在屬性中給出其路徑。
現在,我將在此Selenium Maven教程中從Eclipse運行Maven測試,并查看結果:
現在,您可以檢查默認情況下生成的報告,并且可以通過在命令提示符下鍵入“ mvn test”來執行此套件,以類似的方式進行檢查。
另請閱讀:使用IntelliJ和Maven使用硒化物進行硒測試
總而言之
在本Selenium Maven教程中,我探討了Maven作為構建自動化工具如何使您的項目更好地管理Selenium Maven依賴項。 使用Maven,您無需擔心安裝和升級項目庫,因為它們是使用該工具自動完成的。 現在,您知道如何使用Eclipse IDE和命令行在系統中安裝Maven。 我還解釋了如何在Eclipse中創建Maven項目。 另外,我經歷了Maven生命周期,使用的目標,然后運行了Maven項目。
這幾乎總結了您在本Selenium Maven教程中開始使用Maven所需了解的一切。 如有任何疑問或疑問,請與我們聯系。 另外,如果您能幫助我們分享這篇文章并轉推,我將不勝感激。 目前為止就這樣了。 測試愉快!!! 😊
翻譯自: https://www.javacodegeeks.com/2020/05/maven-tutorial-for-selenium-test-automation.html
總結
以上是生活随笔為你收集整理的Maven硒测试自动化教程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 10英寸是多少寸 10英寸的介绍
- 下一篇: 10kg是多少斤 10kg对应的斤数