在新标签页中打开PDF文件时,量角器测试失败

时间:2019-01-30 17:04:51

标签: javascript angularjs protractor

在我们的应用程序中,当我们单击按钮时,它正在新的浏览器选项卡中打开PDF文件。我试图验证URL是否正确打开,所以我按照给出的here的答案编写了代码:

G.View_Doc_Button.click();
      browser.sleep(2000);
      browser.getAllWindowHandles().then(function (handles) {
         console.log(handles);
         let newWindowHandle = handles[1]; 
         browser.driver.switchTo().window(newWindowHandle).then(function() {

            browser.getCurrentUrl().then(function(Tab){
               expect(Tab).toBe('localhost:10001/assets/Doc.pdf');

            });
            browser.close();
            browser.driver.switchTo().window(handles[0]);
         });
         // browser.driver.switchTo().window(handles[1]);


         // browser.driver.close();

         // browser.driver.switchTo().window(handles[0]);

      });

代码在这些行上失败:

browser.getCurrentUrl().then(function(Tab){
           expect(Tab).toBe('localhost:10001/assets/Doc.pdf');

        });

由于选项卡打开了PDF文档,因此很可能导致失败。错误是

  

” AfterAll失败:等待量角器与   页面:“ angularJS可测试性和角度可测试性都   未定义。这可能是因为这是一个非角度页面,或者   由于您的测试涉及客户端导航,因此可以   干扰量角器的引导。参见https://github.com/angular/protractor/issues/2643   有关详细信息”“

请注意,如果我删除了URL验证部分,则代码可以正常工作。但这超出了我的目的。

如何解决?

0 个答案:

没有答案