CoffeeScript单元测试?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CoffeeScript单元测试?相关的知识,希望对你有一定的参考价值。

我在Rails应用程序中使用CoffeeScript,我想对它进行单元测试。谷歌没有发现任何东西,有没有办法做我自己的测试框架或测试CoffeeScript输出的javascript

答案

您可以在CoffeeScript中使用任何javascript测试框架。这将测试CoffeeScript输出的Javascript,因为CoffeeScript本身无法执行。

为CoffeeScript编写自己的测试框架很有趣(qazxsw poi)但完全没必要。

更新:I did测试可以是Jasmine,在这种情况下,测试和测试中的代码都可以是CoffeeScript,无需任何编译步骤。

另一答案

您可以“按原样”使用QUnit,但仍然只编写咖啡脚本 - 而且没有胶水代码。 我在github上有一个非常小的纯咖啡脚本项目作为例子 - run on node.js

html测试页rubyann,引用测试rubyann_tests.htmlrubyann_tests.coffee文件。我没有写任何javascript或任何其他代码来使这项工作。

如果您使用命令行参数--allow-file-access-from-files,则测试仅在本地计算机上的Chrome上运行。但它适用于Firefox甚至IE而没有问题。

附录 - 测试也设置为通过Node / gulp / qunitjs在命令行上运行 - 下载repo并输入jquery.rubyann.coffee

另一答案

我正在使用QUnit在我的Rails应用程序中测试CoffeeScript,并写了我在这里的做法:npm run test

我写的最有趣的事情是使用Coffee.load的回调来保证包含测试的文件在包含测试代码的文件之后加载:

http://effectif.com/coffeescript/qunit-boilerplate

文章解释了讨论<script type="text/coffeescript"> for file in ['models', 'controllers'] lib = "../../app/assets/javascripts/#{file}.js.coffee" load_test = -> test = "#{file}_test.coffee" -> CoffeeScript.load(test) CoffeeScript.load lib, load_test() </script> 变量的必要性......

另一答案

对于Coffee-Script单元测试,您可以尝试test它是从头开始编写的咖啡脚本。仅供参考我是我自己的,但我想你会喜欢它。它类似于JUnit

以上是关于CoffeeScript单元测试?的主要内容,如果未能解决你的问题,请参考以下文章

单元测试 NPE,当我添加片段自定义转换时

单元测试不了解 XCTest 期望的异步 UI 代码?

四则运算单元测试

单元测试很棒,但是

词频统计单元测试

使用 Jasmine 和 Rails 3.1 测试 Coffeescript