簡體   English   中英

使用groovy腳本進行Maven單元測試

[英]use groovy script for maven unit test

如果我將groovy單元測試編寫為類,則maven將運行這些測試。 但是,如果我將groovy單元測試編寫為腳本,那么maven將忽略它們。 我的pom依賴於groovy-all和junit,並使用maven-compiler-plugin。 我可以使用GroovyTestSuite在命令行中運行groovy腳本測試,在該腳本中添加腳本然后運行它。 但是,這是作為Maven構建的一部分來完成的。 我看到了這個問題, 從Maven執行外部groovy腳本,但不是完全一樣。 問候,約翰

Groovy腳本無法編譯為.class,因此用於單元/集成測試的maven surefire / failsafe插件從testCompile階段到實際運行都不會有任何結果。 如果您打算將它們編寫為Groovy腳本,則將不得不使用其他maven插件來運行腳本...但是可能不會像通常從Surefire之類獲得JUnit結果輸出。

因為GroovyTestSuite本身就是一個類,並且您想使用Maven運行測試,所以我建議將測試編寫為實際的類文件而不是腳本。 您還可以使用maven觸發從命令行運行測試,因此不會妨礙您的需求。 走這條路線將使您將來可以使用其他框架(例如Spock!),並使您始終處於傳統maven / JUnit約定的范圍之內。

現在,如果確實在測試中設置了Groovy腳本,則可以執行與此解決方案類似的操作,並將執行目標(配置為指向Groovy腳本)綁定到test階段。 但是,除非您有非常明確的理由要保留在測試套件的常規腳本領域中,否則我不建議您采用這種方法。 將您的測試套件編寫為groovy類而不是腳本,不應使您失去任何其他groovy功能。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM