问题标签 [jest-puppeteer]
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.
angular - 如何在 jest puppeteer e2e 测试中运行单个测试文件?
我是 puppeteer 自动化测试的新手,谁能告诉我如何只执行一个测试文件。
jestjs - 预设 jest-puppeteer 无效
在一个有效的 jest + puppeteer 项目中,我正在转向 jest-circus 以使用jest-circus 重试功能。如文件所述,我安装了 jest-circus 并设置为跑步者,但我获得了像往常一样运行测试
这是我的 jest.config.js 文件
我没有找到任何谈论我的问题的页面,jest-circus 和 jest-preset 不能共存?
jasmine - 监视傀儡电话
我正在构建一个使用 puppeteer 的网络爬虫。我显然想确保在解决问题时不会破坏事情,所以我正在编写一些实现测试。
我将如何测试下面的代码?问题是 newPage() 是嵌套的,我不知道如何为它创建一个间谍。
有任何想法吗?我是否应该以不同的方式构造代码以使其更易于测试(从我读过的内容来看这是一个很大的禁忌)。很高兴听到您的建议。
javascript - 使用 Jest-Puppeteer (Javascript) 进行 HTML 画布测试
我有一个签名组件 (React.js),需要使用我用 Jest-Puppeteer 构建的自动化套件进行测试。该组件是一个<canvas>
HTML 元素。
<canvas width="1316" height="500" style="width: 100%; touch-action: none;"></canvas>
我找到了这个 npm 包:https ://www.npmjs.com/package/jest-canvas-mock和 StackOverflow 上的另一个解决方案:HTML Canvas Unit testing
但是,我想知道是否有人可以更全面地解释如何准确地在<canvas>
标签上自动化一个过程,然后用 Jest-Puppeteer 理想地断言它,即它是如何ctx
工作的,它的属性等。
谢谢!
jestjs - Jest-Puppeteer 测试失败 - 目标已关闭
这是我第一次使用 puppeteer 进行的笑话测试。我正在尝试登录一个站点并测试登录后第一页的标题是否正确。
这是在 headful 模式下完成的。
我可以看到登录成功。但是测试失败,vsCode 终端显示如下错误。请指教。
///////////////// 错误信息 ////////////////// PS F:\Projects\onplan_jest> npm 测试
PS F:\Projects\onplan_jest> npm 测试
onplan_jest@1.0.0 测试 F:\Projects\onplan_jest jest
FAIL ./login.test.js ● 测试套件无法运行
测试套件:1 个失败,总共 1 个测试:总共 0 个快照:总共 0 个时间:6.811 秒运行所有测试套件。(节点:501740)UnhandledPromiseRejectionWarning:错误:协议错误(Runtime.callFunctionOn):目标已关闭。
在 F:\Projects\onplan_jest\node_modules\puppeteer\lib\Connection.js:148:63 在 CDPSession.send 处的新 Promise () (F:\Projects\onplan_jest\node_modules\puppeteer\lib\Connection.js:147: 16) 在 ExecutionContext._evaluateInternal (F:\Projects\onplan_jest\node_modules\puppeteer\lib\ExecutionContext.js:77:50) 在 ExecutionContext.evaluateHandle (F:\Projects\onplan_jest\node_modules\puppeteer\lib\ExecutionContext.js: 35:21)在 ExecutionContext。(F:\Projects\onplan_jest\node_modules\puppeteer\lib\helper.js:83:27) 在 ElementHandle.evaluateHandle (F:\Projects\onplan_jest\node_modules\puppeteer\lib\JSHandle.js:43:46) 在 ElementHandle . (F:\Projects\onplan_jest\node_modules\puppeteer\lib\helper.js:83:27) 在 ElementHandle.$ (F:\Projects\onplan_jest\node_modules\puppeteer\lib\JSHandle.js:347:35) 在 ElementHandle . (F:\Projects\onplan_jest\node_modules\puppeteer\lib\helper.js:83:27) -- ASYNC -- 在 ExecutionContext。(F:\Projects\onplan_jest\node_modules\puppeteer\lib\helper.js:82:19) 在 ElementHandle.evaluateHandle (F:\Projects\onplan_jest\node_modules\puppeteer\lib\JSHandle.js:43:46) 在 ElementHandle . (F:\Projects\onplan_jest\node_modules\puppeteer\lib\helper.js:83:27) 在 ElementHandle.$ (F:\Projects\onplan_jest\node_modules\puppeteer\lib\JSHandle.js:347:35) 在 ElementHandle . (F:\Projects\onplan_jest\node_modules\puppeteer\lib\helper.js:83:27) 在 DOMWorld.$ (F:\Projects\onplan_jest\node_modules\puppeteer\lib\DOMWorld.js:96:38) 在 processTicksAndRejections (internal/process/task_queues.js:97:5) -- ASYNC -- 在 Frame。(F:\Projects\onplan_jest\node_modules\puppeteer\lib\helper.js:82:19) 在 Page.$ (F: \Projects\onplan_jest\node_modules\puppeteer\lib\Page.js:219:33) 在 Page.$ (F:\Projects\onplan_jest\node_modules\puppeteer\lib\helper.js:83:27) 在 Object. (F:\Projects\onplan_jest\login.test.js:48:27) (node:501740) UnhandledPromiseRejectionWarning:未处理的承诺拒绝。此错误源于在没有 catch 块的情况下抛出异步函数内部,或拒绝未使用 .catch() 处理的承诺。要在未处理的 Promise 拒绝时终止节点进程,请使用 CLI 标志 此错误源于在没有 catch 块的情况下抛出异步函数内部,或拒绝未使用 .catch() 处理的承诺。要在未处理的 Promise 拒绝时终止节点进程,请使用 CLI 标志 此错误源于在没有 catch 块的情况下抛出异步函数内部,或拒绝未使用 .catch() 处理的承诺。要在未处理的 Promise 拒绝时终止节点进程,请使用 CLI 标志--unhandled-rejections=strict
(见https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode)。(拒绝 ID:1)(节点:501740)[DEP0018] DeprecationWarning:不推荐使用未处理的承诺拒绝。将来,未处理的 Promise 拒绝将使用非零退出代码终止 Node.js 进程。错误:找不到进程“497896”。测试运行完成后一秒钟,Jest 没有退出。
这通常意味着在您的测试中没有停止异步操作。考虑运行 Jest--detectOpenHandles
来解决此问题。在对象。(F:\Projects\onplan_jest\login.test.js:48:27) (node:501740) UnhandledPromiseRejectionWarning:未处理的承诺拒绝。此错误源于在没有 catch 块的情况下抛出异步函数内部,或拒绝未使用 .catch() 处理的承诺。要在未处理的 Promise 拒绝时终止节点进程,请使用 CLI 标志--unhandled-rejections=strict
(请参阅https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode)。(拒绝 ID:1)(节点:501740)[DEP0018] DeprecationWarning:不推荐使用未处理的承诺拒绝。将来,未处理的 Promise 拒绝将使用非零退出代码终止 Node.js 进程。错误:找不到进程“497896”。测试运行完成后一秒钟,Jest 没有退出。
这通常意味着在您的测试中没有停止异步操作。考虑运行 Jest--detectOpenHandles
来解决此问题。(节点:501740)UnhandledPromiseRejectionWarning:TypeError:测试环境被拆除后捕获错误
赋值给常量变量。(节点:501740)UnhandledPromiseRejectionWarning:未处理的承诺拒绝。此错误源于在没有 catch 块的情况下抛出异步函数内部,或拒绝未使用 .catch() 处理的承诺。要在未处理的 Promise 拒绝时终止节点进程,请使用 CLI 标志--unhandled-rejections=strict
(请参阅https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode)。(拒绝编号:3)
jestjs - Jest-Puppeteer - 期望调用一个断言,但接收到零个断言调用
此脚本正在登录站点。这是我的第一个笑话测试。测试前的最后一行单击 ul 下拉列表中的 li。然后我们导航到带有 url https://uat2.onplanapp.com/#/的新页面
作为一个简单的测试,我试图检查这确实是新页面的 url。当我在浏览器中观看时,脚本会登录并导航到正确的页面。
得到如下所示的错误。
代码
错误信息
onplan_jest@1.0.0 测试 F:\Projects\onplan_jest jest
FAIL ./login.test.js (6.165 s) × url 应该是正确的" (2 ms)
● url 应该是正确的”
● url 应该是正确的”
● url 应该是正确的”
测试套件:1 个失败,总共 1 个测试:1 个失败,总共 1 个快照:总共 0 个时间:6.316 秒,估计 7 秒运行所有测试套件。测试运行完成后一秒钟,Jest 没有退出。
这通常意味着在您的测试中没有停止异步操作。考虑运行 Jest--detectOpenHandles
来解决此问题。
错误信息结束
jestjs - Jest-Puppeteer 为什么警告“测试运行完成后一秒钟 Jest 没有退出
我终于通过了我的第一个笑话木偶测试。- 下面的代码。但是我收到了警告。
测试运行完成后一秒钟,Jest 没有退出。这通常意味着在您的测试中没有停止异步操作。考虑运行 Jest--detectOpenHandles
来解决此问题。
我在stackoverflow上查看了其他问题,看起来我应该使用我添加到测试中的“完成”。但是我仍然收到同样的警告。测试仍然通过。
为什么我会收到警告?
javascript - Jest-Puppeteer > 试图获取页面上最后一个 h4 的 textContent
我正在尝试获取页面上最后一个 h4 的 textContent。以下是我的代码片段。当我 console.log models.length 为 0 时。页面上实际上有 39 个 h4。
请指教
javascript - 如何使用 puppeteer 获取 oauth 访问令牌?
我需要先获取 oauth 访问令牌,然后将其作为参数传递给我的发布请求,请让我知道如何使用 puppeteer 来实现。
我是木偶师的新手,我很乐意协助。
jestjs - 如何使用 Jest 运行来自不同文件的不同描述块
我需要以确定的顺序运行来自不同文件的不同描述块。此外,我需要在此块之间传递 1 个参数,但该参数需要保持它离开之前描述的状态。例如,我有这个:
文件1.test.js
文件2.test.js
我想使用此参数按以下顺序运行测试:
我用来运行测试:jest --runInBand