`

单元测试之实践三 Service的测试

阅读更多

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

java 代码
 
  1. public interface IAccountService extends IBaseService {  
  2.       Account findAccountById(String id);  
  3.       Account findAccounByName(String name);  
  4.       void regist(Account account) throws ObjectExistsException;  
  5. }  

   注册功能的实现。

java 代码
 
  1. public void regist(Account account) throws ObjectExistsException {  
  2.     if(accountDao.findAccounByName(account.getName()) != null)  
  3.         throw new ObjectExistsException("User's name is exists!");  
  4.       
  5.     accountDao.save(account);  
  6. }  


测试代码

java 代码
 
  1.     protected void setUp() throws Exception {  
  2.         control = MockControl.createControl(IAccountDao.class);  
  3.         accountDao = (IAccountDao) control.getMock();  
  4.         as = new AccountService();  
  5.         as.setAccountDao(accountDao);  
  6.     }  
  7.   
  8.   
  9. public void testFindAccountByName() {  
  10.         String name = "wuhua";  
  11.         accountDao.findAccounByName(name);  
  12.         Account a = new Account("wuhua");  
  13.         a.setId(name);  
  14.         control.setReturnValue(a);  
  15.         control.replay();  
  16.         Account at = as.findAccounByName(name);  
  17.         Assert.assertEquals(name, at.getId());  
  18.         Assert.assertEquals(a, at);  
  19.         control.verify();  
  20.     }  


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

分享到:
评论

相关推荐

    单元测试实践小结[5]

    单元测试实践小结[5] 软件测试 7.XML:XMLUnit 8.J2EE:MockRunner 9.GUI:JFCUnit,Marathor 10.Other:JTestCase(采用XML定义测试过程) 分层架构下的单元测试 1Web层的单元测试 主要测试Controller的数据结构化...

    自动化单元测试实践之路

    本文主要讲基于Java项目如何做自动化单元测试的实践。TestPyramid,如下图所示:图-1-1-TestPyramidUnit是整个金字塔的基石(在建筑行业,基石是做建筑物基础的石头),如果基石不稳,Service和UI何谈有构建意义呢?...

    CICD中高效测试基础架构的建设与实践.pdf

    为此,eBay 在大量实践的基础上,提出了“测试即服务(Test as a Service)”的测试基础架构,在此全新测试基础架构的支持下,测试的发起与执行将由“测试执行服务(Test Execution Service)”完成;测试执行过程中...

    性能测试进阶指南——LoadRunner11实战_(完整)扫描版_@vs.part1

    《测试实践丛书:性能测试进阶指南·LoadRunner 11实战》结合了很多工作中的实际案例,图文并茂,既适合渴望了解性能测试的新人,也适合对性能测试有一定认识和经验的中、高级测试工程师。同时,《测试实践丛书:...

    性能测试进阶指南——LoadRunner11实战_(完整)扫描版_@vs.part6

    《测试实践丛书:性能测试进阶指南·LoadRunner 11实战》结合了很多工作中的实际案例,图文并茂,既适合渴望了解性能测试的新人,也适合对性能测试有一定认识和经验的中、高级测试工程师。同时,《测试实践丛书:...

    接口测试实践SoapUI

    soapUI[1]是一个开源测试工具,通过soap/http来检查、调用、实现Web Service的功能/负载/符合性测试。该工具既可作为一个单独的测试软件使用,也可利用插件集成到Eclipse,maven2.X,Netbeans 和intellij中使用

    性能测试进阶指南——LoadRunner11实战_(完整)扫描版_@vs.part3

    《测试实践丛书:性能测试进阶指南·LoadRunner 11实战》结合了很多工作中的实际案例,图文并茂,既适合渴望了解性能测试的新人,也适合对性能测试有一定认识和经验的中、高级测试工程师。同时,《测试实践丛书:...

    性能测试进阶指南——LoadRunner11实战_(完整)扫描版_@vs.part5

    《测试实践丛书:性能测试进阶指南·LoadRunner 11实战》结合了很多工作中的实际案例,图文并茂,既适合渴望了解性能测试的新人,也适合对性能测试有一定认识和经验的中、高级测试工程师。同时,《测试实践丛书:...

    SOA非功能测试最佳实践

    本文内容包括:引言最佳实践标识为测试创建存根和模拟器的需求这些最佳实践在实际工作中的应用注意事项在实现较高级别的非功能能力方面的限制总结参考资料在开发面向服务的体系结构(Service-OrientedArchitecture,...

    性能测试进阶指南——LoadRunner11实战 part2

    《测试实践丛书:性能测试进阶指南·LoadRunner 11实战》结合了很多工作中的实际案例,图文并茂,既适合渴望了解性能测试的新人,也适合对性能测试有一定认识和经验的中、高级测试工程师。同时,《测试实践丛书:...

    性能测试进阶指南——LoadRunner11实战_(完整)扫描版_@vs.part2

    《测试实践丛书:性能测试进阶指南·LoadRunner 11实战》结合了很多工作中的实际案例,图文并茂,既适合渴望了解性能测试的新人,也适合对性能测试有一定认识和经验的中、高级测试工程师。同时,《测试实践丛书:...

    性能测试进阶指南——LoadRunner11实战_(完整)扫描版_@vs.part4

    《测试实践丛书:性能测试进阶指南·LoadRunner 11实战》结合了很多工作中的实际案例,图文并茂,既适合渴望了解性能测试的新人,也适合对性能测试有一定认识和经验的中、高级测试工程师。同时,《测试实践丛书:...

    性能测试进阶指南——LoadRunner11实战 part3

    《测试实践丛书:性能测试进阶指南·LoadRunner 11实战》结合了很多工作中的实际案例,图文并茂,既适合渴望了解性能测试的新人,也适合对性能测试有一定认识和经验的中、高级测试工程师。同时,《测试实践丛书:...

    性能测试进阶指南——LoadRunner11实战 part1

    《测试实践丛书:性能测试进阶指南·LoadRunner 11实战》结合了很多工作中的实际案例,图文并茂,既适合渴望了解性能测试的新人,也适合对性能测试有一定认识和经验的中、高级测试工程师。同时,《测试实践丛书:...

    HCIP-Cloud Service DevOps Engineer V2.0视频.zip

    目录网盘文件永久链接 ...4.1 敏捷软件测试理念、方法与实践 4.2 测试管理 4.3.1 常见的测试方法(1) 4.3.2 常见的测试方法(2) 4.3.3 常见的测试方法(3) 4.4 测试度量指标体系和质量评估 ....

    tdd-angular:角度测试实践

    TddAngular 该项目是使用版本9.1.3生成的。...运行单元测试运行ng test通过执行单元测试。运行端到端测试运行ng e2e以通过执行端到端测试。进一步的帮助要获得有关Angular CLI的更多帮助,请使用ng help或查看 。

    2020QECon 全球软件质量和效能大会(上海站)PPT汇总.zip

    分布式场景下“超级终端”体验测试实践 华为鸿蒙分布测试框架建设之路 再访深度链接-移动端测试之虫洞 avd容器化在携程的规模化应用实践 数字化转型时代的工程管理效能提升之路 打造聚能环:高可用服务端的质量保障...

    华为官方HCIP-Cloud Service DevOps Engineer LVC公开课培训视频教程【共57集】.rar

    24. 02-3持续测试与反馈-1敏捷软件测试理念、方法与实践 25. 02-3持续测试与反馈-2测试管理 26-28. 02-3持续测试与反馈-3常见的测试方法 29. 02-3持续测试与反馈-4测试度量指标体系和质量评估 30. 02-4持续安全与...

Global site tag (gtag.js) - Google Analytics