Junit调查记录
2016-02-22 11:05
309 查看
开发时想测试下的话还要专门写个main函数来调用太麻烦了,于是想用用Junit。结果碰到了许多问题。
1.几个Test怎么不按顺序来呢?
我按以上代码进行测试,发现结果为:
反复多次重试仍是如此。为什么呢?百度后我才知道答案,原来这些test方法仍是简单地根据反射API返回的顺序来执行。所以才会出现虽然不按顺序但每次都这么排序的情况。
2.如何让Test按顺序来呢?
有三个注解可供选择:
@FixMethodOrder(MethodSorters.DEFAULT)
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
@FixMethodOrder(MethodSorters.JVM)
分别是默认顺序,方法名排序顺序,按照JVM返回顺序。但当我要实际试试时发现完全用不了,报错是什么情况:
百度后根据位置:org.junit.FixMethodOrder发现我用的Junit没有这货,进一步,我查到排序得要Junit4.11后才支持我用的是Junit4。于是我在http://download.csdn.net/detail/luzle/6915487,下4.11再试。
这回包是有了可还是有错:
我分明找着这货了,为什么报错啊
!
默默的去下源码,顺道试试Maven这个插件的下源码功能:包上右键->Maven->DownLoadSource,然后就是无尽的等待
根本用不了啊,我还不如自己去下源码呢!不过下jar包一般会带的,这个sources就是,直接attachSource到它就行了。
打开源码发现该有的都有啊,那为什么不行呢?搞了老半天无意间Ctrl+Alt+o自动导包后错误就没了!靠原来我先是自动纠错里选的导入包,后一个错误没有纠错。但其实只是缺包而已。
总之我再用Ctrl+Alt+o以外的方法导包我就是狗!
全都正常了但是实测仍不可用!三个注释用后都其结果每次都是不一样的乱序,好吧至少用不用注释是不同的!这个问题以后再研究了,估计是版本太旧。
3.如何只执行单个Test呢?
右键->runConfigration选择TestMethod即可
1.几个Test怎么不按顺序来呢?
import org.junit.Test; public class JunitDemo { @Test public void test1(){ System.out.println("this t1"); } @Test public void test2(){ System.out.println("this t2"); } @Test public void test3(){ System.out.println("this t3"); } @Test public void test4(){ System.out.println("this t4"); } @Test public void test5(){ System.out.println("this t5"); } @Test public void test36(){ System.out.println("this t6"); } }
我按以上代码进行测试,发现结果为:
反复多次重试仍是如此。为什么呢?百度后我才知道答案,原来这些test方法仍是简单地根据反射API返回的顺序来执行。所以才会出现虽然不按顺序但每次都这么排序的情况。
2.如何让Test按顺序来呢?
有三个注解可供选择:
@FixMethodOrder(MethodSorters.DEFAULT)
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
@FixMethodOrder(MethodSorters.JVM)
分别是默认顺序,方法名排序顺序,按照JVM返回顺序。但当我要实际试试时发现完全用不了,报错是什么情况:
百度后根据位置:org.junit.FixMethodOrder发现我用的Junit没有这货,进一步,我查到排序得要Junit4.11后才支持我用的是Junit4。于是我在http://download.csdn.net/detail/luzle/6915487,下4.11再试。
这回包是有了可还是有错:
我分明找着这货了,为什么报错啊
!
默默的去下源码,顺道试试Maven这个插件的下源码功能:包上右键->Maven->DownLoadSource,然后就是无尽的等待
根本用不了啊,我还不如自己去下源码呢!不过下jar包一般会带的,这个sources就是,直接attachSource到它就行了。
打开源码发现该有的都有啊,那为什么不行呢?搞了老半天无意间Ctrl+Alt+o自动导包后错误就没了!靠原来我先是自动纠错里选的导入包,后一个错误没有纠错。但其实只是缺包而已。
总之我再用Ctrl+Alt+o以外的方法导包我就是狗!
全都正常了但是实测仍不可用!三个注释用后都其结果每次都是不一样的乱序,好吧至少用不用注释是不同的!这个问题以后再研究了,估计是版本太旧。
3.如何只执行单个Test呢?
右键->runConfigration选择TestMethod即可
相关文章推荐
- 跳台阶问题
- Eclipse中第一次初始化项目
- 利用oracle执行系统命令!
- maven 错误解决办法集
- tomcat 修改端口号
- rsync 配置
- (转载)理解 组件-实体-系统 (ECS \CES)游戏编程模型
- 免费的编程中文书籍索引【收藏速度】
- logic:iterate循环,indexId做参数传递使用
- 大数据课程体系-学习笔记-第一阶段-Linux Base
- ANDROID_MARS学习笔记_S04_005_用sing-post向腾讯微博发一条信息
- c语言入门之项目3.1——s=1+2*2+3*3+4*4+5*5....n*n
- 在字符串中找到第一个只出现一次的字符
- ]python time, datetime, string, timestamp相互转换
- sql报错 将截断字符串或二进制数据
- QT中文显示乱码解决
- Linux读写性能测试工具--iozone
- UIResponder
- mysql授权
- eclipse和myeclipse中如何关闭自动补全括号,花括号,双引号等功能