问题标签 [expected-exception]
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.
java - ExpectedException 原因是什么原因?
我正在尝试验证我的所有异常是否正确。因为值包含在 中CompletableFutures
,所以抛出ExecutionException
的异常是我通常会检查的异常。快速示例:
所以foo()
翻译抛出的异常bar()
,所有的都是在里面完成的CompletableFutures
(AsyncHandlers
我不会复制整个代码,仅供参考)
在我的单元测试中,我正在bar()
抛出一个异常,并希望在调用时检查它是否正确翻译foo()
:
到目前为止一切顺利,但我也想验证异常的原因A
是异常B
和having(on(A.class).getCause(), CoreMatchers.is(b))
原因CodeGenerationException --> StackOverflowError
TL;DR:我如何获得预期异常的原因?
unit-testing - 单元测试需要 System.ServiceModel.FaultException
这是我的单元测试:
我正在向我的客户端存储库提供无效输入,该存储库又调用第三方客户端服务,并且我希望客户端服务会引发错误。而且,客户端服务也会抛出异常,但不是我期望的那样。我希望它是“System.ServiceModel.FaultException”,但它给了我这个:
不知道我在“ExpectedException”中放了什么,所以这个单元测试通过了正确的预期异常。
c# - Rhino Mock Test 预期 #1,实际 #0 - 错误
我是使用 Rhino Mock 的新手,我遇到了这个错误,我不明白为什么。这里测试
我的GetStudiesByInstallationReference.cs
我想测试GetStudiesByInstallationReference
被称为一次。
我在做什么错?...它应该通过测试,因为该Expect
子句与 the 中使用的相同,Stub
但我仍然遇到异常
预期 #1,实际 #0。
有人可以帮我解决这个问题吗?
提前致谢
c# - XUnit 和 MSTest 与 ExpectedException 返回不同的结果
我有一个使用收益返回的项目,但不明白为什么在 MSTest 通过时 XUnit 未能在我的单元测试中捕获异常。
这是我的虚拟代码。
奇怪的是,如果我采用我的私有方法 EnumerableYieldReturn 并将该逻辑直接放在我的公共方法 YieldReturnList 中,结果会随着 XUnit 测试通过而 MSTest 失败而翻转。
我可以通过从 sut.YieldReturnList 分配返回对象并尝试迭代它来让它们都通过,但这并不能解释为什么一个框架通过而另一个框架失败......
c# - 替换匹配类型?
新的 NUnit 版本 3.x 不再支持ExpectedExceptionAttribute
。有一个Assert.Throws<MyException>()
代替。可能是一个更好的逻辑概念。但我没有找到任何旧货的替代品MatchType
——有吗?MyException
可以用许多参数抛出,在 NUnit 2.x 中,我可以比较包含某个文本片段的异常消息,以了解使用了哪个参数(当然,我不会有几十个异常类合乎逻辑的)。NUnit 3.x 如何处理这个问题?我找不到提示。
使用 NUnit 2.x,我将执行以下操作:
如何使用 NUnt 3.x 做类似的事情?
请考虑我的意思:NUnit 提供的方法不足以识别引发异常的参数,所以这是一个不同的问题。
java - 控制台显示异常消息,但异常类型仍然错误——为什么?
我正在尝试创建一个名为 bag 的抽象数据类型,它本质上使用方法 add(int x) 接收整数,并使用方法 remove() 删除任意整数。
然后,我尝试为 remove() 方法创建一个自定义异常,因为当包中已经没有任何物品时,有可能完成删除。因此,我创建了一个异常类:
并继续使用此自定义异常,如下所示:
然后,我尝试通过这样做来测试异常:
不幸的是,这个测试失败了,我得到了消息:
java.lang.AssertionError: Expected test to throw(sg.com.practice.adt.EmptyBagException 的一个实例和异常消息字符串包含“包中没有物品!”)
我不确定为什么会这样……特别是因为我的预期错误消息确实正确打印到了控制台。在此先感谢您的帮助!
java - 重置 ExpectedException 未按预期工作
我有一个问题ExpectedException
。我在一个测试类的许多测试中使用它。现在我遇到了一个问题,我们的 Jenkins 有一个失败的测试,因为这个测试有expectedMessage
一个之前的测试。我不知道为什么,但为了防止这种失败,我试图“清除”ExpectedMessage
但它的行为不像预期的那样:
测试类
投掷者
testExpectedException
导致以下输出:
但我希望expectedException
检查包含random
. 为什么不呢?
我正在使用 JUnit 4.11。
.net-core - 旧代码的 xUnit 中的 ExpectedException
正如其他帖子中广泛指出的那样,xUnit 中不存在 ExpectedException。但是,是否有一些东西可以帮助将遗留测试移植到 xUnit,本质上是一个 polyfill?
我相信随着 .Net Core 的加速采用,正如我们可能会在 .Net Standard 2 中看到的那样,我们将看到越来越多的测试从其他框架移植到 .Net Core 工具中最容易开箱即用的测试。虽然 ExpectedException 可能不是未来的最佳实践,但拥有一个遗留的权宜之计(即使是一个单独的 NuGet 包)将极大地简化移植测试,因为这是为数不多的基于每个测试的转换之一,无法由简单的搜索替换。当您移植数百个单元测试时,“这可能会导致问题”似乎并不是一个令人满意的答案。
c++ - 我应该在哪里修复关于模板的 C++ 代码?
当我写了一段 C++ 代码并通过 clang++ 编译器编译时,
被代表。
为什么会出现此错误,我该如何解决?
c# - 我怎么能允许在单元测试中使用 [ExpectedException(typeof(ArgumentException))] 断言?
我发现,那个简单的单元测试
给出错误
消息:测试方法没有抛出预期的异常 System.ArgumentException。
我成功地使用 [ExpetedException] 来测试错误消息输出,但是,在单元测试中使用 Assert 对侧变量进行的任何检查都会导致它出现故障。
我可以以某种方式装饰我的测试以避免它吗?还是“政治错误”?