`
lizhuang
  • 浏览: 889217 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

junit控制程序运行流程

 
阅读更多
加入/修改Junit4.11的依赖包

Maven

<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.11</version>
    <scope>test</scope>
</dependency>

jar:  junit-4.11.jar

在测试类上添加注解@FixMethodOrder注解

@FixMethodOrder提供了三种排序方式

   


1
MethodStories.DEFAULT 
会按照方法的hashCode来做排序,不同系统中得到的hashcode有可能是不同的,随意并不能人为的保证执行的顺序。


2
MethodStories.NAME_ASCENDING
按照方法名排序后调用,所以可以很好的通过规范方法名就能控制好执行的顺序,但从命名上我觉得并不好,需要添加和验证逻辑不相干的标示在方法命中。但是也可以很好的利用这个规则,更好的分组组织代码。

一组命名规则如下: test_模块序号_功能序号_方法名

例如: test_01_001_should_regist_success();

        test_01_002_should_login_success();

        test_01_003_should_login_fail_when_username_empty();

        ...


3
MethodStories.JVM
按照JVM返回的方法名的顺序执行,所以执行顺序也是不可以预测的。


所以如果业务中需要精准的控制代码的方法的测试顺序,可以通过MethodStories.NAME_ASCEDNING+方法名规则来实现。
分享到:
评论

相关推荐

    selenium怎样在多窗口中运行程序 (1)

    怎样在多窗口中运行程序 (1)启动selenium-server时,输入以下的命令:java -jar selenium-server.jar -multiwindow。则会在两个窗口中显示运行结果 (2)启动selenium-server时,输入以下的命令:java -jar ...

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

    15.1.2 配置流程执行程序 15.1.3 登记流程定义 15.2 布置流程的基础 15.2.1 流程变量 15.2.2 start和end状态 15.2.3 搜集顾客信息 15.2.4 绑定比萨饼订单 15.2.5 完成订单 15.2.6 几个结束工作 15.3 高级...

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

    15.1.2 配置流程执行程序 15.1.3 登记流程定义 15.2 布置流程的基础 15.2.1 流程变量 15.2.2 start和end状态 15.2.3 搜集顾客信息 15.2.4 绑定比萨饼订单 15.2.5 完成订单 15.2.6 几个结束工作 15.3 高级...

    《程序天下:J2EE整合详解与典型案例》光盘源码

    10.3.6 启动Tomcat运行程序 10.4 Spring 的视图(View) 10.4.1 视图简介 10.4.2 视图解析 10.5 Spring的控制器(Controller) 10.5.1 Controller接口 10.5.2 命令控制器(BaseCommandController) 10.5.3 表单控制...

    maven2 plugin for eclipse

    然后我们回看到程序运行了,而且在console里打印出 testSample,从中可以看到,你只要用到这个类、 它肯定要调用构造函数创建它自己,然后才执行你调用的方法。接着我们关掉junit窗口(在eclipse 左边那一列点 junit...

    JAVA程序开发大全---上半部分

    8.1.3 Struts框架执行流程 118 8.2 MyEclipse创建基于Struts框架的项目 119 8.2.1 创建Struts项目 119 8.2.2 Struts组件向导 121 8.2.3 Struts配置文件编辑器 124 8.3 Struts应用实例:登录系统 125 8.4 本章小结 ...

    轻松构建和运行多线程的单元测试

    针对Java并行程序的测试,结合扩展JUnit的多线程测试工具,本文介绍了一种在集成开发环境中,创建符合用户要求的多线程单元测试用例的完整过程,使得用户只用关心测试本身的逻辑和结果,而不用去了解测试用例并行...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (2)

    10.3.6 启动Tomcat运行程序 10.4 Spring 的视图(View) 10.4.1 视图简介 10.4.2 视图解析 10.5 Spring的控制器(Controller) 10.5.1 Controller接口 10.5.2 命令控制器(BaseCommandController) 10.5.3 表单控制...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (1)

    10.3.6 启动Tomcat运行程序 10.4 Spring 的视图(View) 10.4.1 视图简介 10.4.2 视图解析 10.5 Spring的控制器(Controller) 10.5.1 Controller接口 10.5.2 命令控制器(BaseCommandController) 10.5.3 表单控制...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (3)

    10.3.6 启动Tomcat运行程序 10.4 Spring 的视图(View) 10.4.1 视图简介 10.4.2 视图解析 10.5 Spring的控制器(Controller) 10.5.1 Controller接口 10.5.2 命令控制器(BaseCommandController) 10.5.3 表单控制...

    突破程序员基本功的16课.part2

    14.2.2 跟踪程序执行流程 14.2.3 断点调试 14.2.4 隔离调试 14.2.5 错误重现 14.3 记录常见错误 14.3.1 常见异常可能的错误原因 14.3.2 常见运行时异常可能的错误原因 14.4 程序调试的整体思路 14.4.1 分段...

    基于springboot的二手车交易系统的设计与实现.zip

    源码可能遵循MVC(模型-视图-控制器)设计模式,将业务逻辑、数据模型、用户界面和控制流程分离开来。资源文件:这些通常是静态资源,如HTML、CSS、JavaScript文件,用于构建前端用户界面。可能还会有图片、图标等...

    MySQL 5.1中文手冊

    12.2. 控制流程函数 12.3. 字符串函数 12.3.1. 字符串比较函数 12.4. 数值函数 12.4.1. 算术操作符 12.4.2. 数学函数 12.5. 日期和时间函数 12.6. MySQL使用什么日历? 12.7. 全文搜索功能 12.7.1. 布尔全文搜索 ...

    Spring.3.x企业应用开发实战(完整版).part2

    11.6.3 使用StoredProcedure执行存储过程 11.6.4 SqlFunction类 11.7 小结 第12章 整合其他ORM框架 12.1 Spring整合ORM技术 12.2 在Spring中使用Hibernate 12.2.1 配置SessionFactory 12.2.2 使用HibernateTemplate ...

    Spring3.x企业应用开发实战(完整版) part1

    11.6.3 使用StoredProcedure执行存储过程 11.6.4 SqlFunction类 11.7 小结 第12章 整合其他ORM框架 12.1 Spring整合ORM技术 12.2 在Spring中使用Hibernate 12.2.1 配置SessionFactory 12.2.2 使用HibernateTemplate ...

    MySQL 5.1参考手册

    12.2. 控制流程函数 12.3. 字符串函数 12.3.1. 字符串比较函数 12.4. 数值函数 12.4.1. 算术操作符 12.4.2. 数学函数 12.5. 日期和时间函数 12.6. MySQL使用什么日历? 12.7. 全文搜索功能 12.7.1. 布尔全文搜索 ...

    mysql官方中文参考手册

    12.2. 控制流程函数 12.3. 字符串函数 12.3.1. 字符串比较函数 12.4. 数值函数 12.4.1. 算术操作符 12.4.2. 数学函数 12.5. 日期和时间函数 12.6. MySQL使用什么日历? 12.7. 全文搜索功能 12.7.1. 布尔全文搜索 ...

Global site tag (gtag.js) - Google Analytics