我在Protractor中编写了一个简单的脚本,从屏幕上选择一些选项,在点击提交时,应该下载一个文件,即html内容导出为PDF。一切似乎都很好,除了Protractor超时给出错误 - “在jasmine.DEFAULT_TIMEOUT_INTERVAL指定的超时内没有调用异步回调”。
以下是代码: -
describe('Generate Reports', function () {
it('should enable the user to generate reports', function (done) {
element.all(by.tagName('button')).get(0).click();
browser.driver.sleep(3000);
var links = element.all(by.css('.dropdown')).get(0);
links.click();
links.all(by.tagName('li')).get(0).click(); // first OP
browser.driver.sleep(5000);
browser.waitForAngular();
element.all(by.css('.btn-primary')).get(1).click();
browser.driver.sleep(5000);
//For report download
var links = element(by.model('ReportType'));
links.click();
browser.driver.sleep(3000);
element(by.cssContainingText('option', 'Summary Report')).click();
browser.driver.sleep(3000);
element(by.model('ReportDownload')).click();
browser.driver.sleep(3000);
element.all(by.id('btnDownload')).click();
browser.driver.sleep(30000);
browser.waitForAngular();
});
});
我甚至尝试在配置文件中将Jasmine Default Time-out Interval增加到60秒左右。通常在正常执行期间,文件在3-4秒内下载。 但是在这里,虽然我设置了将近30秒的持续时间,但我仍然得到错误。请帮忙!!我在这里做错了什么?