您的位置:软件测试 > 开源软件测试 > 开源单元测试工具 > junit
IntelliJ IDEA中如何使用JUnit4
作者:网络转载 发布时间:[ 2016/5/16 15:54:24 ] 推荐标签:单元测试 软件测试

  背景
  近参与了一个Anroid医疗项目,其中项目底层有很多基础类及通讯类,而且很多涉及复杂的字节操作还有多线程同步及状态机处理。这样的项目做一下TDD还是必要的,尽量项目前期把风险降低一些。
  现在的问题是本人使用的是IntelliJ开发的Android项目,刚开始还真不知道怎么下手。在参考了一些资料后,总结了一下IntelliJ中配置JUnit测试环境的步骤,希望对大家有帮助。
  环境:
  操作系统:Windows 7
  IntelliJ版本:13.1
  Android SDK API:19
  Java Version:1.7
  JUnit 4子版本:JUnit 4.11(IntelliJ自带)
  步骤:
  一、在项目的AndroidManifest.xml文件中做如下更改:
  在application节点下添加
  <uses-library android:name="android.test.runner"/>,如图:

  在根节点下添加如下内容:

  其中targetPackage跟你所在项目的包名相同(参见你的AppManifest.xml文件顶部:

  二、为你所在项目添加如下jar包引用
  1、junit-4.11
  2、harmcrest-core-1.3
  3、annotations
  三、调整项目对jar包的引用顺序

  做这个调整是因为我们使用的Android API中包含了JUnit 3.8,默认SDK是放在前面的,否则代码中的Junit会被认为是Junit 3.8,那你只能使用Junit 3的测试方式了。
  四、在项目目录树中,创建一个与src平级的目录用于存放所有的测试类。
  简单起见我使用的是tests.

  除了创建目录,我们还需要指定新创建的目录为测试根目录:
  右键tests目录,选择'Mark Directory As'--->'Test Sources Root'

  五、在你的测试根目录下创建你的测试分类目录及具体的测试类
  在测试类内部你需要的只是给测试方法加上@Test标注。
  六、运行你的测试
  1、在代码编辑界面,在你的测试方法体中点击右键,在弹出的菜单中选中以JUnit的方式运行

  这种方式非常适合刚写完测试,亟待看到某个测试的运行结果的场景。
  还有一种使用快捷键的方式来单独运行某个测试,我们只需要将文本焦点切换到某个测试方法中,然后在使用组合键Ctrl+Shift+F10可以达到同上面一样的测试效果。
  2、编辑运行Configuration
  点击Configuration按钮,在弹出界面中按如下步骤创建一个JUnit运行配置

  在弹出的配置窗口做简单的配置。具体配置细节请参见本文参考部分的《IntelliJ IDEA对JUnit支持的官方文档》部分。
  这种方式适合于批量执行测试的场景。
  回顾JUnit3的使用方式
  1、让你的测试类继承自Testcase
  2、每个测试方法名必须以小写test为前缀
  备注:IntelliJ IDEA已经内部支持JUnit4,Android SDK中也至少对JUnit3做了支持,因此并不需要再从Maven中对JUnit进行依赖管控。除非你需要使用新的JUnit中的某项特性。
  参考:
  在IntelliJ IDEA的项目中开启Annotations
  https://www.jetbrains.com/idea/help/enabling-annotations.html
  IntelliJ IDEA对JUnit支持的官方文档
  https://confluence.jetbrains.com/display/IntelliJIDEA/Unit+Testing+and+Code+Coverage
  IntelliJ IDEA提供的JUnit测试的Sample项目
  https://github.com/JetBrains/intellij-samples/tree/master/unit-tests-example
  ADT中如何配置JUnit
  http://blog.csdn.net/huangbiao86/article/details/6709742
  JUnit4测试说明:
  http://blog.csdn.net/xuxuxiaojie/article/details/5628671
  JUnit4在IntelliJ IDEA中的使用(应该有三篇,但是只有后两篇可见。可能第一篇是将配置的,但是不可见--有点遗憾)
  http://blog.16 .com/xianfuying@126/blog/static/2196000520110932132970/
  Android单元测试初探--Instrumentation
  http://www.oschina.net/question/54100_27061
  IntelliJ IDEA和ADT的持续测试插件Infinitest
  http://infinitest.github.io/
  ADT中使用JUnit的一个教程
  http://www.cnblogs.com/draem0507/archive/2013/04/25/3043557.html
  一个老程序员的Android测试驱动开发实践系列3篇(主要侧重界面交互测试)
  http://blog.csdn.net/yt7589/article/details/12427185
  http://blog.csdn.net/yt7589/article/details/12427185
  http://blog.csdn.net/yt7589/article/details/12445283

软件测试工具 | 联系我们 | 投诉建议 | 诚聘英才 | 申请使用列表 | 网站地图
沪ICP备07036474 2003-2017 版权所有 上海泽众软件科技有限公司 Shanghai ZeZhong Software Co.,Ltd