Java高级程序设计第11章[JUnit和Log4j]理论课件_第1页
Java高级程序设计第11章[JUnit和Log4j]理论课件_第2页
Java高级程序设计第11章[JUnit和Log4j]理论课件_第3页
Java高级程序设计第11章[JUnit和Log4j]理论课件_第4页
Java高级程序设计第11章[JUnit和Log4j]理论课件_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、http:/junit和log4jjava高级程序设计第11章http:/中国十大品牌it教育机构掌握junit 4的基本结构使用junit4进行测试掌握log4j的基本语法应用log4j进行日志管理本章目标http:/中国十大品牌it教育机构测试存在的问题程序员程序员可写可不写可写可不写 少数程序员少数程序员必须要写必须要写 我们如此忙于代码的运行测试和调试我们如此忙于代码的运行测试和调试难道真的这么难吗?难道真的这么难吗? 如果有这样一个测试工具: 只要写少量的代码就能测试运行,甚至不需要在代码中写任何语句就可以在别处运行测试。http:/中国十大品牌it教育机构单元测试 什么是单元测试1

2、. 写了个类,要给别人用,会不会有bug?怎么办?测试一下。用main方法测试好不好?不好!不能一起运行!大多数情况下需要人为的观察输出确定是否正确?为什么要进行单元测试1. 重用测试,应付将来的实现的变化。2. 提高士气,明确知道我的东西是没问题的。单元测试由谁编写1. 程序员本身2. 测试驱动开发http:/中国十大品牌it教育机构junit4junit 4.x是能够自动化测试java代码的框架,junit的一大主要特点是,它在执行的时候,各个方法之间是相互独立的。junit 4.x,它利用 java 5 的新特性(尤其是注释)的优势,使得单元测试比起用最初的 junit 来说更加简单。h

3、ttp:/中国十大品牌it教育机构junit4 helloworldjunit4应用步骤1. new project2. 建立类3. 建立testcasehttp:/中国十大品牌it教育机构junit4 helloworld12341编写相应的测试用例编写相应的测试用例2右键测试用例选择右键测试用例选择junit测试测试选择测试用例中选择测试用例中要测试的方法要测试的方法 生成单独的生成单独的junit测试代码测试代码 教员演示教员演示junit4应用步骤应用步骤http:/中国十大品牌it教育机构运行junit123选中相应的方法右键选择选中相应的方法右键选择控制台打印结果控制台打印结果 j

4、unit显示成功显示成功(绿条绿条)http:/中国十大品牌it教育机构junit4 annotationtest: 测试方法1. (expected=xxexception.class)2. (timeout=xxx)ignore: 被忽略的测试方法before: 每一个测试方法之前运行after: 每一个测试方法之后运行beforeclass: 所有测试开始之前运行afterclass: 所有测试结束之后运行http:/中国十大品牌it教育机构junit4 annotation cont.1 1所有测试开始之前运行,初所有测试开始之前运行,初始化始化calculatorcalculator

5、对象对象2.2.所有测试结束之后运所有测试结束之后运行,销毁行,销毁caculatorcaculator对对象资源象资源注意:初始化,和销毁方法要写成静态方法注意:初始化,和销毁方法要写成静态方法http:/中国十大品牌it教育机构junit4 annotation cont.before after每一个测试方法之前运行每一个测试方法之前运行 每一个测试方法之前运行 每一个测试方法之后运行每一个测试方法之后运行 控制台输出的运行结果控制台输出的运行结果http:/中国十大品牌it教育机构测试异常如果该异常没有抛出如果该异常没有抛出(或者抛出了一个不(或者抛出了一个不同的异常),那么测同的异常

6、),那么测试就将失败试就将失败 http:/中国十大品牌it教育机构断言方法断言方法http:/中国十大品牌it教育机构断言方法断言方法 cont.预期值和结果值,断预期值和结果值,断言为言为equal http:/中国十大品牌it教育机构log4jlog4j是apache的一个开放源代码项目,通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。 http:/中国十大品牌it教育机构日志信息的优先级 日志信息的优先级 1. 分为off、fatal、error、warn、info、debug、all或者您定义的级别。

7、log4j建议只使用四个级别,优先级从高到低分别是error、warn、info、debug。通过在这里定义的级别,您可以控制到应用程序中相应级别的日志信息的开关。 http:/中国十大品牌it教育机构输出源的使用 一个输出源被称做一个appender1. appender包括console(控制台), files(文件), gui components(图形的组件), remote socket servers(socket 服务), jms(java信息服务), nt event loggers(nt的事件日志), and remote unix syslog daemons(远程unix

8、的后台日志服务)。http:/中国十大品牌it教育机构layout的配置 layout指定了log信息输出的样式 org.apache.log4j.htmllayout(以html表格形式布局) org.apache.log4j.patternlayout(可以灵活地指定布局模式) org.apache.log4j.simplelayout(包含日志信息的级别和信息字符串)org.apache.log4j.ttcclayout(包含日志产生的时间、线程、类别等等信息) http:/中国十大品牌it教育机构格式 %m 输出代码中指定的消息 %p 优先级 debug,info,warn,error

9、,fatal %r 输出自应用启动到输出该log信息耗费的毫秒数 %c 输出所属的类目,通常就是所在类的全名 %t 输出产生该日志事件的线程名 %n 输出一个回车换行符 %d 输出日志时间点的日期或时间如:%dyyy mmm dd hh:mm:ss,sss,输出类似:2002年10月18日 22:10:28,921 %l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。http:/中国十大品牌it教育机构log4j 应用示例例子1:显示日期和log信息 log4j.appender.a2.layout=org.apache.log4j.patternlayout log4j

10、.appender.a2.layout.conversionpattern=%dyyyy-mm-dd hh:mm:ss,sss %m%n 打印的信息是: 2009-10-22 11:49:42,866 select * from role where 1=1 order by createdate desc http:/中国十大品牌it教育机构配置文件的例子指定输出路径为控制台指定输出路径为控制台控制台输出的信控制台输出的信息的样式息的样式 指定输出到文件指定输出到文件daolog中中,且每天产生一个日志文件且每天产生一个日志文件 设置优先级别设置优先级别http:/中国十大品牌it教育机构本章总结单元测试工具 junit 4以及如何结合 ide eclipse进行单元测试。log4j主要三个组件构成:logg

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论