通向架构师的道路第二十五天SSH的单元测试与dbunit的整合Word文档格式.docx
- 文档编号:15312495
- 上传时间:2022-10-29
- 格式:DOCX
- 页数:51
- 大小:1.22MB
通向架构师的道路第二十五天SSH的单元测试与dbunit的整合Word文档格式.docx
《通向架构师的道路第二十五天SSH的单元测试与dbunit的整合Word文档格式.docx》由会员分享,可在线阅读,更多相关《通向架构师的道路第二十五天SSH的单元测试与dbunit的整合Word文档格式.docx(51页珍藏版)》请在冰豆网上搜索。
junitreport"
>
2.
<
junit
printsummary="
on"
haltonfailure="
false"
failureproperty="
tests.failed"
showoutput="
true"
3.
classpath>
4.
pathelement
path="
${dist.dir}/${webAppQAName}/WEB-INF/classes"
/>
5.
fileset
dir="
${lib.dir}"
6.
include
*.jar"
7.
/fileset>
8.
${ext-lib.dir}"
9.
10.
11.
/classpath>
12.
formatter
type="
xml"
13.
batchtest
todir="
${report.dir}"
14.
15.
org/sky/ssh/ut/Test*.*"
16.
17.
/batchtest>
18.
/junit>
19.
junitreport
20.
21.
TEST-*.xml"
22.
23.
report
format="
frames"
report"
24.
/junitreport>
25.
fail
if="
26.
---------------------------------------------------------
27.
One
or
more
tests
failed,
check
the
for
detail...
28.
29.
/fail>
30.<
/target>
targetname="
<
junitprintsummary="
haltonfailure="
failureproperty="
showoutput="
<
<
pathelementpath="
/>
filesetdir="
<
includename="
formattertype="
batchtesttodir="
junitreporttodir="
reportformat="
todir="
failif="
---------------------------------------------------------
Oneormoretestsfailed,checkthereportfordetail...
在一般的产品级开发时或者是带有dailybuilding/nightlybuilding的项目组中我们经常需要检查最新checkin的代码是否影响到了原有的工程的编译,因为每天都有程序员往源码服务器里checkin代码,而有时我们经常会碰到刚刚被checkin的代码在该程序员本地跑的好好的,但是checkin源码服务器上后别人从源码服务器“拉”下来的最新代码跑不起来,甚至编译出错,这就是regressionbug,因此我们每天的打包要干的事情应该是:
1.程序员checkin代码时必须把相关的unittest也checkin源码服务器
2.次日的零晨由持续集成构件如:
cruisecontrol自动根据设好的schedule把所有的源码服务器的代码进行编译
3.运行单元测试
4.生成报告
5.打包布署到QA服务器上去
如果考究点的还会生成一份“单元测试覆盖率”报告。
那么有了这样的单元测试报告,项目组组长每天早上一上班检查一下单元测试报告就知道昨天代码checkin的情况,有多少是成功多少是失败,它们分别是哪些类,哪些方法,以找到相关的负责人。
同时,有了单元测试报告,如果测试报告上显示的是有fail的地方,该版本就应被视之为fail,不能被送给QA进行进一步的测试,直到所有的单元测试成功才能被送交QA。
三、如何在Spring下书写一个单元测试方法
3.1使用spring的注入特性书写一个单元测试
Spring是一个好东西,一切依赖注入,连单元测试都变成了依赖注入了,这省去我们很多麻烦。
我们可以将web工程中的applicationContext、Datasource甚至iBatis或者是Hibernate的配署都可以注入给junit,这样使得我们可以用IoC的方法来书写我们的单元测试类。
此处,我们使用的junit为4.7,而相关的spring-test库文件为3.1,我都已经在pom.xml文件中注明了.
我们先在eclipse里建立一个专门用来放单元测试类的srcfolder:
test/main/java。
注意一下单元测试类的codingconvention:
∙所有的测试类必须以Test开头
∙所有的测试方法名必须为public类型并且以test开头
∙所有的测试类全部放在test/main/java目录下,不可和src/main/java混放
类org.sky.ssh.ut.BaseSpringContextCommon
[java]viewplaincopyprint?
1.package
org.sky.ssh.ut;
3.import
org.junit.runner.RunWith;
4.import
org.springframework.test.context.ContextConfiguration;
5.import
org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
6.import
org.springframework.test.context.transaction.TransactionConfiguration;
7.import
org.springframework.transaction.annotation.Transactional;
9.@RunWith(SpringJUnit4ClassRunner.class)
10.@ContextConfiguration({
"
/spring/appconfig/applicationContext.xml"
/org/sky/ssh/ut/ds/datasource.xml"
/spring/hibernate/hibernate.xml"
})
12.public
class
BaseSpringContextCommon
{
13.}
packageorg.sky.ssh.ut;
importorg.junit.runner.RunWith;
importorg.springframework.test.context.ContextConfiguration;
importorg.springframework.test.context.junit4.SpringJUnit4ClassRunner;
importorg.springframework.test.context.transaction.TransactionConfiguration;
importorg.springframework.transaction.annotation.Transactional;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 通向 架构 道路 第二十 五天 SSH 单元测试 dbunit 整合
![提示](https://static.bdocx.com/images/bang_tan.gif)