剧作家未能填写输入

Bra*_*ing 6 browser-automation node.js playwright

我正在具有输入元素的 Jenkins 页面上运行 Playwright 脚本。当我尝试使用fill文本输入之一时,它失败并出现以下错误:

\n
(node:3337) UnhandledPromiseRejectionWarning: page.fill: Protocol error (Page.insertText): error in channel "content::page": exception while running method "insertText" in namespace "page": Component returned failure code: 0xc1f30001 (NS_ERROR_NOT_INITIALIZED) [nsITextInputProcessor.commitCompositionWith] _insertText@chrome://juggler/content/content/PageAgent.js:891:32\n
Run Code Online (Sandbox Code Playgroud)\n

我尝试在DEBUG=pw:api environment启用的情况下运行,但那里的日志没有太大帮助。从正常的控制台日志中我得到以下日志:

\n
waiting for selector "input[name="_.buildNumber"]"\n  selector resolved to visible <input value="" type="text" name="_.buildNumber" class=\xe2\x80\xa6/>\nelementHandle.fill("54")\n  waiting for element to be visible, enabled and editable\n  element is visible, enabled and editable\n
Run Code Online (Sandbox Code Playgroud)\n

因此,该元素似乎存在并且可以编辑,但由于某种原因,剧作家未能成功尝试填充它。我在这里缺少什么?

\n

Bra*_*ing 2

这是Firefox 特有的Playwright 错误。现在要解决这个问题,您应该能够在导入语句中切换到使用 Chrome 或 Safari。所以要么:

import { chromium } from 'playwright';
Run Code Online (Sandbox Code Playgroud)

或者使用 Safari:

import { webkit } from 'playwright';
Run Code Online (Sandbox Code Playgroud)