MAC下基於maven使用IDEA走讀TestNG源碼解析
之前用Python執行程序都是python xxx.py
,最近在使用Java技術棧的TestNG,於是想能夠也用命令行實現…
創建一個Maven項目
確保已安裝瞭Maven,可使用Maven命令後,使用以下命令可快速創建Maven項目
mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.4 -DinteractiveMode=false
進入項目後,大概是下面的目錄結構:
. ├── pom.xml └── src ├── main │ └── java │ └── com │ └── mycompany │ └── app │ └── App.java └── test └── java └── com └── mycompany └── app └── AppTest.java
此時,AppTest.java應該還是使用Junit的,需要改成使用TestNG:
在pom.xml裡安裝TestNG
<dependency> <groupId>org.testng</groupId> <artifactId>testng</artifactId> <version>7.1.0</version> </dependency>
修改AppTest.java
裡相關註解是來自TestNG的repository
import org.testng.annotations.Test; import static org.testng.AssertJUnit.assertTrue;
配置testng.xml文件
在項目根目錄,新建testng.xml:
<?xml version="1.0" encoding="UTF-8"?> <suite name="Sample test Suite"> <test name="Sample test"> <classes> <class name="com.mycompany.app.AppTest" /> </classes> </test> </suite>
配置完testng.xml後,在idea裡鼠標右鍵這個文件也可以Run,Run的時候Console裡第一行會打印命令,其中我們需要知道的是 -classpath
的內容,後續要用到
命令行運行TestNG
- 使用
mvn test
可以運行 - 使用
java
命令運行
要先build下項目(即轉化為.class文件,我是在idea裡使用界面build瞭,build後可以看到target文件夾生成),接下來使用命令執行:
java -classpath 第三步拿到的classpath內容 org.testng.TestNG testng.xml classpath 表示程序會在這些path下尋找第三方庫
執行結果:
===============================================
Sample test Suite
Total tests run: 1, Passes: 1, Failures: 0, Skips: 0
===============================================
調試TestNG源碼
借助IDEA強大的調試界面,走讀TestNG源碼。由於IDEA自帶的TestNG插件,所以Debug時,走不到TestNG的main方法裡,所以需要新建debug Config
如果提示測試的class no found,需要把target->test-classes路徑添加到 project structure->module->Dependenices
以上就是基於maven使用IDEA走讀TestNG源碼(Mac)的詳細內容,更多關於maven TestNG源碼的資料請關註WalkonNet其它相關文章!
推薦閱讀:
- Maven使用方法詳及方式詳細介紹
- 測試框架JUnit VS TestNG對比分析
- springBoot Junit測試用例出現@Autowired不生效的解決
- Java aop面向切面編程(aspectJweaver)案例詳解
- SpringBoot測試時卡在Resolving Maven dependencies的問題