Page 271 - AngularJS权威教程
P. 271
19.14 测试一个应用 251
whenJSONP()为JSONP请求创建了一个新的后端定义。它只带有一个参数。 19
url:一个HTTP URL。
// ... 20
$httpBackend.whenJSONP("/v1/api/current_user")
.respond({userId: 123});
21
whenPOST()为POST请求创建了一个新的后端定义。它带有三个参数。
url :一个HTTP URL。
data(可选):HTTP请求的主体,或者是个函数,接受一个data字符串并且在data符合 22
预期时返回true,或者是一个用JSON格式发送HTTP主体的JavaScript对象。
headers:(可选) HTTP头。 23
// ...
$httpBackend.whenPOST("/v1/api/sign_up", 24
{'userId': 1234})
.respond(200);
whenPUT()为PUT请求创建了一个新的后端定义。它带有三个参数。 25
url:一个HTTP URL。
26
data (可选:HTTP请求的主体,或者是个函数,接受一个data字符串并且在data符合
预期时返回true,或者是一个用JSON格式发送HTTP主体的JavaScript对象。
headers (可选):HTTP头。 27
// ...
$httpBackend.whenPUT("/v1/api/user/1234", {'name': 'Ari'}); 28
whenDELETE()为DELETE请求创建了一个新的后端定义。它带有两个参数。
url:一个HTTP URL。 29
headers -(可选) HTTP头。
// ... 30
$httpBackend.whenDELETE("/v1/api/user/123")
.respond(200);
31
19.14 测试一个应用
32
测试机制建立起来之后,就可以开始测试应用的不同组件了。模块中只要包含了有可能发生
变化的逻辑,那这些部分都很适合测试。路由是按照我们期望的那样运作的吗?页面包含指定内
33
容吗?控制器代码执行了吗?
我们要关注:测试应用的不同组件,最常见的测试应用的地方,还有测试不同组件的经验 34
技巧。
我们会测试应用中的下列组件: 35
路由;
请求和页面内容; 36