`
liyiye
  • 浏览: 416121 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

junit4基本功能

阅读更多
下面上三种基本的测试用例的程序编写:

1.基本测试

import static org.junit.Assert.*;
import org.apache.commons.logging.*;
import org.junit.*;


public class Test1{
private static Log log = LogFactory.getLog(Test1.class);

@Before//每个测试单元执行前执行该方法,方法级的前置,当然还有类级别的前置BeforeClass,只执行一次
public void init() {
  log.info("init.....");
}

@After//每个测试单元执行前执行该方法,方法级的后置,当然还有类级别的后置AfterClass,只执行一次
public void destory() {
  log.info("release resource");
}

public void functionOne() {
  System.out.println("");
}

@Test(expected=NullPointerException.class)//指定抛出指定的异常
public void functionError() {
  String test = null;
//   assertNull(test);
   test.toString();
}

@Test
public void Equals() {
  String testPoint = new String("true");
  String testTargt = new String("true1");
  assertEquals(testPoint, testTargt);
}

@Ignore("此测试已被忽略")
@Test(timeout=1)//测试运行时间 (单位:millisecond)
public void timeout() {
  String testPoint = new String("true");
  String testTargt = new String("true1");
  assertTrue("Pattern did not validate zip code", true);
}

}



2.套件测试

测试用例类1:Test1.java

public class Test1 {
@Test
public void test1(){
  System.out.println("test1");
}

@Test
public void test2(){
  System.out.println("test2");
}
}

测试用例类2:Test2.java

public class Test2 {
@Test
public void Tets3(){
  System.out.println("test3");
}
@Test
public void Test4(){
  System.out.println("test4");
}
}

测试套件类:

/**
* 在 JUnit 4 中,套件语义被两个新注释所替代。
* 第一个是 @RunWith,设计它是为了方便让不同的运行器
* (除了构建进框架的运行器)执行一个特别的测试类。
* JUnit 4 绑定一个叫做 Suite 的套件运行器,
* 必须在 @RunWith 注释中指定这个运行器。
* 不仅如此,还必须提供另一项叫做 @SuiteClasses 的注释,
* 它将一个意欲表示测试套件的类列表作为参数。
* @author JersoN
*
*/
@RunWith(Suite.class)
@SuiteClasses({Test1.class,Test2.class})
public class SuiteTest {

   /*在这里还可以继续添加新的测试@Test*/

}

3.参数测试

参数测试代码要多一些

import java.util.*;
import org.apache.commons.logging.*;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import org.junit.runners.Parameterized.Parameters;
import static org.junit.Assert.*;

@RunWith(Parameterized.class)//指定此测试类使用测试时使用参数集进行测试
public class MainTest {
Log log = LogFactory.getLog(MainTest.class);

@Test
public void testEqual() {
  assertTrue(source.equals(target));
}

@Test
public void testStringLength(){

//可以看到以往做参数测试得把测试的参数传递进来,当我们要测试多个参数的时候很麻烦,Juint4用了更好的实现解决这个问题,你可以把定义的多个参数用于不同的测试
  assertTrue(source.length()==target.length());
}

@Parameters
public static Collection params() {
  return Arrays.asList(new Object[][] {
    { "22101", "22101" },
    { "221x1", "22101" },
    { "22101-5150", "22101"},
    { "221015150", "221015150" }
  });
}

/**
  * 以下是为参数化测试所做的编码
  */
private String source;
private String target;

/**
  * 参数化测试必须的构造函数
  * @param source 对应参数集中的第一个参数
  * @param target 对应参数集中的第二个参数
  */
public MainTest(String source,String target){
  this.source = source;
  this.target = target;
}

public String getSource() {
  return source;
}
public void setSource(String source) {
  this.source = source;
}
public String getTarget() {
  return target;
}
public void setTarget(String target) {
  this.target = target;
}

}
分享到:
评论

相关推荐

    junit-4.10.jar 基本jar包

    上传不了,压缩了一下才能...Junit测试是程序员测试,即所谓白盒测试,因为程序员知道被测试的软件如何(How)完成功能和完成什么样(What)的功能。Junit是一套框架,继承TestCase类,就可以用Junit进行自动测试了。

    基于Java的即时通讯工具的设计与开发的毕业设计,使用Java SE和Java Socket API开发基本功能

    在设计过程中,我们将使用Socket编程实现基本功能,并使用Java Swing构建用户界面。 ## 开发 在开发阶段,我们将使用Java SE和Java Socket API开发基本功能,使用Java Swing开发用户界面。主要的开发任务包括: 1...

    8GreatlyUnderusedFeaturesOfJUnit:Java杂志的文章示例,介绍JUnit的8个基本功能

    JUnit的8个未被充分利用的功能 《 Java杂志》的文章示例降级了基于@Rule架构的JUnit的8个未被充分利用的功能,例如TemporaryFolder,Error Collector等。还示例了类别和参数化测试运行。 在单元测试方面,我们可以说...

    Java单元测试之JUnit篇

    JUnit4通过注解的方式来识别测试方法。目前支持的主要注解有:@BeforeClass全局只会执行一次,而且是第一个运行@Before在测试方法运行之前运行@Test测试方法@After在测试方法运行之后允许@AfterClass全局只会执行一...

    Netbeans实现SpringMVC+Maven+Junit+Mybites+log4J+MySQL实现数据库增删改

    用NetBeans建立工程,采用maven实现自动加载和部署。SpringMVC+mybites框架实现了Mysql数据库增删改查基本功能。练习上手的案例。另外集成了Junit和Log4j的使用。

    junit-seasar2

    junit-seasar2 基于 JUnit4 的 Seasar2 测试运行器,比 JUnit4.4 更新。@Rule你可以使用类似@Rule 。如何使用@RunWith将Seasar2.class指定的Seasar2.class为Seasar24.class 。 @RunWith ( Seasar24 . class)public ...

    springboot demo and junit

    spring boot 可参考样例代码 增删改查+分页基本功能,

    JUnit-UT-and-TDD

    本系列练习和作业在 Java unsing Junit 中实现了社交网络应用程序的帐户相关 API。 API 由SocialNetwork类提供给用户。 业务逻辑主要在代表与用户或成员相关联的信息的较低级别类中: Account 。 您将修改和扩展此...

    spring+hibernate 角色权限管理功能基本完善

    目前有角色权限管理功能。登陆页面改天完善。目前是个链接。里面的技术包括junit,生成api,ant。数据库是mysql。 功能说明:登陆系统时,不同的角色不同的权限

    gradle-java-saucelabs-plugin:Gradle插件可帮助将Sauce Labs功能测试集成到JavaJUnit堆栈中

    Gradle插件可帮助将Sauce Labs功能测试集成到Java / JUnit堆栈中。 Gradle构建将创建运行测试所需的任务,包括启动Sauce Connect隧道。 JUnit测试需要一些基本测试类提供的集成。 build.gradle 将以下模板放入...

    jetif-1.8.0开源测试工具

    你是否正在用一些常见的测试框架例如JUnit来开发单元...Jetif来源于JUnit, JTestCase以及TestNG的启发,有几个基本的概念直接来自于JUnit, 比如说断言机制,Test Listener的概念,因此从JUnit转到Jetif是非常容易的。

    毕业论文_基于SSH框架的论坛的设计与实现

    论坛的名字叫做日常论坛,完成了论坛的基本功能,登录,注册,发帖,回帖,看帖,完成了用户中心,有修改头像,修改个人资料功能。在页面中,使用了CKEditor,JQuery,AJAX等技术。另外还制作了管理员的后台管理模块...

    java开发的基本流程.doc

    JAVA开发的基本流程涉及多个关键步骤,这些步骤确保了软件开发的顺利进行和最终产品的质量。以下是JAVA开发的基本流程: 需求分析: ... 使用测试框架(如JUnit)进行自动化测试。 确保代码的质量和稳定性

    Beer-Stock-Controller-JUnit-Mockito:验证有效的uma API REST以及cerveja的gerenciamento de estoques de cerveja

    啤酒库存控制器JUnit-Mockito验证有效的单位声明API... 阿波达多斯(Tópicosabordados): Java基本测试框架:JUnit,Mockito和Hamcrest。 基础测试的功能性证明:认证,清单,咨询服务。 TDD:无保留权的增加和减少。

    testng基本用法

    TestNG是Java中的一个测试框架, 类似于JUnit 和NUnit, 功能都差不多, 只是功能更加强大,使用也更方便。包括以下方面: 1.注解 2.可以从单元测试到集成测试 3.测试数据不用写死在测试代码中,方便测试数据管理 4....

    网上书店前台系统软件测试课程设计.zip

    单元测试:对系统的部分核心功能代码用JUnit进行单元测试。 功能测试:通过手工或自动化工具测试系统功能,保证系统的功能正常。 性能测试:用LoadRunner(负载测试工具可以很好地对目标系统的性能指标进行评价)对...

    Spring in Action(第二版 中文高清版).part2

    第一部分 Spring的核心 第1章 开始Spring之旅 1.1 Spring是什么 1.2 开始Spring之旅 1.3 理解依赖注入 1.3.1 依赖注入 1.3.2 DI应用 ...B.3.4 使用Gienah Testing在JUnit 4中进行测试 B.4 小结

    Spring in Action(第二版 中文高清版).part1

    第一部分 Spring的核心 第1章 开始Spring之旅 1.1 Spring是什么 1.2 开始Spring之旅 1.3 理解依赖注入 1.3.1 依赖注入 1.3.2 DI应用 ...B.3.4 使用Gienah Testing在JUnit 4中进行测试 B.4 小结

    WikiTestSelenium

    数据驱动的测试使用SQLite作为数据源,并使用JUnit 4功能进行参数化测试。 我使用的IDE是Eclipse。 一些有用的功能:数据驱动的测试使用SQLite数据库和Java 1.8的try-as-a-resource功能来关闭文件。 SQLite数据库...

    《单元测试一条龙》PDF版

    该文档包含了JAVA基本概念,如何使用Junit进行单元测试,如何使用Feed4Junit进行参数化扩展,如何使用junitperf进行单元性能测试,如何使用selenium junit完成自动化测试。算是功能,自动化,性能一条龙

Global site tag (gtag.js) - Google Analytics