NHibernate+Oracle10g搭建一个项目架构全程解析(四)

来源:互联网 发布:java 反射 混淆 编辑:程序博客网 时间:2024/05/16 13:01

六、搭建你的测试项目

     前面,我门已经完成了持久的搭建工作,接下来要做的就是测试。这里我才用轻量级的NUnit作为单元测试工具

   

、创建项目OfficeTes,项目类型为类库,如下:

 

 

2、安装NUnit-2.4.7-net-2.0.msi,记住安装目录位置,后面有用

 

3、在测试项目里添加对NUnit的引用,当然还有被测试项目(OfficeDAL)以及依赖项目(OfficeModel)的引用

    完成后情况如上面的图示

 

4、在测试项目中添加NHibernate的配置文件hibernate.cfg.xml,文件内容如下
 
     使用过Hibernate的同志应该都知道上面配置的含义,这里我不再赘述,有一点需要说明的是,对于上面的驱动类NHibernate.Driver.OracleClientDriver和方言NHibernate.Dialect.OracleDialect,
这些类都是可以在NHibernate.dll中可以找到的,你可以用对象浏览器打开NHibernate.dll,找到上面的类
 

5、NHibernate的日志处理采用Log4Net,如果您需要看到Nhibernate的日志输出,请在测试项目里添加App.config文件,文件里面添加Log4Net的相关配置
配置内容如下:

 

 

6.编写我们的测试类,这里我准备对前面持久层项目OfficeDAL的BaseService类的方法进行测试,于是,我编写了BaseServiceTest类

 

7.为了使NUnit技能用于测试,又能用于调试,我们对测试项目作如下配置
 7.1.在项目OfficeTest上鼠标右键-->属性---调试,出现如下界面

启动操作项选择"启动外部程序" ,指向NUnit.exe的安装路径,启动选项的“命令行参数”填写测试项目编译后的dll文件名

启动选项的“工作目录”填写测试项目的调试目录。

 

OK,到此,我们已经可以测试、调试我们的项目了,您可以在测试项目里面设置断点,然后按F5开始调试,或者Ctrl+F5直接运行测试

绿色表示测试成功

 

7.2.几个注意事项:
   hibernate.cfg.xml的属性"复制到输出目录"必须设置为始终复制

   App.config中关于NHibernate的日志级别关系到测试速度快与慢

   hibernate.cfg.xml中的数据库连接字符串必须正确,这一点可以通过“服务器资源管理器”得到应证。

 

8、要使Web项目能够正常运行并访问持久层,必须将测试项目下的hibernate.cfg.xml文件拷贝到Web项目下的Bin目录内,如下图:

原创粉丝点击