IntelliJ IDEA中怎样使用JUnit4



背景

近期參与了一个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.



watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbWlzc2F1dHVtbg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center">

除了创建文件夹。我们还须要指定新创建的文件夹为測试根文件夹:

右键tests文件夹,选择‘Mark Directory As‘--->‘Test Sources Root‘



watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbWlzc2F1dHVtbg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center">

五、在你的測试根文件夹下创建你的測试分类文件夹及详细的測试类

在測试类内部你须要的仅仅是给測试方法加上@Test标注。

六、执行你的測试

1、在代码编辑界面,在你的測试方法体中点击右键,在弹出的菜单中选中以JUnit的方式执行

这样的方式很适合刚写完測试。亟待看到某个測试的执行结果的场景。

另一种使用快捷键的方式来单独执行某个測试,我们仅仅须要将文本焦点切换到某个測试方法中,然后在使用组合键Ctrl+Shift+F10就能够达到同上面一样的測试效果。

2、编辑执行Configuration

点击Configurationbutton,在弹出界面中按例如以下步骤创建一个JUnit执行配置

在弹出的配置窗体做简单的配置。

详细配置细节请參见本文參考部分的《IntelliJ IDEA对JUnit支持的官方文档》部分。

这样的方式适合于批量运行測试的场景。

回想JUnit3的使用方式

1、让你的測试类继承自Testcase

2、每一个測试方法名必须以小写test为前缀

备注:IntelliJ IDEA已经内部支持JUnit4,Android SDK中也至少对JUnit3做了支持。因此并不须要再从Maven中对JUnit进行依赖管控。

除非你须要使用最新的JUnit中的某项特性。

更新:

2014-10-16: 在开启JUnit4.0功能后项目中涉及Android生命周期的測试类(比方AndroidTestCase)将没有办法执行。原因在于AndroidTestCase这些是由SDK支持的,可是SDK中引用的是JUnit3.8的类库,我的理解是假设你引用的是JUnit4.0,那么在执行时AndroidTestCase这些Android特有的測试依赖的JUnit3.8在执行时是不会载入的。測试执行器尝试载入该类測试时就会报错。 因此,假设你希望在你的项目中測试与Android生命周期相关的类的话,那就仅仅能在项目中摒弃JUnit4。

參考:

在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/[email protected]/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



时间: 2024-08-04 14:21:07

IntelliJ IDEA中怎样使用JUnit4的相关文章

IntelliJ IDEA中如何使用JUnit4

 背景 最近参与了一个Anroid医疗项目,其中项目底层有很多基础类及通讯类,而且很多涉及复杂的字节操作还有多线程同步及状态机处理.这样的项目做一下TDD还是必要的,尽量项目前期把风险降低一些. 现在的问题是本人使用的是IntelliJ开发的Android项目,刚开始还真不知道怎么下手.在参考了一些资料后,总结了一下IntelliJ中配置JUnit测试环境的步骤,希望对大家有帮助. 环境: 操作系统:Windows 7 IntelliJ版本:13.1 Android SDK API:19 J

在Intellij IDEA中使用Debug

Debug用来追踪代码的运行流程,通常在程序运行过程中出现异常,启用Debug模式可以分析定位异常发生的位置,以及在运行过程中参数的变化.通常我们也可以启用Debug模式来跟踪代码的运行流程去学习三方框架的源码. 所以学习下如何在Intellij IDEA中使用好Debug,主要包括如下内容: 一.Debug开篇 二.基本用法&快捷键 三.变量查看 四.计算表达式 五.智能步入 六.断点条件设置 七.多线程调试 八.回退断点 九.中断Debug 十.附:JRebel激活 一.Debug开篇 首先

在Web应用和IntelliJ IDEA中使用Spring框架

