问题标签 [assertraises]

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.

0 投票
1 回答
3936 浏览

python - assertRaises() 在引发多个异常的测试用例中

是否可以将 assertRaises 与多种类型的异常一起使用。就像是

这两个错误都发生在我的代码中,在不同的地方使用相同的调用。

我如何编写一个单独的 assertRaises 语句来处理两者。

正如您可以想象的那样,当仅提及其中一个异常时,单元测试用例会失败。

0 投票
1 回答
61 浏览

ruby-on-rails - Rails MiniTest,为什么这个过程没有成功而不是错误?

现在,这里是 user_test.rb

我认为这会成功,因为我断言它会引发一个 SQLite3::ConstraintException,它确实如此。如果引发适当的异常,我希望测试成功。我究竟做错了什么?

0 投票
0 回答
106 浏览

python - Django Python测试:我如何断言一些异常发生并被处理

我正在尝试使用客户端发布方法测试 Django 视图。

在视图中,我捕获了一个异常并返回 500 响应

我检查 500 响应的测试通过了,但是我现在还想测试在视图调用期间引发了哪些实际的异常类。

有没有办法做到这一点?

我已经尝试将 self.assertRaises(SpecificException) 作为上下文管理器,但由于它已经被处理和捕获,它不会做我想要的:

如果这不能做到,那就这样吧,我只是想知道这是否可以。

另一种方法是对引发异常的函数进行单元测试。

0 投票
1 回答
182 浏览

python - assertRaises 仅在 unittest 中捕获基本异常

我在 PyCharm 上工作,这是我的项目结构:

utils/__init__.py

utils/test_utils.py

当我跑去utils/test_utils.py测试时utils/__init__.py,我遇到了第一个错误self.assertRaises(TypeError, utils.random_value, 2.0, 3)

但是当我使用 时self.assertRaises(Exception, utils.random_value, 2.0, 3),它可以工作......(并且它不适用于AssertionError)。

为什么 assertRaises 只捕获基本异常?

0 投票
1 回答
66 浏览

ruby - Ruby - 测试在 Minitest 中调用自身的方法

我在为使用 minitest 在 Ruby 中调用自身(游戏循环)的方法开发单元测试时遇到问题。我一直在尝试用我的输入来存根我试图在所述游戏循环中调用的方法。这是游戏循环:

其中大部分最终是无关紧要的,我试图测试的是这个 switch 语句正在调用正确的方法。目前我正试图通过存根被调用的方法来引发错误(我的测试assers_raise的)来规避循环:

但是,这种方法似乎不起作用,因为 Minitest 将上述测试的结果记录为消息中的错误

E
错误:
TestGame#test_playRound_a_input_triggers_getPlayerSet:
StandardError:StandardError
test_game.rb:136:in `test_playRound_a_input_triggers_getPlayerSet'

如果有人对我有任何建议或指导,我将不胜感激,因为我不知道出了什么问题

0 投票
1 回答
221 浏览

django - Django - 单元测试一个对象已被删除 - 如何使用 assertRaise / DoesNotExist 异常

我想要一些帮助来对删除 Django 应用程序中的对象的函数进行单元测试

我显示值列表的问题
,它包括一个用于删除一个值的 bin 图标,而且我的视图似乎工作正常(至少根据我所做的测试)。
我怎样才能对它进行单元测试?我还没有找到正确的方法。
我在网上搜索并发现了DoesNotExist异常,但我担心我无法使用它,因为我遇到了matching query does not exist错误。
你能告诉我如何进行吗?

我试过
的这是我当前的整个测试代码:

测试日志如下:

我做了其他类似的测试:

这导致了这一点:

或者这个:

结果如下:

而这个最新的使用类方法:

但结果仍然是一个错误:

相关应用程序代码
以下是视图代码:

和模型:

补充搜索结果
最后,我在这里找到了一些针对我的测试的帖子,但我找不到解决方案:

0 投票
0 回答
21 浏览

python - 即使引发异常,assertRaises 也会失败

我有一个引发异常的函数,但是当我使用 assertRaises 测试是否引发了异常时,即使实际上引发了异常,它也会失败。

项目/应用程序/文件.py

项目/测试/测试.py

输出:

0 投票
1 回答
22 浏览

python - 在这种情况下如何使用 assertRaisesRegex?

我正在尝试使用assertRaisesRegex(来自 unittest 模块)来确保在执行以下分配时引发异常(来自我们的 C++ 后端):

ab这是我们后端定义的自定义类型。

在我见过的情况下assertRaisesRegex,将一个函数及其参数传递给assertRaisesRegex,但在这种情况下,我需要测试在上述分配期间是否引发了异常。我怎样才能最好地做到这一点,而不必编写额外的函数来完成作业?

0 投票
0 回答
19 浏览

python - 为什么 assertRaises 在一种情况下会产生错误,而在另一种情况下不会?

我在 assertRaises 上搜索了 StackOverflow Q&As,以确定我做错了什么。由于我仍然不明白问题是什么,我想提出自己的问题以获得具体答案。

我有两个不同的计算器程序,我使用 unittest 模块为其创建了单元测试。程序 A 的单元测试使用 assertRaises,而在 B 中使用 assertRaises 会产生错误。

参考 assertRaises,A 和 B 有什么区别?

一个代码:

B代码:

为什么 A 在没有错误的情况下工作,而 B 产生以下输出: