一个简单的JUnit项目

本文详细介绍了JUnit的使用方法,包括其作为JAVA语言的单元测试框架的功能、回归测试的应用,以及与TestNG的对比。通过新建项目、添加库、编写测试案例等步骤,展示了如何使用JUnit进行网页自动化测试。

写在前面

本人一直很喜欢JAVA,可是真正接触到JUnit也不过半年。由于公司进行网页测试,采用的是JUnit+selenium的方式搭建的测试框架,然后采用JAVA语言编写,所以本人也好好研究了一下JUnit。几天下来,发现还蛮好玩。个人觉得最好的教程就是官网上的英语user manual,认真看下去的话一点也不难。本人有总结的习惯,所以就顺便把教程给翻译了一下,留作自己学习JUnit的一个足迹。还是那句话,好好学习,天天向上,然后生活越来越美好。

JUnit本身是一个JAVA语言的单元测试框架。还可以用在回归测试中。而回归测试是指修改旧代码后,重新进行测试以确认修改没有引入新的错误或导致其它代码产生错误。

其实TestNG跟JUnit类似,而且生成的report比JUnit更方便查看一点,关于两者的比较可以参考官网的一篇文章:http://www.mkyong.com/unittest/junit-4-vs-testng-comparison/ 。

由于一些特性是刚出来的,建议在新版本的JUnit上运行(我的是JUnit 4.11)。

关于JUnit 的一些好的资源:

JUnit主页:http://junit.org/

FAQ:http://junit.org/faq.html

JUnit JavaDoc:http://junit.org/javadoc/latest/index.html

JUnit Tutorial:http://www.mkyong.com/tutorials/junit-tutorials/

JUnit Cookbook:http://junit.org/cookbook.html

 探索 JUnit 4.4 新特性:http://www.ibm.com/developerworks/cn/java/j-lo-junit44/


路过的时候发现的一个好玩的博客:

To Test or Not to Test? That’s a Good Question:http://www.threeriversinstitute.org/blog/?p=187

从一个简单的JUnit项目开始

1.在eclipse新建一个项目, "New"-> "Java Project" ,项目名字为"JunitDemo"。

2.添加JUnit4库。有两种方式添加JUnit 库:   

1)由于Eclipse 默认已经集成了JUnit插件,所以我们可以直接使用eclipse下载好的JUnit。在项目名上右键,选择"Properties"->"Java Build Path"->"Libraries"->"Add Library..."->"JUnit"->"JUnit4","OK"之后JUnit4库添加成功。我们会看到项目下有一个"JUnit 4"的库,展开之后有两个jar文件:junit.jar和 org.hamcrest.core.jar。

2)我们也可以自己新建一个库,然后将我们下载好的jar文件放进去。个人建议后一种,因为可以添加一些其他的Jar文件,比如assertThat会用到的hamcrest-library.jar。首先下载必要的Jar包,我这边是 junit.jar、hamcrest-library-1.3.jar、hamcrest-core-1.3.jar。其次在eclipse新建用户库,方法是打开“Windows"->"Preferences"-> "User Libraries" ->"New",输入库名(”MyJunit4"),点击”OK",选中“MyJunit4",点击”Add External JARs...",选择jar包路径,点击“打开”即可。最后是在本项目中导入用户库,方法是在项目名上右键,选择"Properties"->"Java Build Path"->"Libraries"->"Add Library..."->"User Library",选中刚刚新建的用户库(MyJunit4),点击”Finish"即可。

3.由于我们针对网页进行测试,所以还需要添加selenium2库。方法参考我的《Selenium Webdriver》。

4.在项目名上右键新建一个包,名字为“com.junit.demo"。

5.在包名上右键,"New" -> "JUnit Test Case" ,选中“Setup"和“TearDown" ,case名字为“WebTest01"。

package com.junit.demo;

import static org.junit.Assert.*;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

public class WebTest01 {
	WebDriver driver=null;

	@Before
	public void setUp() throws Exception {
		driver=new FirefoxDriver();
		driver.get("http://www.baidu.com");
		driver.manage().window().maximize();
	}

	@After
	public void tearDown() throws Exception {
		driver.quit();
	}

	@Test
	public void test() throws InterruptedException {
		driver.findElement(By.id("kw")).sendKeys("JUnit");
		driver.findElement(By.id("su")).click();
		Thread.sleep(1000);
		assertTrue(driver.getTitle().contains("JUnit"));
	}
}

6.仿照第三步建立TestCase: "WebTest02","WebTest03","WebTast04"。这样一共建立了4个test case。

7.在包名上右键,"New" -> "JUnit Test Suite" ,选中 “New JUnit 4 suite",名字为“TestSuite01",在“Test classes to include in suite:"选中所有的Test Case 。

8.在TestSuite01上右键,选择 “Run As "-> "JUnit Test" 。即可看到所有选中的Case都运行了一遍。

9.在下方的JUnit可以看到运行结果,包括Run 了多少case,有多少Errors,还有多少有Failures。双击fail的case对应的 “Failure Trace"还可以追踪到具体的行,对于调试很有帮助。如果找不到JUnit窗口,可以通过 "Windows"->"Show Views"->"Other"->"JUnit" 打开。




注:下文中的 *** 代表文件名中的组件名称。 # 包含: 中文-英文对照文档:【***-javadoc-API文档-中文(简体)-英语-对照版.zip】 jar包下载地址:【***.jar下载地址(官方地址+国内镜像地址).txt】 Maven依赖:【***.jar Maven依赖信息(可用于项目pom.xml).txt】 Gradle依赖:【***.jar Gradle依赖信息(可用于项目build.gradle).txt】 源代码下载地址:【***-sources.jar下载地址(官方地址+国内镜像地址).txt】 # 本文件关键字: 中文-英文对照文档,中英对照文档,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压 【***.jar中文文档.zip】,再解压其中的 【***-javadoc-API文档-中文(简体)版.zip】,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·本文档为双语同时展示,一行原文、一行译文,可逐行对照,避免了原文/译文来回切换的麻烦; ·有原文可参照,不再担心翻译偏差误导; ·边学技术、边学英语。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值