在JAVA SE和Web应用中都可以使用Spring, 这里只说在Web程序中的应用. 下面将以Spring 3.0.5版本为例. 在Web中使用Spring只需要如下两个步骤: 第一,将Spring项目的dist路径下的全部JAR包复制到Web应用的WEB-INF/lib路径下: 第二,将Spring的spring-framework-3.0.5.RELEASE-dependencies.zip解压缩路径下所需的第三方类库文件复制到Web应用的WEB-INF/lib路径下. 在IntelliJ

在 IntelliJ IDEA 中配置 JSF 开发环境的入门详解

JSF 作为 JavaEE 官方标准,在了解并掌握其基本开发技术后,对于功能要求较高.业务流程复杂的各种现代 Web 应用程序开发将会成为非常合适且强大的高效率开发利器.JSF 的开发环境搭建涉及到在 IntelliJ IDEA 中配置 Web Application Server.配置 JavaEE 基本环境.选择 JSF 相关功能模块等,之所以选择 IDEA 作为开发环境,是因为 IDEA 作为业界公认的最强 Java 集成开发环境,已逐渐成为事实上的 Java 及相关应用开发环境标准,甚至

在intellij IDEA中为web应用创建图片虚拟目录(详细截图)

在intellij IDEA中为web应用创建图片虚拟目录(详细截图) 在intellij IDEA中为web应用创建图片虚拟目录详细截图 工程配置和环境 操作步骤 在非IDE环境下配置虚拟目录 本文主要展示如何在intellij IDEA中为web应用添加虚拟目录映射,并附上步骤截图 工程配置和环境 我使用的版本为 tomcat 8.0.30 intellij 15.0.2 jdk 1.8.0_25 已经部署好了一个web应用,并且已经在IDEA中添加好了tomcat容器,现在想为这个web应

Intellij IDEA中使用Debug

Intellij IDEA中使用Debug Debug用来追踪代码的运行流程,通常在程序运行过程中出现异常,启用Debug模式可以分析定位异常发生的位置,以及在运行过程中参数的变化.通常我们也可以启用Debug模式来跟踪代码的运行流程去学习三方框架的源码. 所以学习下如何在Intellij IDEA中使用好Debug,主要包括如下内容: 一.Debug开篇 二.基本用法&快捷键 三.变量查看 四.计算表达式 五.智能步入 六.断点条件设置 七.多线程调试 八.回退断点 九.中断Debug 十.附

Intellij Idea 中,如何使用maven+SVN

在Intellij Idea 中,单独使用MAVEN和单独使用SVN,大家可能都会了,但是如何两者同时使用,今天折腾了下,贡献出来给大家: 如果通过idea新建一个svn项目,maven的配置文件无法生效,项目无法编译:如果新建一个maven项目,又无法采用SVN进行同步,经测验,有效的做法是: 1.先通过svn工具,一般是小乌龟(TortoiseSVN),将工程下载至本地,工程里需包含pom.xml文件: 2.idea工具中,新建MAVEN项目,选择已经下载下来的pom.xml,一路next,

热部署插件JRebel在Eclipse和Intellij IDEA中的安装与配置(非破解,官方正版永久使用)

大致步骤: 1. 在IDE相应的市场中安装JRebel 2. 访问网址: https://my.jrebel.com/获得注册码 3. 在IDE中激活JRebel,获得非商业个人版本的永久使用权 步骤一: 安装Jrebel 在Eclipse的菜单栏里面找到Help---Eclipse Marketplace 搜索Jrebel,可以找到最新版的Jrebel,进行安装, 这里我已经安装好了. 步骤二: 进行激活 在那装完成会提醒你激活, 需要激活码, 或注册网站地址任选其一 我采取的是通过在face

Intellij Idea中的Jetty报出Web application not found src/main/webapp错误的解决方案

今天在Intellij Idea中编译项目的时候,运行起来一直会报出如下的错误: Web application not found src/main/webapp 当时感觉应该是什么文件缺少了.所以就直接把这个报错内容放到google上搜索了一下,然后在stackoverflow中按照如下的文章设置,果真跑起来了: http://stackoverflow.com/questions/22542968/intellij-idea-multi-project-wicket-app-does-no