问题标签 [stub]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 使用反射存根懒惰地初始化委托字段
问题:
一个 .Net 2.0 类,由代码生成器生成数千个委托字段
- 不同的签名
- 代表可能会也可能不会返回值
- 没有泛型
这些委托可以在运行时快速初始化
- 初始化委托很简单但代价高昂
- 现在初始化整个批次的成本约为 300 毫秒 - 可以接受,但并不完美
- 用户可能会使用不到 10% 的这些委托——如果我们可以只加载这些委托会快得多!(不要为不使用的东西付费)
问题:
是否可以使用反射来懒惰地初始化委托字段?在伪代码中:
我有一种感觉,可以创建一个执行 (a)、(b) 和 (c) 的存根,但我还没有设法预测如何。
理想情况下,代码应该运行 .Net 2.0 和 Mono 2.0,并且不应该使用System.Reflection.Emit。不过,我也对使用 .Net 3.5 或 DynamicMethod 的解决方案感兴趣。
有任何想法吗?:)
asp.net - 更改存根代码后面的初始 Visual Studio 代码?
当我向 ASP.NET 项目 (WebForms) 添加新表单时,然后“查看代码”会添加一些基本的存根代码——基本的“使用”语句、form_load 事件等。
所以我要做的第一件事是添加一些项目使用等。无论如何,有没有将这个罐头代码更改为我想要的,而不是默认设置的?
模板会是答案吗?
TIA 凯文
ruby - 在没有 Fakeweb 的 Rails 测试中伪造 Web 请求
我在 Rails 应用程序中使用 Handsoap gem 和 Httpclient gem 作为驱动程序。
如何在测试用例中防止来自 Handsaop/Httpclient gems 的网络调用?
FakeWeb 不支持 Httpclient。
.net - 如何为 MEF 组件提供 API 存根?
Visual Studio 2010 SDK 附带许多程序集,例如 Microsoft.VisualStudio.Text.Data 和 Microsoft.VisualStudio.Text.UI,它们只是存根。若要为 Visual Studio 编写扩展,请引用这些程序集,但将引用的“复制本地”和“精确版本”属性设置为 false。在 Visual Studio 中加载扩展时,引用将绑定到 Visual Studio 先前加载的这些程序集的内部实现。
我想提供一个新的 MEF 导出组件,它充当其他 MEF 包可以的 Visual Studio 服务[Import]
。要使用该服务,其他组件将需要引用我的包 - 但我更喜欢它们引用一个存根,这样我就可以对我的服务的内部实现进行更改,而不会破坏引用它的其他包。如何提供一个“存根”程序集,其中包含来自某个任意程序集的公开可见的 API 组件,这样如果您引用存根,它将在运行时与提供的实现无缝协作?
java - 使用 java 和 axis2 对 Web 服务的多线程请求时出现“超时”
我正在使用一个缓慢的网络服务(每个请求大约 4 分钟),我需要在两个小时内完成大约 100 个请求,所以我决定使用多个线程。问题是我只能有 2 个线程,因为存根拒绝所有其他线程。在这里,我找到了解释和可能的解决方案:
我有同样的问题。它的来源似乎是 MultiThreadedHttpConnectionManager 中的 defaultMaxConnectionsPerHost 值等于 2。我的解决方法是创建自己的 MultiThreadedHttpConnectionManager 实例并在服务存根中使用它,如下例所示
我已经按照作者所说的做了,并将 HttpClient 传递给具有更高setMaxTotalConnections和setDefaultMaxConnectionsPerHost值的存根,但问题是现在应用程序冻结了(好吧,它并没有真正冻结,但它什么也不做)。
那是我的代码:
然后我将该存根和请求传递给每个线程并运行它们。如果我不设置 HttpClient 并使用默认值,则只有两个线程执行,如果我设置它,应用程序将无法运行。任何想法?
c# - 存根类的一种方法,并让其他真实方法使用这个存根方法
我有一TimeMachine
门课,它为我提供了当前的日期/时间值。该类如下所示:
我想TimeMachine
在我的测试中以这样的方式使用存根,即我只存根该GetCurrentDateTime
方法并让其他两种方法使用存根GetCurrentDateTime
方法,这样我就不必存根所有三种方法。我试着写这样的测试:
但是测试失败了。GetCurrentDate
返回default(DateTime)
而不是在内部使用GetCurrentDateTime
存根。
有什么方法可以用来实现这种行为,或者它只是我目前没有掌握的 RhinoMocks 的一些基本概念特征?我知道我可以摆脱这两个GetDate
/Time
方法并内联.Date
/.TimeOfDay
用法,但我想了解这是否可能。
ruby-on-rails - mocha 是否在存根(Rails)中运行代码?
我是 tdd 和存根的新手。当我存根一个方法时,我假设该方法中的任何代码都不会被执行?我试图伪造引发异常的方法,但我的测试结果表明该方法中的代码正在执行而不是被绕过。
谁能帮忙解释为什么?
我的存根是
在上下文中
这是我试图存根的模型中的方法。Spreedly::Subscriber 通常从网络上获取内容。
-
并且测试错误是
axis - Axis wsdl2java 未在存根中生成所有接口
我正在尝试使用 wsdl2java.bat 生成存根,我的 wsdl 包含两个绑定。我看到 wsdl2bat 为第一个绑定中的操作创建接口,但没有为第二个绑定中的操作生成任何内容。wsdl2java.bat -uri http://... -o 客户端 -d adb -s -u.
例如代码应该是这样的
这里的问题是,我确实在存根的 resDoc 实例中看到了 getEchoStringReturn 方法。
java - 用于 Web 服务生成的客户端存根:使用什么库?
从 WSDL 文件生成客户端存根的首选方法是什么?我尝试了一个 Axis2 插件,它完成了这项工作。eclipse 的 WTP 也可以生成客户端存根吗?什么是更好的解决方案?
你能解释一下为什么你推荐这样或那样的方式吗?
ps Apache CXF 是否有用于可视化生成客户端存根的 Eclipse 插件?
unit-testing - 单元测试 - 如何在存根数据库数据时设置测试数据
在我们的单元测试中,我有一个存根对象,它在内存中创建一组数据,以便在单元测试期间使用,以便不使用实时数据库。
我有单元测试,使用被测查询和提供给测试查询的值检查从该集合返回的行数。我的第一个问题是,因为我们使用的是 MSTest 并且它不支持参数化测试,所以我们对每组不同的值都有一个测试,并且最终进行了许多测试,只是提供给一个例程的值不同。使用不同的测试框架在政治上可能很困难。
使用数据也有点笨拙,因为它是通过代码将实体添加到集合中创建的,因此很难轻松查看集合中的数据,如果我们决定将来向该集合添加记录,我们需要更新应该在测试中返回的记录数,以便我们的测试非常依赖这些数据。似乎没有办法自动化这个。是这样吗?