草庐IT

mock模拟

全部标签

c# - 如何使用简单注入(inject)器模拟模块/安装程序/注册表

Autofac有模块,Windsor有Installers和StructureMapRegistries...使用SimpleInjector如何将配置逻辑打包到可重用的类中?我试过:publicinterfaceIModule{}publicclassFooModule:IModule{publicFooModule(SimpleInjector.Containercontainer){container.RegisterSingleton();container.RegisterSingleton();}}我在CompositionRoot中使用它:publicstaticvoid

c# - 如何使用 Moq 修改模拟方法的调用参数?

是否可以修改模拟方法的调用参数?特别是我希望改变buffer在以下示例中为预填充的字节数组。例子:intMockedClass.Read(byte[]buffer,intoffset,intcount)解释:打电话Read负载count从offset读取的字节数到提供的字节数组buffer.现在我想在调用Read之后填充缓冲区已在我的应用程序代码中完成。这可能吗?如果是,我将如何连续调用Read?如果可能的话,我希望连续调用每次都返回不同的缓冲区。编辑:使用Setup像这样的命令:MockedClass.Setup(x=>x.Read(It.IsAny(),It.IsAny(),It.

c# - 测试和模拟私有(private)/ protected 方法。许多帖子,但仍然无法使一个示例起作用

我看过很多关于“Mockingaprivatemethod”的帖子和问题,但仍然无法让它工作,也没有找到真正的答案。让我们忘记代码的味道,你不应该这样做等等......据我所知,我做了以下事情:1)创建了一个类库“MyMoqSamples”2)添加了对Moq和NUnit的引用3)编辑AssemblyInfo文件并添加[装配:InternalsVisibleTo(“DynamicProxyGenAssembly2”)][程序集:InternalsVisibleTo("MyMoqSamples")]4)现在需要测试一个私有(private)方法。因为它是一个私有(private)方法,所以

c# - 模拟 IEnumerable<T> 类型的 GetEnumerator() 方法

以下测试用例在rhino模拟中失败:[TestFixture]publicclassEnumeratorTest{[Test]publicvoidShould_be_able_to_use_enumerator_more_than_once(){varnumbers=MockRepository.GenerateStub();numbers.Stub(x=>x.GetEnumerator()).Return(newList{1,2,3}.GetEnumerator());varsut=newObjectThatUsesEnumerator();varcorrectResult=sut.

c# - .NET:HttpClient 使用我的接口(interface) IHttpClient 模拟它,但有一个内部对象为 NULL,它是密封的

不知道有没有人能帮忙。我已经创建了自己的IHttpClient,因此我可以使用最小起订量模拟HttpClient。工作得很好,但有一个名为DetaultRequestHeaders的内部对象,它有一个名为Authorization的属性。我在我的构造函数或我的类中设置它,它在注入(inject)的IHttpClient中接受,当然在运行时一切都按预期工作。但是使用单元测试我得到一个错误提示Objectreferencenotsettoinstance....这是因为DefaultRequestHeaders为空。现在在进一步调查之后,它似乎是HttpRequestHeaders但它是一

c# - 使用 rhino mocks 为每次调用返回不同的实例

我有这个代码:Expect.Call(factory.CreateOrder()).Return(newOrder()).Repeat.Times(4);当它被调用四次时,每次都返回相同的实例。我想要返回不同的实例。我希望能够做类似的事情:Expect.Call(factory.CreateOrder()).Return(()=>newOrder()).Repeat.Times(4);这可以通过某种方式完成吗? 最佳答案 而不是使用.Return(newOrder());尝试使用.Do((Func)delegate(){return

Python小姿势 - # Python网络爬虫之如何通过selenium模拟浏览器登录微博

Python网络爬虫之如何通过selenium模拟浏览器登录微博微博登录接口很混乱,需要我们通过selenium来模拟浏览器登录。首先我们需要安装selenium,通过pip安装:```pipinstallselenium```然后我们需要下载一个浏览器驱动,推荐使用Chrome,下载地址:http://chromedriver.storage.googleapis.com/index.html,下载好后解压放到Python安装目录下的Scripts文件夹里面。接下来我们通过代码来模拟登录微博:```pythonfromseleniumimportwebdriverdriver=webdriv

c# - 没有 IoC 或依赖注入(inject)的模拟

有没有一种方法可以在单元测试中使用mock或fakes而不必使用依赖注入(inject)或反转或控制?我发现此语法可与TypeMockIsolator(http://learn.typemock.com/)一起使用。虽然它是一个商业产品,所以我希望其他框架(例如RhinoMocks)会在某个阶段引入这样的语法。///CanmockobjectsWITHOUTDEPENDENCYINJECTION.varhand=Isolate.Fake.Instance();varmouth=Isolate.Fake.Instance();Isolate.Swap.NextInstance().Wit

c# - 如何在 WPF 中模拟控制台?

我想要一些正确方向的提示,甚至是解决这个问题的现成解决方案,但我很困惑(我只是初学者/中级):我正在尝试在我的应用程序中实现SSH。SSH后端工作正常等等,但我被困在前端。什么WPF组合会为我提供一个足够的解决方案来模拟控制台?抛开一个完整的终端仿真,我很乐意将readline/writeline简单地转换成看起来像控制台的东西:-)我最好的方法是一个80x50的单个字符网格,结果是4000个单个单元格,这感觉完全是矫枉过正。另一个想法是制作一个控制台应用程序。绑定(bind)到另一个项目中的wpf-window。但是……这有可能吗?如何实现? 最佳答案

c# - 单元测试 Windows.Web.Http HttpClient 与模拟 IHttpFilter 和 IHttpContent,MockedHttpFilter 抛出 System.InvalidCastException

我有一个依赖于Windows.Web.Http(Windows10UAP应用程序)中的HttpClient的类。我想进行单元测试,因此我需要“模拟”HttpClient来设置Get-Call应该返回的内容。我开始使用HttpClient使用手写模拟IHttpFilter和IHttpContent进行“简单”单元测试。它没有按预期工作,我在Test-Explorer中收到InvalidCastException。单元测试看起来像:[TestMethod]publicasyncTaskTestMockedHttpFilter(){MockedHttpContentmockedContent