Protractor and $http.post
Protractor and $http.post
我有一个简单的应用程序,我可以添加对话(Q/A)。我已经为它写了测试-
describe('New Survey:', function() {
it('should be added', function() {
browser.get('http://127.0.0.1:8090/#/newConversation');
//picking a user
element.all(by.css('.form-control')).get(5).click();
element(by.model('vm.user')).sendKeys('test');
element(by.repeater('user in vm.users').row(6)).click();
//push some answers
var inputs = element.all(by.css('.form-control.validated')).each(function(element,index){
element.sendKeys('test answer');
});
//and send it
element(by.id('submit')).click();
element(by.css('.confirm')).click()
browser.waitForAngular();
});
});
点击.confirm
按钮后这个方法叫做
this.saveSurvey = function(conv) {
return $http.post('/conv', conv);
};
但量角器不等待,直到它完成所以没有对话实际上发送到服务器我怎么能让它等待,直到post完成?
您可以等待click()
函数执行,并通过等待其承诺返回来发送您的post请求。-
element(by.id('submit')).click().then(function(){
element(by.css('.confirm')).click().then(function(){
browser.sleep(2000);
//If your server returns a response in some way that the conversation is saved, you can verify it here.
});
});
希望能有所帮助。
相关文章:
- 如何从HTTP上下文对象中获取Post数据
- 如何绑定“;这个“;在$http.post中->在AngularJS中解析/拒绝?(现在this=Window对象
- Angular JS `$http`发送POST而不是GET
- 为什么我的$http.post返回一个400错误
- AngularJS$http.post调用返回502(坏网关)错误
- 如何处理HTTP 204”;无内容”;在Restangular POST中
- AngularJS$http.post没有'不适用于Chrome,仅适用于IE
- 如何将多个onError函数分配给promise(由angular's$http.post返回)
- 如何将AJAX POST转换为HTTP POST,以便在单击时发布
- $http.post undefined 不是函数
- 在Selenium IDE中执行HTTP POST
- 从 Angular 数据工厂中的 HTTP POST 请求接收未定义的结果
- $http.post() angularjs 响应函数未按正确的顺序执行
- AngularJS:POST $http意外标识符
- 如何在 NodeJS 中传递响应参数,包括来自 POST http.request 的正文
- AngularJS在POST http请求上更新模型/视图
- 如何将dropbox API v2 POST HTTP请求转换为jQuery$.ajax
- 无法运行内部功能测试.错误:[POST http://localhost:4444/wd/hub/session] co
- JavaScript可以向任何域发送POST HTTP请求吗?
- POST http://localhost:51348/TestService.svc/SendCredentials