16
JTester 和 和和和和和和 和和和 2009-05-12

JTester 和 常用插件介绍

  • Upload
    skylar

  • View
    126

  • Download
    0

Embed Size (px)

DESCRIPTION

JTester 和 常用插件介绍. 吴大瑞 2009-05-12. Agenda. 测试命名规范 MoreUnit Fluent Syntax ( 断言 ) POJO Serialize Wiki 方式准备测试数据 和 martini 框架集成的初步设想 代码覆盖工具. 测试命名规范. 业务代码和测试代码放在同一个工程下 业务代码和测试代码路径要区分开 业务类和测试类 package 最好一样 测试类命名 (业务类 1:N 测试类) BizClazTest BizClaxTest_Spec 测试方法命名 (业务方法 1:N 测试方法) - PowerPoint PPT Presentation

Citation preview

Page 1: JTester  和 常用插件介绍

JTester 和常用插件介绍

吴大瑞

2009-05-12

Page 2: JTester  和 常用插件介绍

Agenda

测试命名规范 MoreUnit Fluent Syntax ( 断言 ) POJO Serialize Wiki 方式准备测试数据 和 martini 框架集成的初步设想 代码覆盖工具

Page 3: JTester  和 常用插件介绍

测试命名规范

业务代码和测试代码放在同一个工程下 业务代码和测试代码路径要区分开 业务类和测试类 package 最好一样 测试类命名 (业务类 1:N 测试类)

• BizClazTest• BizClaxTest_Spec

测试方法命名 (业务方法 1:N 测试方法)• method• test_method• test_method_spec• test_method1_method2

Page 4: JTester  和 常用插件介绍

MoreUnit Plugin

代码标签装饰 创建测试 package, class, method 测试类 跳转 业务类 快捷键 ctrl + J 和 ctrl + U Missing testmethod view 代码重构支持

Page 5: JTester  和 常用插件介绍

MoreUnit Plugin

Page 6: JTester  和 常用插件介绍

MoreUnit Plugin

对命名规格支持的不充分 误判 User

• UserTest• UserServiceTest

找不到• UserTest_NotFound

希望改进• 提供一个视图:列出所有测试类,测试方法

Page 7: JTester  和 常用插件介绍

Fluent Syntax

Assert Syntax: want.object(value).assert(expected)

Page 8: JTester  和 常用插件介绍

Fluent Syntax

JMock Method Expcetd Syntax: will.call.one(service).method(…)

Page 9: JTester  和 常用插件介绍

Fluent Syntax

JMock Para Assert: the.object.assert(expected).wanted()

Page 10: JTester  和 常用插件介绍

POJO Serialize

应用场景

SerializeUtil.toDat(pojo, “?.dat”) SerializeUtil.toXML(pojo, “?.xml”) Biz biz = SerializeUtil.fromDat(Biz.class, “?.dat”) Biz biz = SerializeUtil.fromDat(Biz.class, “?.xml”)

xml vs. dat ?

Page 11: JTester  和 常用插件介绍

Wiki 方式准备测试数据

Dbunit xml 方式的缺点• 不直观 • 难编辑

Wiki dataset

4 种策略

Page 12: JTester  和 常用插件介绍

和 martini 框架集成的初步设想

在工程中建一个 commontest• 准备测试第三方 jar 包• 准备通用的 spring 文件• 准备 ibatis 的 sqlmap 文件

要测试工程依赖 commontest 工程• 准备项目中自己用到的 spring 文件• test-java 目录

需要测试的类 ? 难以测试的类? (重构 ? 不测试 ? )

Page 13: JTester  和 常用插件介绍

代码覆盖工具 EclEmma

Page 14: JTester  和 常用插件介绍

Resources

Moreunit http://moreunit.sourceforge.net/ JTester http://code.google.com/p/java-tester/ Eclipse Wiki http://eclipsewiki.sourceforge.net/ EclEmma http://update.eclemma.org/

Page 15: JTester  和 常用插件介绍

结束语

测试的作用不仅仅是测试代码

Page 16: JTester  和 常用插件介绍

Q&A

Q & A