测试:mock对象
2012-09-22 17:16
197 查看
using System; using System.Text; using System.Threading; using System.Messaging; namespace QueueSpace { //外部依赖的接口,它屏蔽了mock对象和真对象 class Queue { public virtual object readMessage() { return null; } } //mock对象,模拟真对象的行为 class TestQueue : Queue { private int index = 0; private object[] Data = { "hello","world"}; public override object readMessage() { while (index < Data.Length) { object data = Data[index]; index++; return data; } Thread.Sleep(60*60*60); return null; } } //真正的业务对象 class WorkQueue : Queue { MessageQueue queue = null; public WorkQueue() { string queueName = ".\\Private$\\MSMQDemo"; if (MessageQueue.Exists(queueName)) { queue = new MessageQueue(queueName); } else { queue = MessageQueue.Create(queueName, false); queue.SetPermissions("Everyone", MessageQueueAccessRights.FullControl); } } public override object readMessage() { System.Messaging.Message message = queue.Receive(); string s =(string)message.Body; return (object)s; } } //对象工厂 class QueueFactory { public static Queue makeQueue() { return new TestQueue(); } } }
using System; using System.Collections.Generic; using System.Linq; using System.Text; using QueueSpace; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { Queue queue = QueueFactory.makeQueue(); while (true) { object msg = queue.readMessage(); Console.WriteLine((string)msg); } } } }
相关文章推荐
- 模拟对象测试技术Mock(一)
- 持续集成之路 —— Mock对象引起的测试失败
- 持续集成之路 —— Mock对象引起的测试失败
- PHPUnit学习03---使用Mock对象解决测试依赖
- python cookbook 学习笔记 -- 1.3 测试一个对象是否是类字符串
- 题目:编写一个手机类(Mobile),包括手机品牌(brand)、手机型号(type),方法包括显示手机信息,并编写测试类进行对象的创建 public class Mobile { String br
- jQuery的Deferred对象测试笔记以及源码分析
- 测试小故事54:测试对象
- 面向对象进阶 03 生成 World 测试报告
- C++:类与对象1(类测试程序)
- 测试-TestNG and Mockito
- 黑马程序员-面向对象-07天-2 (抽象类测试)
- SQLPROMPT5.3对各种加密对象的解密测试
- Mock 测试应用场景
- 继续测试-查找一定范围内的自定义对象集合
- Mockito测试实例
- 测试对象管理—共享对象库
- 编写一个手机类(Mobile),包括手机品牌(brand)、手机型号(type), 方法包括显示手机信息,并编写测试类进行对象的创建
- Mockito 测试基本用法
- 用于组织,测试和操作对象及类的工具和技术-4 查询类属性