持续集成之路——使用SpringTestDbunit管理数据集的一个问题

在进行数据访问的单元测试,一般都会新增数据记录的情况,那么在设置数据集一般会是: 然后在测试方法中,通过验证新增的记录数或者新增记录的内容,确保被测试方法正确执行: @Test @DatabaseSetup("user/UserService-addUser-dataset.xml") public void testAddUser(){ User us...
阅读(3032) 评论(0)

持续集成之路 —— Mock对象引起的测试失败

今天遇到了一个很奇怪的问题,纠结了好久。在和同事念叨这个问题时,突然想到了问题所在。        问题现象: 在一个Service的单元测试类中有八个测试用例,单独运行时都可以正常通过。可是一旦一起运行时,总是会有固定的两个测试失败。        问题原因:有一个测试用例mock了Service依赖的一个Dao对象,之后的用例再使用这个Dao对象时,就使用了mock,而不是Spring初始化的...
阅读(3300) 评论(0)

持续集成之路——服务层的单元测试

在完成了数据访问层的单元之后,接下来看如何编写服务层(Service)的单元测试。服务层应该是整个系统中得重中之重,严密的业务逻辑设计保证了系统稳定运行,所以这一层的单元测试也应该占很大比重。虽然一般情况下单元测试应该尽量通过mock剥离依赖,但是由于在当前的项目中数据访问层使用spring-data框架,并没有包含太多的逻辑,因此我就把服务层和数据访问层放在做了一个伪单元测试。        一...
阅读(4146) 评论(1)

持续集成之路——数据访问层单元测试遇到的问题

在编写数据访问层的单元测试时,遇到不少问题,有些问题可以很容易Google到解决方法,而有些只能自己研究解决。这里分享几个典型的问题以及解决方法。先交代一下用到的测试框架 Spring Test + SpringTestDbUnit + DbUnit。一、先说一个低级的问题。Spring通过标签提供对内存数据的支持,形如:可是在启动时,却总是提示错误:Caused by: org.xml.sax....
阅读(12900) 评论(0)

持续集成之路——数据访问层的单元测试(续)

在上一篇中,完成了对测试用数据源的配置。下面继续构建可运行的测试。        三、使用DBUnit管理数据        测试的维护一直是我比较头疼的问题,期望可以有一个比较易于维护和可复用的方法来管理这些数据。在没有更好的方法之前,暂时选用DBUnit。(反思:其实我一直在为没有发生的事情担心,使得事情根本没有进展。从已存在的、最简单的地方入手,才是正确的处理方式。)        在pom...
阅读(3118) 评论(0)

持续集成之路——数据访问层的单元测试

作为保证项目质量的重要工具持续集成一直是一个热议的话题,也被业界积极采用。我也试图记录自己在尝试过程中遇到的点点滴滴。单元测试作为持续集成的基石,是绝对不可或缺的部分。如何写好单元测试?如何让代码变得具有可测试性?如何维护单元测试?这些问题萦绕心头已久,现在从数据访问层入手,逐步深入,记录所思所为。...
阅读(9918) 评论(7)

JavaScript在Android的WebView中出现一个问题

今天被一个问题困扰,有一个页面在浏览器(无论是手机还是PC)上运行良好,而通过WebView就出现了问题,有两个值得计算始终出错。于是就通过alert,把这个值显示出来,发现和浏览器上计算的结果差了很多,本来是正数,却变成了负数。仔细比对发现,其中一部分数字被抹掉了,这些数字都是通过parseInt由字符串转化而来的。而被抹掉的值,和其他正常的数字唯一区别是,它们都是以0开头的,比如“04903”...
阅读(2373) 评论(0)

关于建立公司内部交流分享活动的一点尝试

如今的世界变化太多,而一个人的精力和时间总是有限,可是如何快速地提升自己或者整个团队水平是一个亟待解决的问题。在公司内部开展定期地交流活动,一直是我十分想做的事情,最近在公司的大力支持下的终于得以实现。      一、为什么要开展交流活动?        1. 开拓视野,分享经验。        作为技术人员,我们更倾向于自己解决问题,很多时候我们在一个问题上纠缠太久,而旁边的同事一句话,却让我们...
阅读(8639) 评论(1)

Tortoise SVN出现OPTIONS of '': could not connect to server错误

今天把PC从一个有代理的环境中移了出来,开机后的第一件事情就是把所有应用中的代理设置去掉,当然也包括TortoiseSVN。通过TortoiseSVN的Context Menu --> Settings -->Network ,把Enable Proxy Server前面的勾去掉。正常应该就没有问题了,可是更新本地工作目录时,还是出现了OPTIONS of '': could not connec...
阅读(19072) 评论(2)

WPF遇到的一个小问题

这两天又开始学习在VS2008种用WPF编写Windows应用程序,遇到了不少小问题。下面几个错误困扰了好久:已定义了一个名为“InitializeComponent”的具有相同参数类型的成员已经包含“_contentLoaded”的定义...类似的几个错误。原因:由于这几个控件是从另外一个复制过来的,xaml文件 x:Class后面的值没有改过来,还是原来控件对应的类。...
阅读(2486) 评论(0)

配置Nexus私服遇到的几个小问题

今天在安装配置nexus私服时,遇到了几个小问题:1. 无法启动。通过 ./nexus start启动时,会自动退出。通过./nexus console查看,发现时由于目录的权限问题,导致无法写日志和pid文件。Nexus的官方文档建议安装到 /usr/local下面,并且不建议使用root账户启动。不过如果安装到/usr/local下面,对某些目录的操作需要root权限,所以建议解压到一个叫做n...
阅读(12163) 评论(3)

Eclipse无法直接运行Maven构建的webapp

最近开发的一个项目一直存放在移动硬盘上,结果前天由于查了多个设备,盘符就变了,Eclipse也就找不到了项目。把项目拷回本地磁盘后,重新打开。直接Run On Server,提示ClassNotFoundException,找不到Spring ApplicationContext。进到%ECLIPSE_WORKSPACE%\.metadata\.plugins\org.eclipse.wst.se...
阅读(4797) 评论(0)

最近面试的一点感想

最近不得不开始寻找新的工作机会,面试是必不可少的环节。最近几次的屡屡失败,也让陷入思考,或许自己一直被幸运关照,能顺利加入到一个个令人兴奋的团队,认识一批批珍贵的同事。细细想来,也许以下几条是失败的主要原因:        1、非科班出身,基础知识薄弱,尤其是算法。自己本来就不是聪明的人,对于算法这类的东西领悟力十分地低,看过几页书,写过几个例子,在实际项目中没有应用,于是就又被渐渐遗忘。...
阅读(2572) 评论(3)

Redmine、Apache、Git集成遇到的重重困难

Remine、Apache和Git这个三个软件,无论哪一个,单独说来安装、配置和使用都是非常方便的,可是想把它们结合起来,却不是那么容易的事情。这里就把这一周来遇到的种种问题记录下来。        一、Redmine + Apache的fcgi配置         参考文章:        http://www.redmine.org/projects/redmine/wiki/RedmineI...
阅读(11343) 评论(2)

简单方便Git的艰难第一步

现在Git已经是铺天盖地了,如果再不用尝试真的是要out了。于是决定在新的项目中应用Git。奋战了一个下午加另外2个小时,终于搞定。发现Git真的真的是很简单,超出我的意料。可是既然简单,为什么又是艰难的呢?因为从之前CVS、SVN的思路和使用习惯转过来的确有点费劲。        问题一:Git的服务器版本是什么样的?如何安装?        SVN是有一个svnserver,可以通过yum或者...
阅读(9387) 评论(3)
214条 共15页首页 上一页 1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:1130003次
    • 积分:12347
    • 等级:
    • 排名:第1283名
    • 原创:174篇
    • 转载:6篇
    • 译文:34篇
    • 评论:398条
    博客专栏
    最新评论
    独乐乐不如众乐乐