JUnit中@Test的运行顺序
原文鏈接:?Test execution order
原文日期: 2012年12月06日
翻譯日期: 2014年10月16日
翻譯人員: 百里馬
依照設計,Junit不指定test方法的運行順序。
到眼下為止,這些test方法仍是簡單地依據反射API返回的順序來運行。
可是,因為Java平臺并不能指定明白的順序,因此使用JVM來決定test方法的順序是不明智的。
而其實,JDK7會返回一個隨機的順序。
當然,編寫完好的測試代碼并不須要假定不論什么運行順序,可是還有一些須要,并且在一些特定平臺上一個可預測的錯誤總比隨機錯誤要好。
從4.11版本號開始,JUnit將會默認使用一個可確定,可是不可預測的順序(MethodSorters.DEFAULT)。
假設你想要改變test的運行順序,那么你能夠簡單的在test類上加以個注解@FixMethodOrder?而且指定一個合適的MethodSorters
@FixMethodOrder(MethodSorters.JVM): 依據JVM返回的順序來決定test方法的運行順序。每次測試這個順序可能都不一樣
@FixMethodOrder(MethodSorters.NAME_ASCENDING): 依據test方法名依照字典順序升序排序
注:1、Junit4.11版本號及以后才支持 2、使用Junit,須要有配合的hamcrest包
轉載于:https://www.cnblogs.com/gcczhongduan/p/4293159.html
總結
以上是生活随笔為你收集整理的JUnit中@Test的运行顺序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: windows live writer
- 下一篇: LeetCode:999. 车的可用捕获