量角器不同的模拟 httpbackend 响应
protractor different mock httpbackend responses
我正在使用模拟模块进行一些测试。
页面加载时,例如
browser.get('http://localhost:5643/#/balance/import');
下面的这个 api url 被调用,我们得到下面的响应,效果很好。
$httpBackend.whenGET('https://localhost:44329/api/daystatus').respond(
{
'DayID': 249,
'weekend': false,
'dayStatusTypeID': 5,
'balance': null
}
);
但是当加载另一个页面时,例如
browser.get('http://localhost:5643/#/dashboard');
并且还在 mock 模块中调用 api url
但这次我希望它对 return 有不同的反应。 (因为加载了上一页并且发生了一些 UI 测试操作。)
$httpBackend.whenGET('https://localhost:44329/api/daystatus').respond(
{
'DayID': 249,
'weekend': false,
'dayStatusTypeID': 7,
'balance': null
}
);
我怎么能在我的模拟模块中说这次使用对 API url 的第二次调用而不是第一次调用?目前我加载的任何页面都使用:
$httpBackend.whenGET('https://localhost:44329/api/daystatus').respond(
{
'DayID': 249,
'weekend': false,
'dayStatusTypeID': 5,
'balance': null
}
);
我可以检测请求来自哪个页面吗..或者我可以传入查询字符串变量吗?不知道该怎么做。
您可以通过 Referer
header:
来区分 API 调用
$httpBackend.whenGET('https://localhost:44329/api/daystatus',
{'Referer': 'http://localhost:5643/#/balance/import'})
和:
$httpBackend.whenGET('https://localhost:44329/api/daystatus',
{'Referer': 'http://localhost:5643/#/dashboard'})
我正在使用模拟模块进行一些测试。
页面加载时,例如
browser.get('http://localhost:5643/#/balance/import');
下面的这个 api url 被调用,我们得到下面的响应,效果很好。
$httpBackend.whenGET('https://localhost:44329/api/daystatus').respond(
{
'DayID': 249,
'weekend': false,
'dayStatusTypeID': 5,
'balance': null
}
);
但是当加载另一个页面时,例如
browser.get('http://localhost:5643/#/dashboard');
并且还在 mock 模块中调用 api url
但这次我希望它对 return 有不同的反应。 (因为加载了上一页并且发生了一些 UI 测试操作。)
$httpBackend.whenGET('https://localhost:44329/api/daystatus').respond(
{
'DayID': 249,
'weekend': false,
'dayStatusTypeID': 7,
'balance': null
}
);
我怎么能在我的模拟模块中说这次使用对 API url 的第二次调用而不是第一次调用?目前我加载的任何页面都使用:
$httpBackend.whenGET('https://localhost:44329/api/daystatus').respond(
{
'DayID': 249,
'weekend': false,
'dayStatusTypeID': 5,
'balance': null
}
);
我可以检测请求来自哪个页面吗..或者我可以传入查询字符串变量吗?不知道该怎么做。
您可以通过 Referer
header:
$httpBackend.whenGET('https://localhost:44329/api/daystatus',
{'Referer': 'http://localhost:5643/#/balance/import'})
和:
$httpBackend.whenGET('https://localhost:44329/api/daystatus',
{'Referer': 'http://localhost:5643/#/dashboard'})