`
tigerli
  • 浏览: 101636 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JUNIT代码的一种编写方式

    博客分类:
  • JAVA
阅读更多
我用的是Junit4,编写如下基类
java 代码
 
  1. import java.io.IOException;  
  2. import java.io.InputStream;  
  3. import java.util.InvalidPropertiesFormatException;  
  4. import java.util.Properties;  
  5.   
  6. import org.springframework.test.AbstractTransactionalDataSourceSpringContextTests;  
  7.   
  8. public abstract class SpringBaseTestCase extends AbstractTransactionalDataSourceSpringContextTests {  
  9.   
  10.     protected Properties properties;  
  11.   
  12.     public void onSetUpInTransaction() throws InvalidPropertiesFormatException, IOException {  
  13.         properties = new Properties();  
  14.         InputStream is = ClassLoader.getSystemResourceAsStream(getTestFixturePropertyFile());  
  15.         if (is != null) properties.loadFromXML(is);  
  16.         loadSet();  
  17.     }  
  18.   
  19.     private String getTestFixturePropertyFile() {  
  20.         return getClass().getSimpleName() + ".xml";  
  21.     }  
  22.   
  23.     protected void loadSet() {  
  24.         // String test = properties.getProperty(this.getName() + "_pid");  
  25.     }  
  26.   
  27.     @Override  
  28.     protected String[] getConfigLocations() {  
  29.         return new String[] { "applicationContext-hibernate.xml" };  
  30.     }  
  31. }  

子类:
java 代码
 
  1. import org.junit.Test;  
  2.   
  3. import basic.SpringBaseTestCase;  
  4. import basic.User;  
  5.   
  6. public class PointsDaoImplTest extends SpringBaseTestCase {  
  7.   
  8.     private IPointsDao pd;  
  9.     private int pidx;  
  10.     private int points;  
  11.     private int lockPoints;  
  12.     private int activePoints;  
  13.   
  14.     public void loadSet() {  
  15.         pd = (IPointsDao) applicationContext.getBean("pointsDao");  
  16.         pidx = Integer.valueOf(properties.getProperty(getName() + "_userPidx"));  
  17.         setUser();  
  18.     }  
  19.   
  20.     private void setUser() {  
  21.         User user = new User();  
  22.         user.setPidx(String.valueOf(pidx));  
  23.         pd.setUser(user);  
  24.     }  
  25.   
  26.     @Test(expected = java.lang.IllegalArgumentException.class)  
  27.     public void testSetUserIllArgument() {  
  28.         pd.setUser(null);  
  29.     }  

数据文件:
xml 代码
 
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">  
  3.   
  4. <properties>  
  5.     <!-- testSetUser -->  
  6.     <entry key="testSetUserIllArgument_userPidx">12</entry>  
  7.     <entry key="testSetUserIllArgument_points">20</entry>  
  8.     <!-- testGetUserPoints -->  
  9.     <entry key="testGetUserPoints_userPidx">13</entry>  
  10.     <entry key="testGetUserPoints_points">44</entry>  
分享到:
评论

相关推荐

    Junit代码覆盖与自动化测试

    ### Junit代码覆盖与自动化测试 #### 一、引言 在软件开发过程中,为了确保代码的质量和稳定性,开发者会采用一系列的方法和技术来进行代码检查和验证。其中,JUnit作为Java领域中最受欢迎的单元测试框架之一,在...

    基于Junit的ATM测试

    【基于Junit的ATM测试】是针对自动取款机(ATM)系统进行的一种软件测试方法,它利用Java编程语言以及JUnit测试框架来验证ATM系统的功能正确性。JUnit是一个广泛使用的Java单元测试框架,它允许开发者编写可重复运行...

    junit配置说明

    junit是一种流行的Java单元测试框架,它提供了许多有用的功能来帮助开发者编写高质量的测试代码。本文将对junit的配置进行说明,涵盖了junit的基本概念、配置方法、测试用例编写等方面的内容。 一、junit的基本概念...

    对基于Junit的测试代码自动化生成的研究

    标题中的“对基于Junit的测试代码自动化生成的研究”揭示了本文主要关注的是利用Junit这一流行的Java单元测试框架进行自动化测试代码的生成技术。Junit是Java开发中广泛使用的工具,它允许开发者编写可重复运行的...

    junit基本介绍,junit常用的接口和类,如何编写测试代码

    JUnit是一种开源的Java测试框架,它属于xUnit家族的一员,主要用于单元测试,特别是白盒测试和回归测试。白盒测试是指测试人员完全了解程序内部的逻辑结构,可以针对性地进行测试;而回归测试是在软件或环境进行修复...

    Junit 计算器测试

    在软件开发中,单元测试是一种重要的质量保证手段,它允许开发者对程序的各个独立组件进行验证,确保它们按照预期工作。Junit是Java编程语言中最广泛使用的单元测试框架,它提供了丰富的API和注解,使得编写和执行...

    JUnit in Action 3nd Edition

    JUnit是一种流行的Java单元测试框架,由Kent Beck和Eric Gamma于1997年创立。JUnit在软件测试领域中扮演着重要的角色,帮助开发者编写高质量的代码。下面是关于JUnit的重要知识点: JUnit的历史 JUnit的历史可以...

    怎样使用Junit Framework进行单元测试的编写.pdf

    通过以上讨论,我们可以看到,JUnit框架不仅提供了强大的工具来辅助单元测试的编写,更重要的是它鼓励了一种良好的测试习惯。开发者应当将单元测试视为软件开发不可或缺的一部分,不断迭代和完善测试用例,以此提高...

    敏捷开发流程 之 junit提高代码覆盖率

    敏捷开发是一种注重迭代和快速响应变化的软件开发方法论,其目标是提高代码质量和开发效率。在敏捷开发中,高质量的代码是项目成功的关键因素。本文将深入探讨如何在敏捷环境中通过一系列步骤来保证和提升Java项目的...

    JUNIT介绍JUNIT介绍

    TDD 是一种编程实践,强调在编写实际代码之前先编写测试。TDD 的基本步骤包括:首先,编写失败的测试用例;然后,使该测试通过;接着,重构代码以提高可读性和效率,但重构前后必须保持测试通过。这种方式促进了更好...

    Junit实例_一个Junit的实例_

    在Java编程领域,JUnit是一个非常重要的单元测试框架,它使得开发者能够轻松地编写和执行针对代码功能的测试用例。本实例将详细讲解如何利用JUnit进行实际的测试工作,以确保程序逻辑的正确性。我们将以一个简单的...

    maven+springMVC+mybatis+velocity+mysql+junit 代码生成器

    MyBatis是一个持久层框架,它允许开发者编写SQL语句并将其映射到Java对象上,提供了一种灵活的数据访问接口。MyBatis通过XML或注解配置,将SQL与Java代码分离,避免了JDBC代码的繁琐,同时保留了对数据库的直接操作...

    junit4学习文档

    注解是一种元数据,用于描述程序中的元素如类、方法或变量的作用。与传统的关键字(如 public、static)类似,注解可以用来描述代码的不同方面,例如在 JUnit4 中,`@Test` 注解被用来标识一个测试方法。 #### 二、...

    junit安装告诉读者如何安装junit

    软件测试是验证和确认软件是否符合需求的过程,JUnit提供了一种系统化、自动化的方式来执行这些验证,帮助开发者发现潜在的bug,提高软件的可靠性和稳定性。实验过程中的问题解决和调试经验,对培养学生的实践能力和...

    JUnit in action JUnit Recipies

    接着,书中介绍了参数化测试,这是一种强大的特性,允许使用不同的输入数据集运行同一个测试方法,从而实现对同一功能的多方面验证。此外,还讲解了使用套件(Test Suites)和分类(Categories)来组织和运行相关的...

    junit3.8.1src.zip源代码

    Junit提供了一种声明式的方式来定义和执行这些测试。 1. 创建测试类:继承`TestCase`,并为每个需要测试的方法编写一个公共方法,方法名以`test`开头。 2. 编写测试方法:使用断言方法来验证预期结果,例如`...

    junit4 jar完整包

    JUnit4是Java编程语言中最广泛使用的单元测试框架之一,它为开发者提供了一种方便、高效的方式来验证代码的正确性。这个“junit4 jar完整包”包含了所有你需要进行单元测试的类和接口,使得测试过程变得简单且易于...

Global site tag (gtag.js) - Google Analytics