`
eggbucket1
  • 浏览: 78365 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
文章分类
社区版块
存档分类
最新评论

JavaEE常用测试

 
阅读更多

目录【可点击浏览】
1...Junit3.8
2...Junit4.x
3...使用Cactus进行容器内测试
4...使用EasyMock进行模拟测试
5...使用JMock进行模拟测试
6...使用JUnitPerf进行性能测试
7...使用Cobertura统计测试覆盖率
8...整合Ant与Junit生成测试报告
9...使用TestNG进行测试
10..使用Java操作Office生成性能测试报告
11..使用Java操作PDF生成性能测试报告
12..使用JsUnit进行JavaScript测试
13..使用FireBug调试JavaScript
14..使用Cactus测试DWR应用
15..使用DBUnit进行数据库测试
16..补充——NUnit


Junit3.8
非常经典的版本,它也是JUnit3.x系列 的最后一个版本,也是最重要的一个版本
几乎所有Java的IDE都支持JUnit3.8,比如Eclipse、NetBeans、IntelliJ IDEA
JUnit的官网是:http://www.junit.org

Junit4.x
JUnit是XUnit家族 最早的产品。从JUnit4开始,跟JUnit3.8就有了翻天覆地的变化
它开始支持Java Annotation ,但它与JUnit3.8的本质的理论基础都是一样的
JUnit本身的代码是非常少的,但是可扩展性极强,它应用了大量的设计模式
由于它的扩展性极强,所以目前很多的测试的框架都是基于JUnit的

使用Cactus进行容器内测试
这种测试主要面向JSP、Servlet、Filter ,它们依赖于Servlet容器,比如Tomcat
它们所使用的某些对象都是由容器来产生的,我们自己是无法New 出来的
这时我们可以使用Cactus框架来帮助我们进行容器内测试
Cactus是仙人掌的意思,它是由Apache软件基金会所开发出来的一个框架
它本身是基于JUnit3.8的 ,它很长时间没有更新了,因此它的版本还是比较老的
但还是很好用,不更新并不表示它不好。在公司和企业中,它的使用还是很多的

使用EasyMock进行模拟测试
Mock的意思就是模拟,EasyMock本身就是进行模拟测试的一个框架
单元测试时,可能我们的代码要依赖于 其它的类,但这些类可能位于JAR包中
而我们还要去使用这些类,这时就可以通过EasyMock来模拟
来生成一个,相对于我们所要模拟的目标对象来说,生成相应的一个代理
其实EasyMock本身所采用的底层的原理就是Java的动态代理

使用JMock进行模拟测试
它也是用来进行模拟测试的,但是它与EasyMock的侧重点不太一样

使用JUnitPerf进行性能测试
JUnitPerf也是基于JUnit 的。所谓性能测试 :即测试系统到底能承受多大的负载
比如模拟10个用户,每个用户运行100次,看系统能否承受得了
以及统计执行完的一个分析的结果,看一看系统是否符合你的预期
如果不符合的话,你可以对系统进行优化

使用Cobertura统计测试覆盖率
Cobertura本身不是英文,它是西班牙语。它是用来统计测试覆盖率的
所谓测试覆盖率 是相对应被测试的代码【即源代码】来说的
而我们单元测试,最终的目的还是测试我们的源代码
比如100行源代码,那么到底有多少行被我们的单元测试所执行了,即覆盖了呢
而Cobertura即用来统计覆盖率,它很小但功能非常强,它是结合Ant一起使用的
有了Cobertura,我们在开发的时候就可以对我们的测试,做到心中有数
比如测试覆盖率能达到70%甚至80% 的话,就表示目前系统基本上是测试良好的
对于有的公司来说,则要求测试覆盖率达到80%,这是个非常非常高的要求了
因为有一些情况是无法模拟出来的,比如网络突然断线或者数据库突然当掉

整合Ant与Junit生成测试报告
Apache的Ant可以和JUnit进行整合,生成一个XML文件
最后XML文件可以转化为HTML文件 ,然后就会很清晰的呈现出我们的测试报告
这种测试报告可以统计出你的测试有多少成功了、有多少失败了、以及原因等等

使用TestNG进行测试
TestNG是最近推出的一个测试框架,它比JUnit更加强大
相应的使用起来也更加复杂一些。目前对于TestNG的资料,还不是特别的多

使用Java操作Office生成性能测试报告
如果一个测试报告,比如说都输出在命令行里面了,显然是非常差的一种方式
我们需要不断的去运行性能测试,比如说一周运行一次
如果都生成在命令行里面,那么就要把结果一点点的拷贝出来
比如说拷贝到Excel里面,然后才能统计出一份报告
接着下周再去测试,再去这样粘贴,显然是非常麻烦而又非常笨拙的一种方式
那么我们就可以使用Java来操作Office生成性能测试报告
关键就在于Java怎么操作Office,这时可以使用Apache的POI组件 进行操作

使用Java操作PDF生成性能测试报告
它与Java操作Office是比较类似的,都是生成一个统计 的一种方式

使用JsUnit进行JavaScript测试
JsUnit也是XUnit家族 的产品,是专门进行JavaScript测试
自从AJAX出来之后,JavaScript的重要性达到了一个前所未有的高度
JavaScript测试一直被人所诟病,因为它本身写起来就很繁琐,测试就更麻烦了

使用FireBug调试JavaScript
FireBug Mozilla Firefox 的一个插件,它可以对JavaScript进行跟踪、调试
它的功能非常强大,应该说是用起来最好的一个调试JavaScript的一个工具了
Web开发中若没有FireBug,页面开发几乎寸步难行,它是非常强大的一个工具

使用Cactus测试DWR应用
DWR已经封装了HttpServletRequest、HttpServletResponse、ServletConfig
我们使用Cactus所要做的,就是利用反射,调用DWR里面的一些受保护的方法

使用DBUnit进行数据库测试
DBUnit本身也是基于JUnit的 ,它是用来进行数据库测试 的一个框架

补充:NUnit
NUnit也是单元测试的一个框架,使用方式跟JUnit很像
它是从JUnit演变过来的 ,它本身也是基于JUnit的思想

分享到:
评论

相关推荐

    JavaEE测试题(Spring2)

    根据给定的文件信息,以下是对“JavaEE测试题(Spring2)”中涉及的关键知识点的详细解析: ### Spring框架核心概念与应用 #### 1. Spring框架的重要性及关注点 Spring框架作为Java企业级开发中的重要组成部分,...

    javaee-testing:单元测试 com Java EE

    首先,JUnit是Java领域中最常用的单元测试框架。它提供了注解、断言和测试运行器等基础设施,使得编写和执行测试变得简单。开发者可以创建一系列的测试用例,每个用例对应于一个特定的功能点,以确保代码的正确性。...

    javaEE 的图书管理系统

    3. **DAO(Data Access Object)模式**:DAO是Java编程中一种常用的持久化模式,它封装了数据库操作,使得业务逻辑与数据访问层分离,提高代码的可测试性和可维护性。 4. **SessionFactory和Hibernate**:虽然描述...

    JavaEE开发技术与案例教程——刘彦君 课件

    9. **第11章 - 基于JavaEE的测试**:测试是软件开发中的重要环节,本章会介绍单元测试、集成测试以及自动化测试工具的使用,如JUnit和Selenium,确保代码的质量和稳定性。 这些课件全面覆盖了JavaEE开发的主要技术...

    JavaEE程序设计与应用开发源代码.rar

    9. **JSF、Spring MVC与Struts**:这些是JavaEE应用中常用的MVC框架,帮助开发者构建用户界面。JSF是官方标准,Spring MVC是Spring框架的一部分,Struts是早期流行的选择,但现在更多地被Spring MVC取代。 10. **...

    javaEE注册登录系统

    MD5(Message-Digest Algorithm 5)是一种常用的密码哈希函数,可以将任意长度的信息转化为固定长度的哈希值。在注册过程中,用户输入的密码经过MD5加密后存储在数据库中。在登录时,用户输入的密码同样加密,然后与...

    网上购书系统javaEE

    4. **MVC设计模式**:Model-View-Controller模式是Web应用开发常用的设计模式,有助于分离业务逻辑、数据模型和用户界面。在JavaEE中,Struts或Spring MVC框架常用于实现这一模式。 5. **框架使用**:Spring框架...

    SSH+javaEE整合

    SSH+JavaEE整合是企业级应用开发中常用的技术栈,主要涵盖了Spring、Struts2和Hibernate这三个开源框架,以及JavaEE平台的相关技术。这三种框架的结合,为开发者提供了强大的模型-视图-控制器(MVC)架构支持,以及...

    JAVAEE网页聊天系统

    MVC(Model-View-Controller)是一种常用的设计模式,用于分离业务逻辑、数据模型和用户界面。在这个项目中,Model代表数据模型,处理数据的增删改查;View负责展示数据,提供用户界面;Controller作为两者之间的...

    JavaEE案例详解

    5. **测试**:单元测试、集成测试和系统测试都是必不可少的,JUnit和TestNG是常用的Java测试框架。 6. **部署**:将开发好的应用打包成WAR或EAR文件,然后上传到应用服务器进行部署。 7. **维护与优化**:上线后,...

    JavaEE实验环境的搭建教程

    2. **选择集成开发环境 (IDE)**:JavaEE开发常用的IDE有Eclipse、IntelliJ IDEA等。Eclipse是一个免费且开源的IDE,适合初学者;IntelliJ IDEA则以其高效和智能编码体验受到开发者喜爱。安装IDE后,需要配置JDK路径...

    吉林大学javaee上机所需软件及文档说明

    MySQL是一种广泛使用的开源关系型数据库管理系统,它是JavaEE应用中常用的后端存储解决方案。在上机课中,学生将学习如何创建数据库、表结构,执行SQL查询,以及如何通过Java的JDBC接口与MySQL进行数据交互。理解...

    javaEE中Excel导入数据库范例

    Struts是JavaEE中常用的MVC(Model-View-Controller)框架,负责处理请求、控制业务流程和展示视图。 2. **Struts框架**:Struts是一个开源的Web应用框架,它的核心功能包括请求调度、动作映射、表单处理和国际化...

    javaEE的健康管理系统(SSH)

    6. **毕业论文与毕业设计**:这个项目可能是一个学生毕业设计或论文的一部分,因此包含了完整的开发过程,从需求分析、系统设计到编码实现,再到测试和文档编写。这部分内容对学习者来说具有很高的参考价值,可以...

    javaEE商品供应管理系统.zip

    5. **Spring框架**:Spring是JavaEE应用的常用框架,提供依赖注入、AOP(面向切面编程)、事务管理等功能。在本系统中,Spring可能被用来管理bean和处理业务逻辑。 6. **Spring MVC**:Spring的MVC模块用于构建Web...

    javaEE网站购物项目简例

    3. **MVC设计模式**:Model-View-Controller模式是Web应用中常用的设计模式。Model负责业务逻辑和数据管理,View负责用户界面展示,Controller接收请求并调用Model进行处理,再将结果传递给View。这个项目可能使用了...

    javaEE的项目

    Spring MVC是JavaEE项目中常用的控制器框架,它提供注解驱动的方式来简化控制器的开发。 2. **服务(Service)**:服务层是业务逻辑的主要载体,它封装了与数据库交互的逻辑,以及复杂的业务规则。通常,服务层会...

    基于JAVAEE的医院病房管理系统

    综上所述,基于JAVAEE的医院病房管理系统涵盖了大量的IT技术,从开发、设计、数据库管理到测试和运维,每个环节都需要专业技能和深入理解。通过这个项目,开发者不仅可以提升JAVAEE应用的开发能力,还能对整体软件...

    博客系统——JAVAEE

    在本系统中,DAO层负责与数据库交互,通过Hibernate框架,将数据库操作与业务逻辑分离,提高代码的复用性和可测试性。 4. **dom4j库**: dom4j是一个开源的XML处理库,它可以方便地解析、创建和修改XML文档。在...

Global site tag (gtag.js) - Google Analytics