问题标签 [tinytest]

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

javascript - 获取 TinyTest 正在测试的包的名称

我需要确定给定测试文件当前正在测试的 Meteor 包的名称,以便我可以导出资产的路径。例如,如果我们正在测试 fortawesome:fontawesome,资产将可在/packages/fortawesome_fontawesome/.

如何获得TinyTest正在测试的包的名称?

包.js

测试.js

0 投票
1 回答
758 浏览

javascript - 将 HTML 文件拉入 TinyTest

TinyTest 似乎只关心单元测试;但是,可能 Meteor 包有 UI 元素,并且拉入一个预先制作的 HTML 文件来练习一个小部件会很有帮助。例如,我们可能想<table>使用 DataTables.net 将 a 转换为网格,然后测试实例化是否正确。

如何在 TinyTest 中使用外部 HTML 文件?

包.js

测试.js

0 投票
1 回答
218 浏览

meteor - 完成所有测试后退出 Meteor Tinytest

从自动化测试(例如 grunt 文件)运行meteor test-packages ./时,如果流星在测试运行后退出会有所帮助。有没有办法做到这一点?命令行帮助没有提出任何此类建议,并且此问题表明这是不可能的。

0 投票
1 回答
269 浏览

meteor - 如何为 Meteor 编写涉及模板的测试?

我最近创建了一个 Meteor 包,想写一些测试。我的测试包基本上做的是用户可以插入到模板中{{> abc}},他们会在页面上打印一个 HTML 元素。

使用 TinyTest,您所能做的就是使用类似test.equal(actual, expected, message, not). 但是,我需要它来测试元素是否成功打印在页面上。此外,我还将向模板传递一些参数并对其进行测试。

看来我必须创建一个虚拟应用程序,运行 bash来启动应用程序,并测试是否可以在页面上找到元素。那么我是否应该只使用 TinyTest 来测试 API,并为模板编写自己的测试(不知何故!)?如果没有,我应该怎么做?

我阅读了一些关于的内容,但在文档Blaze.toHTML中找不到任何内容?也不是源页面

0 投票
2 回答
1496 浏览

unit-testing - How to test Meteor packages since Meteor 1.0?

From what I understand, there are two major packages that help in testing a package - TinyTest, and Velocity, which became the official Meteor testing framework.

From the Meteor's DevShop in June, the Velocity team said that Velocity can run alongside TinyTest, but I do not understand the difference in the features these two packages provides, is one (TinyTest) redundant?

Is TinyTest only meant for unit testing? If I want integration testing, functional testing, would I need to turn to Velocity and its supported frameworks? Or something else completely different? There is a comparison table, but it is a bit dated.

0 投票
1 回答
356 浏览

testing - 依赖“Facts”包内部进行包测试是否安全?

我有一个使用很多的包(yeputons/meteor-smart-publishobserveChanges,我想添加一个测试(我现在使用 TinyTest),它允许我确保所有这样的观察者最终都被终止并且没有handle.stop()被跳过.

直接的方法是:添加 'Facts' 包(Meteor-internal),订阅 'meteor_facts' 并检查observe-handles项目的属性 with _id="mongo-livedata",这不是很安全,因为它都是无证的,可以在未来。

有没有更多记录的方式来检查这些事情?

0 投票
1 回答
93 浏览

unit-testing - Meteor Tinytest 软件包依赖项

我喜欢测试我的代码。我喜欢将我的代码划分为包。我喜欢流星。现在我正在尝试 Meteor Tinytest meteor test-packages,但我有点奇怪。例如:

因为SimpleSchema.RegEx.Email. 但是此代码在未经测试时有效。此外,SimpleSchema此时是一个对象(通过检查console.log),并且SimpleSchema.RegEx确实是未定义的,但这完全不是我所期望的。

添加api.use('aldeed:simple-schema', ['server']);到 onTest 部分package.js不会做任何事情,这是意料之中的。但我不确定我怎么做才能解决这个问题。

0 投票
1 回答
275 浏览

meteor - 你能用 tinytest 来测试一个使用其他包的包吗

我有一些小测试,简单的服务器单元测试。

它们分别运行良好,但如果我一起运行它们,我的收藏就会出错。

还有什么可能导致如下错误?

我认为它与定义 JS 文件中的导出和咖啡脚本中的其他类有关,并且一些范围问题使事情复杂化。“告诉你不要使用咖啡脚本”我听到了。但话又说回来,它可能是别的东西!

FWIW 该应用程序运行没有问题,只是测试失败。

0 投票
1 回答
429 浏览

unit-testing - Meteor - 使用测试数据库运行包测试

(这类似于这个问题:如何在流星中建立单独的测试和开发数据库,​​但是它已经有 2 年历史了,从那时起流星发生了很大的变化。)

我正在尝试创建自己的包,并且我想运行单元测试。我想确保我的查询是正确的,所以我想对测试数据库实际运行查询,而不仅仅是对函数进行存根。

我有两个问题:

  • 我如何告诉 Meteor 运行测试数据库而不是我的真实数据库?
  • 用数据轻松填充测试数据库的最佳方法是什么?

理想情况下,我需要一个设置步骤来清除而不是填充测试数据库,所以我总是确切地知道每个数据库中的数据。

我是 Tinytest 新手(尽管我使用过其他单元测试框架),因此非常感谢代码示例。

0 投票
1 回答
367 浏览

meteor - Tinytest 添加一个未定义的文件对象

我在使用 TinyTest 时遇到问题。我在下面有一个测试

这个函数在另一个文件中(test.js)

在我的 package.js 中:

我可以运行我的测试,但我收到此消息:

想法?