javascript - 使用 test.BeforeAll 转到页面 URL 以获取 playwright-test runner

标签 javascript playwright

test.beforeAll(async ({ page }) => {
   // Go to the starting url before each test.
   await page.goto('https://my.start.url/');
 });
playwright-test runner 中是否有一种很好的方法来设置浏览器并导航到与页面对象相关的页面以运行该文件中的测试?
如果可能的话,我想避免为每个人做这个“test.beforeEach”。目前在 playwright-test 中不可能做到这一点,但在玩笑中是可能的。有任何想法吗?
Property 'page' does not exist on type 'PlaywrightWorkerArgs & PlaywrightWorkerOptions'.

最佳答案

如上所述(Leon),您可以创建自己的页面,但为了避免为每个测试创建一个新页面(Joaquin Casco 询问过它),只是不要将页面作为参数传递给您的测试函数。
我是说:

const { chromium } = require('playwright');
const { test } = require('@playwright/test');

test.beforeAll(async () => {
    const browser = await chromium.launch();
    const page = await browser.newPage();

    // Go to the starting url before each test.
    await page.goto('https://my.start.url/');
});

// Will create a new page instance
test('Test with page as parameter', async ({ page }) => {}) 

// Does not create new page, so you can use the page from beforeAll hook (if you bring it into the scope)
test('Test without page as parameter', async () => {}) 

关于javascript - 使用 test.BeforeAll 转到页面 URL 以获取 playwright-test runner,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68281091/

相关文章:

javascript - JQuery 会干扰 bokeh.js。为什么?

puppeteer - 如果元素具有特定颜色,如何与 puppeteer 师或剧作家核对?

node.js - 使用 Playwright 制作 PDF 时控制页边距

javascript - 如何获得剧作家的元素集合?

c# - Playwright (.NET) 尝试使用与安装的浏览器版本不同的浏览器版本

javascript - 不自调用匿名函数

javascript - 从 promise 链的中间解决

javascript - jQuery 没有响应第一段隐藏

node.js - 编剧:从不能使用 page.setInputFiles 的非输入元素上传文件?

javascript重定向到新窗口