从量角器保存网页(右键单击 - >另存为... - 从页面上下文菜单中)

时间:2017-08-28 14:19:40

标签: html angular protractor

在Protractor测试执行期间,我自动保存网页有问题。我想在测试执行期间获取此上下文菜单:

enter image description here

但我得到了这个:

enter image description here

我不知道为什么这个菜单在Chrome中打开时与在测试执行期间打开时不同。我得到了这个菜单:

browser.driver.actions().click(protractor.Button.RIGHT).perform();

问题是我无法向驱动程序发送Ctrl + S命令。我试过这行代码没有成功:

browser.actions().keyDown(protractor.Key.CONTROL).sendKeys('s').perform();

我使用Ctrl + S在Chrome中获得了正确的菜单,但在这里我无法发送此快捷键,有趣的是,如果我写了#39,则Ctrl + A可以正常工作(所有页面文本都已选中) ;一个'而不是'而是''它没有用。箭头向下也不起作用:

browser.actions().sendKeys(protractor.Key.ARROW_DOWN).perform();

即使菜单打开,我也无法专注于正确的菜单项。

还有另一个问题,用第二个菜单保存的页面不完整(HTML不完整,它是Angular 2应用程序,并且不包括一个组件的HTML,就像它没有呈现一样)。只有在Chrome中手动保存页面或者在测试执行期间手动保存页面时(例如,在漫长的browser.sleep期间),我才会获得完整的HTML。

因为我只想获得进一步分析的页面来源,所以我也尝试了:

browser.getPageSource().then((src) => {
    let source = src;
});

仍然,页面来源不完整。缺少使用ng-switch呈现的一个组件的HTML。我有这段代码来确保Angular渲染完成:

beforeAll(() => {
    browser.waitForAngular();
});

我的问题是: 有没有办法使用Protractor从Angular 2应用程序保存整页源?

0 个答案:

没有答案