问题标签 [playwright]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 如何在 playwright 中运行自定义 js 函数
如何在 playwright 中运行自定义 js 函数?例如显示警报。我已经尝试过这种方式,但没有奏效。
javascript - 滚动到框架内的元素
我目前正在尝试与剧作家进行测试。我有一个网站,其中 DOM 元素位于框架内。
我试图创建一个 scrollIntoView 函数来获取选择器并滚动到视图中,但它似乎不起作用。
如何滚动到框架内的元素?
node.js - 使用 Playwright 制作 PDF 时控制边距
从无头 chrome Playwright 会话(下面的代码)制作 PDF 时,我在左侧得到 PDF,而如果我通过在 chrome 中保存到 pdf 来完成它,我得到第二个输出。
我已经明确设置并使用了边距,preferCSSPageSize: true
并且两者都给出了相同的(左)结果。
我如何让 Playwright 从打印对话框中为我提供与 chrome 相同的输出?
正在打印的文件的示例在这里。(在现实生活中,考虑到脊椎宽度,它们都略有不同。)
javascript - 如何聚焦当前标签木偶
如何专注于 puppeteer 中新打开的选项卡?我单击页面上打开一个新选项卡的元素,然后 puppeteer 将注意力集中在由于某种原因刚刚离开的页面上。如何专注于新打开的选项卡?我正在使用谷歌浏览器
javascript - 如何超时页面。评估
这是一个代码片段。过一会就卡住了。我需要为此添加超时:
如何让它在 n 秒后超时?它会使网页在一段时间后卡住,我必须手动关闭它才能继续运行。
javascript - 使用 UI 登录测试的节点
我使用以下博客来使用播放权限登录,我需要类似的东西用于我的应用程序,当我使用时,headless:flase
我看到它打开了带有用户密码的 UI,但是它没有点击登录按钮,我采用了代码我尝试以下方法,我错过了什么吗?
javascript - 如何在 puppeteer/playwright 中获取 pageXOffset 和 pageYOffset
我想获取元素的 pageXOffset 和 pageYOffset。这是我尝试过的代码
element
在哪里ElementHandle
。但不知何故,我得到偏移值为零。想知道我在这里错过了什么
cron - 为什么我在 cron 中启动时 WebKit 不工作,但在终端中启动时工作?
我正在playwright
使用 Ubuntu 18.04 的 VPS 上的 WebKit、Firefox 和 Chromium 上启动脚本。如果我像这样在终端中键入它,则在我的 VPS 上使用绝对路径所有三个都会启动并正常运行cd /home/me/desktop/myCode && /usr/bin/npm run webkit > /home/me/desktop/errors.log 2>&1
。这让我觉得我已经从这里正确安装了所有依赖项:https ://github.com/microsoft/playwright/blob/master/docs/docker/Dockerfile.bionic
但是,当我使用完全相同的脚本但通过 cron 时,Firefox 和 Chromium 启动并正常运行,但 Webkit 版本启动(它在启动 WebKit 之前执行异步请求并且发生这种情况),但是当 WebKit 尝试启动它时,整个程序都失败了. cron 脚本如下所示:
8 14 * * * cd /home/me/desktop/myCode && /usr/bin/npm run webkit > /home/me/desktop/errors.log 2>&1
错误如下所示:
这是 Typescript 中的一些代码,以防传入 webkit 的 args 出现问题:
dom - 无法使用 playwright 读取有效选择器的 null 属性 innerText
该脚本应该检索 DOM 元素的 innerText,元素选择器是
('div[class=QzVHcLdwl2CEuEMpTUFaj]')
,我已经手动测试了选择器并getSharePrice
在 REPL 中调用了该函数,该函数也可以工作。
出于某种原因,我收到一个(node:59324) UnhandledPromiseRejectionWarning: Error: Evaluation failed: TypeError: Cannot read property 'innerText' of null
错误,不知道为什么。
我唯一能想到的是该元素尚未加载,导致它评估为 null 这就是无法调用 innerText 的原因。
puppeteer - 如果元素具有特定颜色,如何与木偶师或剧作家核对?
我有一个具有这种样式颜色的元素:#dc7709,我想检查该元素的文本是否具有该颜色。我如何使用 Puppeteer 或剧作家做到这一点?