EmberJS 单元测试助手

2018-01-03 16:52 更新

单元测试助手

全局与模块

前些日子,有难以测试Ember应用程序,而无需将应用程序重新加载为全局。您可以使用需要测试的模块来创建Ember应用程序,而无需从全局应用程序中删除这些部分。

单元测试助手

当使用Ember创建应用程序时,需要进行测试。单元测试基本上用于测试代码,并确保它正在做的是什么。Ember中的默认单元测试助手是Ember-QUnit,其他测试框架助手可以使用它作为模板。

可用助手

Ember-QUnit有一些测试助手,如下所示:

  • moduleFor(fullName [, description, [,callbacks]])

    • fullName:这是单元的名称。

    • description:这是模块的描述。

    • callbacks:它代表需要其他单元测试的QUnit回调。

  • moduleForComponent(name [, description [, callbacks]])

    • name:组件的名称。

    • description:这是模块的描述。

    • callbacks:callbacks:它代表需要其他单元测试的QUnit回调。

  • moduleForModel(name [, description [, callbacks]])

    • name:组件的名称。

    • description:这是模块的描述。

    • callbacks:它代表需要其他单元测试的QUnit回调。

  • test:它使用'subject'函数创建测试主体。

  • setResolver:它设置应用程序容器中的解析器来查找对象。

单元测试设置

要测试Ember应用程序,您需要调用Ember.setupForTesting()。函数setupForTesting()将关闭Ember应用程序的循环执行。它控制循环执行的流程,它解决异步行为,它们被挂起以建立状态并使断言处于已知状态。您可以运行“访问”来获取特定的URL,如果您没有使用它,您的断言结果将是不可预测的。

在测试应用程序时,Ember解析器根据名称提供查找功能,例如route:index或model:post。如果你没有自定义解析器,那么你需要设置解析器为:

setResolver(Ember.DefaultResolver.create({ namespace: App }))
以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号