這里沒有概念,只有一步一步的實踐。
對于什么是Maven,什么是TestNG,什么是Jenkins,請自學~~
創建Maven項目
新建一個Maven項目:
File -> New -> Project -> Maven -> Check "Create from archetype" -> Choose "mave-archetype-quickstart"。
填寫"Name","Location","GroupId","ArtifactId","Version"(都是自定義的)。
"User settings file"和"Local repository"的路徑都可以自定義,它們各自是用來干啥的,請自學。
創建完成后,可以看到這樣的一個example的maven project。
寫測試的過程中,必然會用到很多依賴,比如selenium。
添加依賴:
Code -> Generate -> Dependency
選擇"Dependency"。
在"Search for artifact"輸入所需依賴的名稱,選中相應的版本進行添加。
"selenium-java"的依賴就被添進了pom.xml中。
添加完成后,需要點擊右上角帶"m"字樣的圖標,相應的依賴才會被下載到本地。
同步完成后,可以看到相應的Libraries被添加到本地。
相應的文件可以在前邊步驟設置的"Local repository"路徑里找到,如果沒有改,默認是在".m2/repository/"路徑下。
TestNG例子
這里給出一個簡單的通過百度進行搜索的例子,里邊用到了TestNG的注解、參數化配置、自帶的Report,更多其他應用,需要根據實際項目進行有針對性地學習和應用。
代碼:
TestNG的配置文件例子。
Enable TestNG report的方法。
勾選"Use default reporters"選項。
執行測試之后,可以看到自動生成了"test-output"文件夾。
需要特別注意的是,由于用到了TestNG的參數化配置,執行測試的時候,需要右鍵testng.xml(也就是你自定義的TestNG的配置文件,這里只是我的例子中將配置文件命名為testng.xml)來執行測試。
通過訪問"index.html"文件,可以看到測試執行結果。
由于后面需要與Jenkins結合,所以,需要在pom.xml中"maven-surefire-plugin"下添加testng配置文件的信息。
Jenkins
1. Jenkins安裝和配置
下載"jenkins.war"文件。
https://www.jenkins.io/download/
在命令行輸入"java -jar jenkins.war"命令,啟動Jenkins。
當在terminal里看到"Jenkins is fully up and running",就可以在瀏覽器通過localhost:8080來訪問Jenkins。
頁面打開之后,需要你輸入管理員密碼(Administrator password),這個密碼從頁面上顯示的文件里獲得。
安裝Plugin。(如果不確定安裝什么plugin,選擇"Install suggested plugins"先安裝一些它建議的plugin就好。)
Plugin安裝好之后,會彈出創建管理員用戶的的界面,以后可以使用這個用戶進行登錄。
可以使用默認URL。
2. Jenkins安裝和配置
點"Manage Jenkins"對Jenkins進行配置。
選擇"Global Tool Configuration"。
添加Java和Maven的Home路徑。
選擇"Manage Plugins",安裝"Maven Integration plugin"。
安裝完畢會跳出等待頁面,稍等一會兒。
3.Jenkins與Maven項目集成
GitHub上生成新token。
"Settings -> Developer settings -> Personal access token -> Generate new token"。
勾選"repo"和"admin:repo_hook"。
把生成的token保存到本地,因為再次進到這里,就看不見了,后邊會用到這個token。
到指定的項目中。
"Settings -> Webhooks -> Add webhook"。
輸入Payload URL。
http://<Jenkins server IP>:8080/github-webhook/
回到Jenkins。
"Manage Jenkins -> Configuration System"。
添加GitHub server。
Name自定義,API URL默認,點擊"Add"添加Credential。
"Kind"選成"Secret text","Secret"部分將之前在GitHub上生成的token填寫進去。
將"Credentials"部分選成添加的Credential,然后點擊"Test connection"測試一下Jenkins跟GitHub的是否連接成功。
注意:默認Credentials部分選中的是"None",一定要手動改成自己創建的Credential。
新建構建項目。
"New item"。
自定義項目名稱,然后選擇"Maven project"。
"General"部分:
- 可以寫一些描述。
-
勾選"GitHub project",填寫項目所在的GitHub的URL。
13.png
"Source Code Management"部分:
- 選擇"Git"。
- "Repository URL"填寫項目的git地址。
- "Credentials"添加登錄GitHub的用戶名和密碼,并選擇所添加的Credential(默認選中的是"None")。
- "Repository browser"部分選擇"githubweb"。
-
"URL"部分填寫項目所在的GitHub的URL。
14.png
"Build Triggers"部分選擇在什么情況下進行trigger。
也可以通過規則,周期性地進行trigger。
"Build Environment"部分勾選"Use secret text(s) or file(s)"。
"Binding"部分:
"Add -> Secret text"。
"Credentials"部分選擇之前的secret text。
"Build"部分填寫pom.xml。
保存以上配置之后,進入所創建的構建項目,點擊"Build Now"。
相應的測試會在Build成功之后自動運行。
可以從"Console Output"看到整個過程的日志。