集成测试 CRUD Ember.js



我需要为我的 Ember 应用程序进行集成测试,例如在用户模板中:

<div class="container">
<h1>{{model.firstName}} {{model.lastName}}</h1>
<p>Age: {{model.age}} years old</p>
<p>Job: {{model.job}}</p>
<img src="{{model.image}}" alt="img" id="image">

</div>

我必须测试用户列表是否正确显示。可以这样做吗?

从来没有这样做过,我在这里有点迷茫。会不会像:

test('it renders all users', function(assert) {
this.set('users', [
{ firstName: 'Tubby'},
{ firstName: 'Spot'},
{ firstName: 'Chester'},
{ firstName: 'Frisky'}
]);
 this.render(hbs`{{user users=users}}`);
 assert.equal(this.$('.user').length, 4);
 });

尽管我读了很多关于集成测试的文章,但我仍然不明白它是否可以用于不是组件的东西。

重定向呢?假设我必须编写一个集成测试来验证重定向是否正常。我可以通过集成测试做到这一点吗?

感谢您的帮助。

可能值得快速回顾一下测试选项:

单元测试允许我们测试小块代码。以这种方式易于测试的东西是服务、序列化程序或适配器。

集成测试主要用于测试组件以及它们协同工作和与用户交互的方式。经常测试的内容包括不同类型的事件(单击、击键等(以及组件对不同类型数据的反应方式。

验收测试通常用于测试应用程序的集成整体(假装是您的用户并浏览网站(。

通常,检查重定向要么是验收测试。您还可以执行单元测试(如果您有处理各种重定向方案的复杂路由逻辑(。在集成测试中测试重定向主要集中在确保单击按钮会尝试重定向到其他地方。

这有帮助吗?

我希望,下面的教程将帮助您理解测试用例。本教程包含所有测试(UNIT,验收和集成(的示例。

https://medium.com/@srajas02/ember-test-case-for-a-crud-application-with-mirage-d6d9836bfee2

源代码:https://github.com/srajas0/ember-test-cases

最新更新