gpt4 book ai didi

unit-testing - Ember.js 中的单元测试

转载 作者:行者123 更新时间:2023-12-03 14:45:34 24 4
gpt4 key购买 nike

鉴于 Ember 已到达 1.0.0最近,我想开始在测试中使用它。我在 Karma 中使用 Yeoman 1.0。我想对模型进行单元测试,但我发现很难实现隔离。

我现在的例子是:

describe("Expense", function() {
return it("has a computed property called `explained`", function() {
var expense = App.Expense.create({
name: "My first expense",
value: 34
});
return expect(expense.get("explained")).to.equal("My first expense -- 34");
});
});

截至 1.0.0 ,我收到以下错误:

Error: You should not call `create` on a model. Instead, call
`store.createRecord` with the attributes you would like to set.

我应该如何访问 store 以创建模型实例? 更理想的是,我怎样才能在不求助于商店的情况下简单地生成这样的模型,这可行吗?仅仅为了测试模型而生成整个应用程序是没有意义的,IMO。

谢谢你。

最佳答案

这是我迄今为止用于单元测试模型的最少代码。

var container, store, expense;

container = new Ember.Container();
container.register('store:main', DS.Store.extend());
container.register('model:expense', App.Expense);
store = container.lookup('store:main');

Ember.run( function() {
expense = store.createRecord('expense', {
name: "My first expense",
value: 34
});
});

基于商店的代码和 the way models are tested inside Ember Data ,我不认为你可以减少测试的设置。

关于unit-testing - Ember.js 中的单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18634494/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com