Ember.js第七章——测试

测试简介

测试是Ember。js框架开辟环节中很重要的一环。

如今假定你正在运用Ember框架开辟一个博客体系,这个体系包含userpost模子,有登录及建立博客的操纵。末了假定你愿望在你的顺序里完成自动化测试。

测试范例

你一共须要下面这3种范例的测试:

  1. 验收测试Acceptance

  2. 单位测试Unit

  3. 集成测试Integration

验收测试 Acceptance Tests

验收测试是用来确保顺序流程准确,且各种交互特征相符用户预期的测试。

验收测试用于确认项目基本功用,保证项目中心功用没有退步,确保该项目的目的得以完成。测试运用的体式格局和用户与运用顺序的交互体式格局是一致的(比方填写表单,点击按钮)。

在上述的场景中,能够会做以下的验收测试:

  1. 用户能够经由过程登录表单登录。

  2. 用户能够建立博客。

  3. 当胜利保留一篇博客文章后,顺序会返回博客列表给用户。

  4. 访客不能接见治理界面。

单位测试 Unit Tests

单位测试是针对顺序中的最小可测试单位举行的测试,比方一个类或许一个要领。该测试能够编写与顺序逻辑相对的语句来测试相干单位

下面是一些单位测试的细致例子:

  1. 用户姓名是由对应的姓和名组合而成的。

  2. 把博客要求数据准确序列化转换为一个博客模子对象。

  3. 准确格式化博客时刻。

集成测试 Integration Tests

集成测试是处于单位测试和验收测试之间的测试。集成测试目的是考证客户端与全体系交互,一切单位测试,以及微观层面细致代码的算法逻辑是不是都能经由过程。

集成测试用来考证运用顺序各个模块相互关系,比方若干个UI控件之间的行动。也能够用于确认数据和行动在体系差别的部件中被准确的通报和实行,同时在给定假定条件下,能够供应体系各部件合营运转的状况。

我们发起对每一个组件都举行集成测试,由于组件各个组件以雷同的体式格局运转在体系的高低文中,而且组件之间也有相互影响,包含从模板中衬着组件、吸收组件生命周期回调函数。

集成测试示例以下:

  1. 用户姓名和日期准确的显现在每篇博文上

  2. 制止用户在题目栏内输入凌驾50个字符

  3. 当提交一个没有题目的博客时,显现赤色提示并给出须要题目的错误信息

  4. 博客列表滚动到最顶端显现最新博客

测试框架

QUnit是本手册的默许测试框架,然则Ember.js也支撑其他第三方的测试框架。

怎样运转测试

在敕令行输入ember test来运转测试。也能够经由过程ember test -server敕令,在每次文件修改后,从新运转测试。

在当地开辟项目的时刻能够经由过程接见/tests/index.html来运转你的测试,条件是你须要运用敕令ember server运转了你的项目。假如你是运用这类体式格局有一点须要注重:

  • 经由过程ember server运转的测试,是在开辟环境下的测试,挪用的是开辟环境下的参数

  • 经由过程ember test --server运转的测试,是在测试环境下的测试,挪用的是测试环境下的参数,比方加载的依靠也是差别的。因而我们引荐你运用ebmer test --server来运转测试。

指定测试

运用--filter选项来指定运转部份测试。比方:疾速运转当前工作的测试运用敕令ember test --filter="dashboard"、运转指定范例的测试运用敕令ember test --filter="integration"、能够运用!来消除验收测试ember test --filter="!acceptance"

更多细致内容请看下面的文章:

  1. 测试简介

  2. 验收测试

  3. 单位测试

  4. 测试组件

  5. 测试控制器

  6. 测试路由

  7. 测试模子

2.7.0的文档直接放在emberjs.ddlisting.com。能够后续就不放Ember Teach,Ember Teach就重要用于宣布与Ember相干的文章了。

程度有限,迎接斧正。你也能够直接在https://github.com/emberjschina/emberjs_guides_v2.7.0提交Requests Pull,我们会以最快时刻考核经由过程后更新到本站。

    原文作者:ember_teach
    原文地址: https://segmentfault.com/a/1190000006901778
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