问题标签 [minitest]

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 回答
1051 浏览

ruby - 测试与 minitest 分开

我编写了这段代码,并尝试使用 minitest 对其进行测试,但似乎我没有使用正确的语法来处理异常:/

输出 :

运行选项:--seed 30510

运行测试:

..E

在 0.001000 秒、3000.0000 次测试/秒、2000.0000 次断言/秒内完成测试。

1) 错误:test_0002_can_t_divide_by_zero_and_raise_bla(我的测试):RuntimeError: bla essai.rb:9:in my_method' essai.rb:19:intest_0002_can_t_divide_by_zero_and_raise_bla'

3 次测试,2 次断言,0 次失败,1 次错误,0 次跳过

第二个测试给我一个错误,有人可以帮助我吗?

0 投票
5 回答
4636 浏览

ruby - 我如何有效地强制 Minitest 按顺序运行我的测试?

我知道。这是不鼓励的。由于我不会进入的原因,我需要按照编写的顺序运行我的测试。根据文档,如果我的测试类(我们称之为TestClass)扩展了Minitest::Unit::TestCase,那么我应该能够调用公共方法i_suck_and_my_tests_are_order_dependent!(哎呀——你认为创建Minitest的人有意见吗?在那一个?)。此外,还可以选择调用被调用的方法test_order并指定:alpha覆盖的默认行为:random。这些都不适合我。

这是一个例子:

当我运行它时,我得到:

如果我用i_suck顶部的方法替换方法调用:

我的测试运行了,但我可以从putsfor each 方法中看出,每次我运行测试时,事情仍然以随机顺序运行。

有谁知道我做错了什么?谢谢。

0 投票
1 回答
201 浏览

ruby-on-rails - Rails 3.1 和 minitest:如何测试“其他”类?

对于controllers,helpersmodels是文件夹中定义的很好的test文件夹。

但是 中的课程lib呢?

我们应该把这个测试放在哪里?,在test/unit我喜欢使用这个文件夹的文件夹的时代,但现在该文件夹被调用test/models,现在看起来不是一个好地方。

我创建了一个test/libs文件夹,但rake test没有从中读取:/

此外,从官方测试文件夹创建的测试也不是从公共MiniTest::Rails::Spec类继承的,因此我失去了实现策略和这些常见事物的公共起点终点。DatabaseCleaner

0 投票
1 回答
212 浏览

ruby - MiniTest 和非拉丁测试说明

Ruby 1.9 有很酷的 Unicode 支持,是吗?

我的非拉丁字母在哪里?我应该总是用我糟糕的英语写我的测试吗?

因为我可以用任何 Unicode 符号定义方法:

PS我的问题似乎不清楚。我想问如何制作 minitest 的失败描述以显示我的非拉丁定义。

0 投票
1 回答
1286 浏览

ruby-on-rails - How to load fixtures using Minitest and Rails 3.0.10?

I have a Rails 3.0.10 project using the minitest-rails gem (running in JRuby 1.6.5 == Ruby 1.9.2). I would like to use all of our existing Test::Unit test cases with minimal changes in order to start using Minitest. Right now I can run tests but many fail because fixtures are not being loaded. I have yet to figure out how to make that work. If I change ActionController::TestCase to MiniTest::Unit::TestCase then the fixtures function doesn't work. I've tried the links here and the links within that one without any success. So the question is how to continue using ActionController::TestCase with the MiniTest gem or how to switch to MiniTest::Unit::TestCase and have fixtures load.

0 投票
1 回答
103 浏览

ruby - 用于逐行比较的 Ruby 测试

是否有用于扩展字符串比较的 minitest 测试仪?我有很大的字符串要比较,如果你有一个错误消息“它们不相等”并且必须比较每行 20 行,这不是很有效。

0 投票
2 回答
3398 浏览

ruby - 如何用 Ruby 模拟一个类?

我正在使用 minitest/mock 并想模拟一个类。我不是在尝试测试模型类本身,而是尝试测试服务 (SomeService) 与模型 (SomeModel) 的交互。

我想出了这个(Hack::ClassDelegate),但我不相信这是个好主意:

我很确定模拟一个类无论如何都不是一个好主意,但是我有一个遗留系统,我需要为其编写一些测试,并且在我围绕它进行一些测试之前我不想更改系统。

0 投票
1 回答
3371 浏览

ruby-on-rails - 如何使用单元样式为集成测试配置 minitest

我找到了配置 Rails 以使用 Minitest 的资源。不幸的是,大多数资源假设所有测试类型都使用 Minitest Spec,或者在最好的情况下,至少用于集成测试。

我可能是“复古”,但我觉得断言 ala test:unit 对我来说比 rspec 风格更好。我会使用 MiniTest::Unit 声明风格和 Capybara 来运行集成测试。

我有兴趣查看 minitest_helper.rb 和 some_model_integration_test.rb 的示例,以了解我需要放置的相关配置元素,以使集成测试与 Capybara 很好地配合使用。

有人可以解释如何为此配置 Rails 吗?

0 投票
5 回答
3416 浏览

ruby - 如何使 minitest 在失败时停止执行?

我使用 Minitest 作为我的功能测试的运行器,使用 Selenium 作为驱动程序来运行浏览器。每个测试都被建模为 MiniTest::Unit::TestCase。

Minitest 在完成执行所有测试时报告执行摘要。遇到的异常也会在执行结束时打印出来。当执行上下文丢失导致意外失败时,我发现很难调试。我遇到的异常不是确定性的。

有没有办法让 Minitest 运行器停止执行异常或断言失败的测试?

我正在使用 minitest (2.11.2) 和 ruby​​ 1.9.2p290 (2011-07-09) [i386-mingw32]

0 投票
2 回答
1918 浏览

ruby-on-rails - Minitest 集成测试:会话不中断?

我最近将一个非常简单的 Rails 应用程序从 rspec 切换到 minitest。我也使用水豚和 factory_girl。

我有 3 个单独的集成测试文件,所有这些文件都涉及记录用户使用以下内容:

在我切换到 minitest 之后,似乎每次测试后会话都停止了。例如,我会在名为“users_integration_test.rb”的测试文件中使用上面的代码测试登录,当它开始运行另一个测试文件时,比如“sessions_integration_test.rb”,用户已经登录,然后我可以使用再次登录上面的代码。

我的问题是:这是 rspec 和 minitest 之间的故意区别,我只需要在每次测试后注销用户?还是我在设置 minitest 时犯了错误?

我正在使用与 Minitest Railscast 中相同的 minitest_helper 文件。