liuzitinglijun 2009-04-09 08:16
浏览 316
已采纳

关于持久层的测试问题

大家好!
最近在自己做一个项目,老是被一些常规问题卡住,希望大家能够帮我一起想想办法,谢谢了。

1.TOMCAT6.0 中,我在WEB工程的META-INF目录中配置了一个CONTEXT.XML的文件,用来配置应用程序的公共数据源。在程序中用SPRING框架的JNDI访问数据源的方式将数据源加载进去。
问题:
a) 目前我的程序大体分为逻辑上的三层:DAO(持久层),SERVICE(业务层),WEB(控制层),DAO层用的技术是IBATIS,之前没有想到需要使用SPRING,所以我直接在SqlMapConfig.properties中配置了链接数据库的相关字符串,直接点说就是用了IBATIS链接数据库的方式进行了数据库的连接,所以在测试的时候非常方便,在持久层内写了一些相关的访问数据库的方法后非常方便的就能够在本地测试这些访问是否成功,详细代码如下:
[code="java"]
// test mothod must test****
public void testGetUserProfile()
{
try
{
UserProfile userProfile = userProfileDaoiBatis
.getUserProfile("N0001");
System.out.println(userProfile.getUserName());
System.out.println(userProfile.getTelePhone());

        Assert.assertNotNull(userProfile.getUserName());
    } catch (Exception e)
    {
        e.printStackTrace();
    }
}

[/code]
但是,如果换成了TOMCAT6.0配置数据源的方式,并且用SPRING读取数据源,那是不是每次我JUNIT单体测试的时候都需要启动服务器,发布我的应用程序才行?这样不是很麻烦?有没有更好的方法?

b) 我现在用ECLIPSE进行开发,之前都是用MYECLIPSE开发的,我记得用MYECLIPSE的时候每次只要是修改JSP页面的一些元素好像程序都是不需要重新编译的,只有修改了类文件后才需要重新编译并部署一下应用程序。那现在用ECLIPSE我用的是ANT编译和部署应用程序,我的部署是直接将应用程序打成WAR包后再部署到TOMCAT服务器上,虽然执行一下脚本就好了,也很方便,但是如果我是做页面样式的调整,一点点的宽度一点点的调整,那是不是每一次调整都要执行一下脚本。。。。这样太麻烦了,是否有其他更好的方法,能够让页面文件直接能够映射到服务器上的页面文件中?也像MYECLIPSE一样修改页面文件直接可以运行程序查看结果?MYECLIPSE是如何实现的?

谢谢大家!!!

  • 写回答

1条回答 默认 最新

  • hantsy 2009-04-14 21:57
    关注

    单元测试的时候,可以 DriverManagerDataSource ,直接在Spring 配置就行了。
    集成测试和真实环境,可以在容器真实环境中运行,使用其它 DataSource 替代,可以获得更好的性能。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 关于c++外部库文件宏的问题,求解
  • ¥15 office打开卡退(新电脑重装office系统后)
  • ¥300 FLUENT 火箭发动机燃烧EDC仿真
  • ¥15 【Hadoop 问题】Hadoop编译所遇问题hadoop-common: make failed with error code 2
  • ¥15 vb6.0+webbrowser无法加载某个网页求解
  • ¥15 RPA财务机器人采购付款流程
  • ¥15 计算机图形多边形及三次样条曲线绘制
  • ¥15 根据protues画的图用keil写程序
  • ¥200 如何使用postGis实现最短领规划?
  • ¥15 pyinstaller打包错误