Typescript 角度8的量角器全页屏幕截图
我正试图用量角器和摩卡咖啡拍摄一张有角度的页面截图。我们一直在使用Typescript 角度8的量角器全页屏幕截图,typescript,selenium,protractor,automated-tests,mocha.js,Typescript,Selenium,Protractor,Automated Tests,Mocha.js,我正试图用量角器和摩卡咖啡拍摄一张有角度的页面截图。我们一直在使用量角器截图utils作为依赖项,并在conf.js文件中使用它来覆盖浏览器.takeScreenshot() 不幸的是,它并没有完全覆盖它,我也无法拍摄一个角度页面的完整页面截图(它完全在非角度页面上工作)。测试得到的屏幕截图是浏览器可以显示的,不包括页面的其余部分,这些部分归结为我的问题 如果你使用chrome浏览器时出现问题,那么有没有其他解决方法可以使用Gradutor+mocha对有角度的页面进行整页截图?这可能是你的导航
量角器截图utils
作为依赖项,并在conf.js文件中使用它来覆盖浏览器.takeScreenshot()代码>
不幸的是,它并没有完全覆盖它,我也无法拍摄一个角度页面的完整页面截图(它完全在非角度页面上工作)。测试得到的屏幕截图是浏览器可以显示的,不包括页面的其余部分,这些部分归结为我的问题
如果你使用chrome浏览器时出现问题,那么有没有其他解决方法可以使用Gradutor+mocha对有角度的页面进行整页截图?这可能是你的导航器。
你可以用黑客来修复它
browser.driver.manage().window().setSize(320, 2000);
我建议您看看这里,它可能会有所帮助:我之前遇到过类似的问题。我在C#中使用了一种自定义方法来滚动和捕获屏幕截图,然后缝合它们。我知道这可能会很麻烦,但在需要的时候会做。逻辑可以在这些方面起作用-
注意网页的高度和宽度
如果已到达页面底部,则检查条件
你可以截图并保存它
按“高度”值向下滚动
重复步骤2
此外,还有一些第三方库可用于解决此问题
虽然我没有现成的脚本,但您可以查看这些有用的资源(来自StackOverflow answer),它不会覆盖takescreenshot方法,而是创建一个新函数screenShotUtils()你可以打电话anywhere@PDHide这行setAsDefaultScreenshotMethod:true实际上应该根据文档覆盖它。哪个文档,global.function是声明全局函数的一种方式,如take screenshot,浏览器etc@PDHide检查页面底部是否有注释//这将覆盖默认的browser.takeScreenshot()方法以获取完整的页面图像。您使用的是导航器吗?这实际上显示了我们页面的移动web视图。不是一个选项你真的可以强迫它出现在web视图上吗?如描述中所列,我已经在使用量角器屏幕截图UTIL了。不幸的是,它在Angular 8上不起作用。嘿@MielYan-你能确认一下你是否在[1]Chrome最新版本、[2]Chrome较低版本(比如v75)、[3]Firefox上试用过它吗?问题可能是特定于浏览器+Angular 8组合。
browser.driver.manage().window().setSize(320, 2000);