问题标签 [stubs]
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# - 在单元测试 C# 中使用 Shims/stub 从会话中读取对象
我有一个 mvc 应用程序。我需要为该应用程序编写单元测试用例。在此应用程序的控制器中,我从会话中读取对象
我需要使用 Shims/Stubs 来伪造对对象的读取。
java - 在 Maven 项目中放置存根类的位置
我有一个具有以下目录布局的 Maven 项目:
该类JsonSnippets
如下所示:
在BarTest
班级内,我想使用JsonSnippets
班级,因此我有
当我现在运行时mvn test
,我收到以下错误消息:
当我将JsonSnippets
类放入src/main/...
包/目录时,请注意一切都按预期工作。
.net - 如何模拟 ExecuteReader 方法?
我是新手moq
并设置了模拟,所以我可以在一点帮助下做。如何模拟ExecuteReader()
using Moq
?
更新
我有下面的 ExecuteReader 代码
这是一个模型
下面是我想在单元测试中模拟的模拟数据
一些人建议IDataReader apporoch 是否适合它,我该如何实现?我如何为这段代码编写单元测试用例
javascript - spyOn(obj, "method").and.passValues(first,second..) Jasmine
我正在制作一个 10 针保龄球游戏并测试奖励积分功能,我想为每个滚动传递一个硬编码结果列表 (pinsHit)。主要的构造函数是 Game、Frame 和 Roll。
由于奖金是通过将两个后续掷球的得分加倍来获得的(10 个球瓶击中帧的第一个球),并将一个后续掷球的分数加倍(在帧结束时 10 个球瓶(2 个球)),我们需要计算它在所有 10 帧结束时在 Game 中,因为 Game 存储了所有帧及其属性(点数、罢工/备用?)并且可以事后循环。(已添加此信息作为上下文,因为此问题获得了风滚草徽章,所以现在您明白为什么我期望 40 为game._score
不幸的是,我不能Roll#outcome
使用 Jasmine 的存根,returnValues
因为Roll#outcome
它像 3 个函数一样被深埋(playArgTimes 调用播放调用点名结果)。
另一种方法是,如果 Jasmine 有一个类似的方法passValues
允许我做类似spyOn(game, "play").and.passValues()
的事情,因为 play 方法实际上允许通过将该结果作为参数传递来对滚动结果进行硬编码。
我在想这可能是编写自定义函数的好时机,但我真的不知道从哪里开始,我是编程新手。关于下一步的任何想法?我错过了一些明显的东西吗?
我的测试:
c++ - C++ 中的存根函数如何被共享库函数替换
我不熟悉如何使用 C++ 存根函数。
我浏览了链接如何在 Linux 上创建存根共享库,但是
1) 我无法在 C++ 中获得确切完整的示例代码,其中存根是用 C++ 代码编写的。如果有人可以指出我的确切示例?
2)我还在研究如何在 Linux 上用完全相同的名称共享库函数替换存根?
如果有人可以帮助我解决我的两个问题,那将会很有帮助。
ruby-on-rails - Minitest stub_any_instance 和方法?
如果我做
RuntimeError 在 stub_any_instance 行引发,而不是像我希望的那样,稍后在发生 Klass.new() 时引发。
有没有办法按照我想要的方式进行这项工作?
moq - Microsoft Fakes - 存根扩展方法不应该工作,但它确实有效
我有一个接口,ILoader
我在其上定义了一个扩展方法CheckLoaderDatabaseConnection
:
那里的所有文档都告诉我,当我想存根扩展方法时,我必须使用 shims,因为该方法是静态的并且不能存根。
没错,它在 Moq 中不起作用,因为我已经尝试过了。
但我可以在 Fakes 中存根接口:
在我的单元测试中,我将存根传递给我正在测试的具体实例的构造函数,当它到达这一行时:
它调用存根方法(什么都不做)并且工作正常。
为什么是这样?我肯定错过了什么。我根本不必在这里使用垫片(尽管我不能在最小起订量中存根它——当我尝试这样做时,现实世界的扩展被调用并且整个事情都爆炸了)
ios - 有没有办法模拟 Parse.com 响应以便在 iOS 的单元测试中使用它们?
我将用作后端,并使用parse-SDK-iosNimbleparse
在我的 iOS 项目中编写测试。有没有办法模拟响应,例如当我尝试登录时?就像对常见请求使用存根一样。PFUser
http
谢谢
unit-testing - 在 proxyquired 对象中存根函数
我想对以下简化模块进行单元测试:
我正在logplease
使用Proxyquire替换外部依赖项,效果很好。但是我需要存根two()
,因为我想进行单元测试,同时消除在实际代码中运行时产生one()
的副作用。two()
我得到的输出:
我期望的输出:
为什么我的存根函数不运行?