Playwright 不存储完整的本地存储

问题描述 投票:0回答:1

`嗨,我正在尝试使用 Playwright 本地存储在测试中跳过登录步骤,但由于某种原因,创建的文件只包含很少的信息,我无法使用这些信息来跳过登录。 您可能知道这里的问题是什么吗?

这是我使用的代码

test('Positive Login', async ({page}) => {
    const authFile = 'e2e/.auth/userAuth.json'
    
    await loginPage.loginToApp(login_email, login_password);
    await loginPage.clickLoginButton();
    await page.context().storageState({ path: authFile });
  })

但是 userAuth.json 文件只有这些信息

  "cookies": [],
  "origins": [
    {
      "origin": "https://staging.uxtest.oculid.com",
      "localStorage": [
        {
          "name": "userpilotSettings",
          "value": "{\"endpoint\":\"wss://analytex-eu.userpilot.io/v0/events/websocket\",\"date\":1710280985903}"
        },
        {
          "name": "userpilotSDK",
          "value": "{}"
        }
      ]
    }
  ]
}

我不知道为什么只存储这个,而不存储所有必要的信息

javascript automation local-storage playwright
1个回答
0
投票

您必须将“page”作为参数传递给loginPage.loginToApp和loginPage.clickLoginButton。如果不这样做,页面状态将不会改变。

示例:

test('Positive Login', async ({page}) => {
    const authFile = 'e2e/.auth/userAuth.json'
    
    await loginPage.loginToApp(page, login_email, login_password);
    await loginPage.clickLoginButton(page);
    await page.context().storageState({ path: authFile });
  })
© www.soinside.com 2019 - 2024. All rights reserved.