• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

软件测试中单元测试之Service的测试

发布: 2009-11-19 14:30 | 作者: 网络转载 | 来源: 领测软件测试网 | 查看: 44次 | 进入软件测试论坛讨论

领测软件测试网

软件测试中单元测试之Service的测试

测试Service,因为Service依赖的Dao, 所以只需Mock一个Dao即可。在这里我详细的介绍关于注册这个功能的测试

java 代码

public interface IAccountService extends IBaseService {
Account findAccountById(String id);
Account findAccounByName(String name);
void regist(Account account) throws ObjectExistsException;
}
注册功能的实现。
java 代码

public void regist(Account account) throws ObjectExistsException {
if(accountDao.findAccounByName(account.getName()) != null)
throw new ObjectExistsException("User's name is exists!");

accountDao.save(account);
}

测试代码
java 代码

protected void setUp() throws Exception {
control = MockControl.createControl(IAccountDao.class);
accountDao = (IAccountDao) control.getMock();
as = new AccountService();
as.setAccountDao(accountDao);
}


public void testFindAccountByName() {
String name = "wuhua";
accountDao.findAccounByName(name);
Account a = new Account("wuhua");
a.setId(name);
control.setReturnValue(a);
control.replay();
Account at = as.findAccounByName(name);
Assert.assertEquals(name, at.getId());
Assert.assertEquals(a, at);
control.verify();
}

首先我们建立一个关键字查询,name="wuhua";
然后调用Dao的方法,
然后自定义返回一个自己预期的对象,
最后通过比较这个对象判断结果是否是自己想要的

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

TAG: Service service 单元 软件测试


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网