一:创建一个测试类,建议将测试类单独放在一个包中(在 maven 项目里有测试类专门的存放位置),新建一个Junit Test Case类,下一步 

测试类的命名建议是你将要测试的类名+Test,然后点 Browse, 你可以选择要进行测试的类(一般选择 Service, 因为 Service 关心的是业务需求),用这种方式创建可以自动生成要测试类的测试类,你只需要进行测试代码的书写.

@Testpublic void testqueryById(){}    @Testpublic void testQueryAll(){}    @Testpublic void testReduceNumber(){}123456789101112

如果里面有自动生成的代码,删除或注释即可…

二:配置 spring 和 junit 整合, junit 启动时加载 springIOC 容器,这里你需要 Spring-test jar包

@RunWith(SpringJUnit4ClassRunner.class)    //告诉junitspring配置文件@ContextConfiguration(locations = {"classpath:spring/spring-dao.xml"})123

同样的,在测试类中我们会调用 Service 的逻辑,由于我们使用的是 Spring+SpringMVC+ 持久化框架,所以要注入一个 IService 接口(这里我直接对 DAO 进行测试了)

@Autowiredprivate SeckillDao seckillDao;12

接下来是测试逻辑,在编写测试代码之前建议覆盖实体中的 toString 方法,不然打印会很麻烦.

@Test    public void testqueryById(){        long id = 1000;Seckill seckill = seckillDao.queryById(id);System.out.println(seckill.getSeckillName());System.out.println(seckill);}    //JAVA没有保存形参的记录,如果你在 dao 中传了多个参数,那么需要声明它的形参对应的实参,否则 JVM 会显示找不到参数.声明方式稍后奉上@Test    public void testQueryAll(){List seckills = seckillDao.queryAll(0, 100);        for(Seckill seckill:seckills){System.out.println(seckill);}}@Test    public void testReduceNumber(){Date killTime = new Date();        //对增加进行测试的时候,只要数据库增加了一条数据,我们就默认这个方法执行成功了int updateCount = seckillDao.reduceNumber(1000L, killTime);System.out.println("updateCount = "+updateCount);}123456789101112131415161718192021222324

解决JAVA不保存形参的记录

int reduceNumber(@Param("seckillId")long seckillId,@Param("killTime")Date killTime);Seckill queryById(long seckillId);    /*** mysql的分页查询* @param offset 告诉它实际的形参* @param limit* @return*/List queryAll(@Param("offset")int offset,@Param("limit")int limit);1234567891011

java web junit_如何使用junit测试javaweb工程相关推荐

  1. idea java web运行_使用IDEA创建JavaWeb项目 部署本地tomcat并运行

    一.下载商业版IDEA 二.新建JavaWeb项目 1.在菜单栏找到File  >>  New  >> Project 2.在弹出的窗口中找到Java EnterPrise & ...

  2. 参数化测试 junit_参数化的JUnit测试

    参数化测试 junit 有时,您会遇到一个问题,就是尖叫使用"参数化"测试,而不是多次复制/粘贴相同的方法. 测试方法基本上是相同的,唯一改变的是传入的数据.在这种情况下,请考虑创 ...

  3. java web聊天室论文_基于javaweb聊天室.doc

    基于javaweb聊天室.doc 南嗦岌凌*4 文(设计) 本科生毕业论 题 目:基于Java网页版聊天室的设计与实现 姓名:陈义旺 学院:理学院 专业:信息与计算科学 班级:信科092 学号: 指导 ...

  4. java web 是什么_什么是javaweb开发

    Java:简单来说,Java是一门语言,是一门和计算机交流的语言. Web:web(World Wide Web)即全球广域网,它是一种分布式图形信息系统.简单来说就是 浏览器上的一个个网站. Jav ...

  5. java web国外 研究现状_国外javaWeb开发技术.doc

    国外javaWeb开发技术.doc 外java Web开发技术 MVC结构模式是XeroxPARC在20世纪80年代为编程语言Smalltalk-80 发明的一种软件设计模式. 缑艳阳认为MVC将应用 ...

  6. 1)Java web项目配置(最简单的javaweb项目)

    Java web示例一 1.创建一个简单的Maven 项目 2.在webapp/WEB-INF下创建两个文件夹classes和lib,classes用来存放编译后输出的classes文件,lib用于存 ...

  7. java web项目中连接mysql数据库,javaweb之eclipse工程连接mysql数据库

    javaweb之eclipse工程连接mysql数据库 准备工作: 1.在mysql官网下载mysqlconnection的jar包 输入网址:mysql.com-点击DOWNLOADS--下拉选择M ...

  8. web项目java程序的作用_基础知识(javaWeb工程目录结构)及各文件夹的作用

    在Eclipse中只要创建一个Dynamic Web Project,就可以根据创建向导创建出一个典型Java Web站点的目录结构.除非有特殊需要,在大多数情况下都没有必要修改这个目录结构,这也是W ...

  9. java web系统毕业论文_毕业论文--基于JavaWeb的网络购物中心系统的实现.doc

    毕业论文(设计) 题 目: 基于JavaWeb的购物网络中心系统 完 成 人: 班 级: 学 制: 专 业: 指导教师: 完成日期: 目 录 26014 摘 要( 1) 0 TOC \o " ...

最新文章

  1. tp5实现Redis的简单使用
  2. 113. Leetcode 674. 最长连续递增序列 (动态规划-子序列问题)
  3. python 作用域嵌套_python嵌套作用域问题
  4. LVS+Heartbeat+Ipvsadm+Ldirectord安装(四)
  5. linux电脑合盖后卡住了,解决ubuntu合盖后无法唤醒
  6. 电脑桌面点任何文件都打开计算机,桌面上的文件全部都打不开
  7. Vagrant (三) - 网络配置
  8. 月薪1万的乞丐--转载
  9. CentOS6.9 minimal版本安装图形化界面
  10. linux 软件源码安装教程,linux源码安装软件步骤
  11. Python中文手册
  12. 如何将几个pdf合并成一个pdf?
  13. SAP 采购信息记录
  14. TaHomA:一套让你在iPad上控制房子,将其变身智能房屋的神奇系统
  15. Java Web注册表单编写
  16. html5 斜边,css斜切角 斜边 倒角
  17. 图形学学习笔记2——点阵图形光栅化
  18. radio input 不可以更改的状态(disabled readonly)
  19. Axure数据可视化BI大屏设计组件库
  20. lisp算零碎面积总和_AutoLISP用于地籍面积量算与汇总

热门文章

  1. iOS之UITraitCollection
  2. @hot热加载修饰器导致static静态属性丢失(已解决)
  3. 工程项目管理需要注意哪些问题
  4. expect 批量修改服务器用户密码
  5. 不用开发实现RDS RDWeb门户美化和个性化
  6. [php入门] 4、HTML基础入门一篇概览
  7. UIImageView圆角,自适应图片宽高比例,图片拉伸,缩放比例和图片缩微图
  8. CMOS密码安全攻略
  9. SQL View 的使用语法与原则
  10. django 性能优化_优化Django管理员