打开PDF时,Testcafe无法截屏

时间:2018-09-17 06:08:45

标签: pdf screenshot e2e-testing testcafe

我想使用TestCafe从本地目录打开PDF文件,然后截取PDF文件的屏幕截图。

但是它一直在给我错误

ERROR The Chrome 68.0.3440 / Windows 10.0.0 browser disconnected. This problem may appear when a browser hangs or is closed, or due to network issues.

我的代码非常简单。只需打开PDF,然后截屏即可。

test('pdfscreenshot', async t => {
    await t
        .navigateTo(`file:///TestCafe/screenshots/picture.pdf`)
        .takeScreenshot('picture.png')
});

我不确定自己在做什么错。如果不是PDF,我可以截取屏幕截图。就是如果我将其更改为

.navigateTo(`https://www.google.com`)

有效

1 个答案:

答案 0 :(得分:1)

TestCafe不支持使用非HTML文件(例如,图像或PDF文件)。不过,您可以创建一个测试来检查文件状态。

为此,请使用Request module通过文件URL获取文件内容。如果picture.pdf位于文件系统中,则也可以使用“ fs”模块。然后,您可以根据需要处理此内容(例如,检查文件是否为PDF)。以下nodejs模块可能对此有所帮助:https://www.npmjs.com/package/is-pdf-file

如果要在TestCafe测试中执行此操作,请创建不带页面的“灯具”:

fixture `Check PDF`;
   test('first test', async t => {
   // ...
});