问题标签 [testunit]

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 投票
13 回答
14444 浏览

ruby-on-rails - 使用 Test::Unit 和 Shoulda 设置 Factory Girl

我正在尝试在 Ruby on Rails 中使用 Test::Unit 和 Shoulda 设置 Factory Girl。我已经安装了 gem,在 test/factories 目录下创建了我的工厂文件,并在 test/models 目录下创建了我的规范文件。我得到的当前错误是“ArgumentError:没有这样的工厂:测试”,这让我相信 test_factory.rb 文件没有被加载?关于我应该改变什么的任何想法?

这是我的文件。

0 投票
2 回答
6343 浏览

ruby - Test::Unit 中的全局设置和拆卸块

在整个测试套件(不仅仅是一个测试类)中的每个方法之前运行设置的最佳方法是什么?

Rspec 允许您在块之前和之后定义全局。在不涉及将模块混合到每个测试类中的 Test::Unit 中是否有一种干净的可比方法?

0 投票
2 回答
1739 浏览

ruby - 使用 Test::Unit 测试模块

尝试使用 Test::Unit 测试模块时遇到问题。我以前做的是这样的:

my_module.rb:

test_my_module.rb:

现在的问题是,如果 my_module 声明了一个初始化方法,它会被包含在测试类中,这会导致一系列问题,因为 Test::Unit 似乎覆盖/生成了一个初始化方法。所以我想知道测试模块的最佳方法是什么?

我还想知道我的模块此时是否应该成为一个类,因为初始化方法是用于初始化某些东西的状态。意见?

提前致谢 !

0 投票
3 回答
3621 浏览

ruby - 在 Ruby 中,如何控制 Test::Unit 测试的运行顺序?

例如,当这些测试运行时,我想确保test_fizz总是先运行。

更新:我为什么要这样做?我的想法是,某些测试的早期失败(那些测试更简单、更基本的方法)将使追踪系统中的问题变得更容易。例如,成功bar取决于fizz工作是否正确。如果fizz坏了,我想马上知道,因为不用担心bar,它也会失败,但测试结果中的输出要复杂得多。

0 投票
1 回答
1237 浏览

ruby - 你如何断言来自另一个 ruby​​ 模块的异常被抛出?(使用 assert_throws)

我正在尝试编写这样的代码:

ExtractionFailed是一个微不足道的子类Exception,并且在测试/单元下,我试图断言它在我调用 unit.extract_from(... bad data...) 时被抛出

我已经ExtractionFailed进入 SemanticText 模块,所以现在 test/unit 说:

我试着写 assert_throws(:SemanticText::ExtractionFailed) {...} 但我得到了相当混乱的消息:TypeError: SemanticText is not a class/module

我可以通过执行以下操作使其工作(虽然它看起来像一个 hack):

那么在 ruby​​ 中表达这个断言的正确方式是什么?

0 投票
3 回答
199 浏览

ruby - 如何在运行 ruby​​ 测试时获取测试程序的名称以及点

当我使用 rake 运行测试时,随着测试的进行,我会看到点。我想要的是点之前的测试程序的名称。我收到一些警告,但不确定哪个测试发出警告。获得测试名称将极大地帮助我。

0 投票
4 回答
1538 浏览

ruby - 如何在 ruby​​ 模块中包含单元测试?

我正在尝试按照Perl modulino模型将模块的单元测试包含在与模块本身相同的源文件中。

现在,我可以运行执行此源文件的单元测试。

但是,当我需要/从另一个脚本加载它们时,它们也会运行。如何避免这种情况?

除非不鼓励这种做法,否则是否有更惯用的方法来使用 Ruby 实现这一点?

0 投票
1 回答
89 浏览

ruby - 我的 gem 如何知道其存储库目录的路径?

我的 gem 语义文本有一堆用于回归测试的测试数据。

这是项目:http: //github.com/dafydd/semantictext

这是我希望能够直接从 gem 运行的示例测试:http: //github.com/dafydd/semantictext/blob/master/test/test_document.rb(查找文本“SANDBOX”)

我通常在一个名为“semantictext”的目录中开发它,并将环境变量 SANDBOX 设置为“semantictext”上方目录的路径——这样我就可以使用 ENV['SANDBOX'] 引用项目中的任何文件。

当 gem 作为包安装时,有没有一种方法可以让从 rake 运行的测试/单元测试:

1)知道它是从宝石运行的吗?和

2) 知道本地 ruby​​gems 存储库中它的语义文本目录的路径吗?

我希望能够毫不费力地从任何 gem 安装中运行所有测试。这将使我的持续集成更容易一些,并允许我编写更好的 gem。

谢谢,达菲德

0 投票
2 回答
223 浏览

ruby - 让 ruby​​ Unit::Test 说出测试的结果

我一直在使用内置的 OSX 'say' 命令来表示长时间运行测试的结束。这既简单又方便。

我想让它说出结果的最后一行,上面写着“6 个测试,18 个断言,0 个失败,0 个错误”,但仍然保持正在进行的输出。任何想法如何做到这一点?

我试过了:

但这不会在测试结果发生时输出。

使它只说“0失败,0错误”行的最后两部分的奖励积分。

0 投票
3 回答
1123 浏览

ruby-on-rails - Rails fixtures - defining a table name?

At the minute all my fixtures have the same name as the table that they are intended for, because of a recent issue with rails it doesn't seem possible to have a fixture beginning with the word 'test'

Does anyone know of a way to have a different fixture name and then map it to the correct table?

Thanks, Andy