在puppeteer中自动化时如何在页面上执行js函数?

dna*_*ion 3 javascript puppeteer

假设脚本已导航到特定页面。如何在该脚本中执行js函数?

describe("TestSuite", () => {
  test("Login", async() => {
    await page.goto(APP);
    await page.waitForSelector("[name=loginForm]");
    await page.click("input[name=username]");
    await page.type("input[name=username]", user.username);
    await page.click("input[name=pwd]");
    await page.type("input[name=pwd]", user.pwd);
    await page.click("input[name=login]");
    await page.waitForSelector(".PageBodyVertical");

 // execute a js function x() here which is loaded with the page.

  }, 60000);
Run Code Online (Sandbox Code Playgroud)

Pjo*_*kov 8

使用.evaluate()函数。

describe("TestSuite", () => {
  test("Login", async() => {
    await page.goto(APP);
    await page.waitForSelector("[name=loginForm]");
    await page.click("input[name=username]");
    await page.type("input[name=username]", user.username);
    await page.click("input[name=pwd]");
    await page.type("input[name=pwd]", user.pwd);
    await page.click("input[name=login]");
    await page.waitForSelector(".PageBodyVertical");

    await page.evaluate( function(){
      x();
    } );

  }, 60000);
Run Code Online (Sandbox Code Playgroud)

  • @CodeGuru 通过在 stackoverflow 上搜索 /sf/answers/3226891391/ (3认同)