问题标签 [expectations]
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.
mocking - 具有多个期望()调用的 PHPUnit 模拟
使用 PHPUnit,我想知道我们如何从同一个存根/模拟中获得多个期望。
例如,我想测试模拟是否会display()
调用该方法并返回 NULL。我还想测试该方法process()
是否会被调用。
事实上我的测试叫做testProcessIsCalledIfDisplayReturnNull()
.
所以我需要在同一个模拟对象上设置 2 个期望,而手册对此并没有真正的帮助:(
ruby - 使用 RSpec 测试哈希内容
我有一个这样的测试:
我知道,这很冗长。有没有更简洁的方式来表达我的期望?我查看了文档,但看不到在哪里压缩我的期望。谢谢。
python - 使用 assertRaises - 处理传播的异常
我有一些代码在测试包装的异常,当它失败并且异常传播时,我认为错误消息和回溯不够详细,主要是因为它没有告诉我预期与测试相比,我想了解异常和期望的详细信息。
我调整了我的测试(参见下面的示例代码)。我想知道这种方法是否有效,是否有任何 Python 测试或模拟框架允许直接实现它?(目前我正在使用 unittest 和 mox)
这个问题的答案之一简要涉及在这种情况下使用 self.fail 的适当性,但并没有真正详细说明。我的假设是,如果我试图将测试限制在一个区域,我可以通过测试。
注意:如果您运行代码示例,它应该会失败,以演示我希望看到的行为。我正在使用 Python 2.7、Mox 0.5.3
java - 当我尝试包含对模拟对象的期望时,此 SecurityException 的原因是什么?
我正在尝试在测试中使用模拟对象。但是,当我尝试列出模拟对象的期望时,会引发相同的异常。
以下是异常的堆栈跟踪:
执行以下代码时会发生错误:
这个异常的原因是什么?
java - JMockit - 期望和静态方法
我正在尝试模拟一种方法以使其返回一个特定对象:
但我面临两个问题:
- 我在退货电话中收到“当前没有可用的调用”
- 如果我尝试添加结果变量,我会遇到编译问题。
我正在使用JDK1.5。有任何想法吗?
ruby-on-rails - 预期响应为 <:redirect>,但为 <401>
我最近开始将我的应用程序中的一些标准请求转换为 XHR (Ajax) 请求。我正在更新我的 RSpec 测试以反映这一点,但遇到此错误消息:
我的规格看起来像:
test.log 文件条目如下所示:
这些是在未登录(未经授权)的用户的上下文中。当我将断言更改为:
我收到此错误:
以及相应的,无用的日志条目......
我想断言当一个未经授权的状态被赋予时,一个未经授权的状态被赋予。任何人都可以帮忙吗?
jmock - 保存期望的返回值
我想使用期望的返回值来增加一个期望。我有一个 m_accountProcessor 对象,它具有接口 createAccount 来创建一个新帐户并返回一个 Account 对象。我想保存这个对象并将其添加到编码函数调用的另一个期望中。如何保存价值?
ruby-on-rails - 在不嘲笑任何事情的情况下设定期望
使用 MiniTest::Spec 和 Mocha:
当我使代码正常工作时,此测试将失败,因为Device.expects(:scope_by_ip_list)
还调用了stubs Device.scope_by_ip_list
,并且由于我没有指定 a.returns(Devices.scoped)
或类似的东西,它使用nil
. 因此,在我的代码中,它正确地定义了一个设备列表,然后进行了进一步的操作,进一步的操作就会崩溃。
不过,我不想指定参数,因为我完全不在乎它返回什么。.returns
我根本不想存根该方法!我只是想对它设定一个期望,让它按原样运行。
有没有办法做到这一点?
(对我来说,说这样的话似乎很尴尬Device.expects(:foo).returns('bar')
——当我说Model
期望 method
时,我并不是说要存根该方法!我们可以说Device.stubs(:foo)
,如果我们想存根它。)
probability - 不同投资组合的另一个方差和期望
A 和 B 是两个相互竞争的公司。投资者决定是否购买
(a) 100股A股,或
(b) 100 股 B 股,或
(c) 50 股 A 股和 50 股 B 股。
1 股 A 的利润是一个随机变量 X,分布为 P(X = 2) = P(X =-2) = 0.5。1 股 B 的利润是一个随机变量 Y,分布为 P(Y =4) = 0.2,P(Y = -1) = 0.8。
如果 X 和 Y 是独立的,计算策略 (a)、(b) 和 (c) 的总利润的期望值和方差。
--- 对于 A 和 BI 的 E(X),得到: EA(X) =(2)(.5) + (-2)(.5) = 0。EB(X) =(4)(.2 ) + (-1)(.8) = 0。
获得方差:EA(X^2)= (2^2)(.5) + (-2^2)(.5) = 0。EB(X^2)= (4^2)(.2) + (-1^2)(.8) = 3.2 + .8 = 4
VarA(X) = EA(x^2) - EA(X)^2 = 0 - 0^2 = 0 VarB(X) = EB(x^2) - EB(X)^2 = 4 - 0^2 = 4
a) 100 股 * X 利润 = 100X = A
E(A) = E(100x) = 100E(x) = 100 * 0 = 0 Var(A) = 100^2*Var(X) = 10,000 * 1 = 0
b) 100 股 * X 利润 = 100X = B
E(B) = E(100x) = 100E(x) = 100 * 0 = 0 Var(B) = 100^2*Var(X) = 10,000 * 4 = 40,000
c) 50 股 * X 利润 + 50 股 * X 利润 = 50X + 50Y = Z
E(Z) = EA(50x) + EB(50X)= 50EA(X) + 50EB(X)= 50*0 + 50* 0 = 0 Var(Z) = 50^2*VarA(X) + 50^ 2*VarB(X) =2500*0 + 2500 * 4 = 10,000
我不知道我的答案是对还是错,但我真的很怀疑自己。任何人都可以确认或纠正我吗?谢谢!
ruby - should_receive 会做我没想到的事情吗?
考虑以下两个简单模型:
以及以下 Rspec 测试:
当我运行这个测试(或者,更确切地说,一个类似的测试)时,存根似乎没有工作:
正如您可能猜到的那样,失败出现在上面标有“此处错误”的行上。当该should_receive
行被注释掉时,这个错误就消失了。这是怎么回事?