ค้นหาเว็บไซต์

typescript - ไม่สามารถเรียกใช้งานการทดสอบใน Firefox ได้ (playwright - การดำเนินการทั้งหมดหมดเวลา)


แปลกมาก ผมดูเหมือนว่าจะไม่สามารถทำให้การทดสอบใด ๆ รันใน Firefox ได้เลย มันมักจะหมดเวลารอการกระทำต่าง ๆ (เช่น setChecked(true), click(), เป็นต้น) ตัวระบุตำแหน่งถูกต้อง และถ้าผมกำหนดโฟกัสไปยังองค์ประกอบแล้วใช้การป้อนข้อมูล/กดคีย์บอร์ดแทน ผมก็สามารถทำให้มันทำงานได้

ฉันยังพยายามสร้างการทดสอบตัวอย่างง่ายๆ เข้าไปที่ Google พิมพ์ข้อความแล้วคลิกค้นหา การคลิกหมดเวลา

อีกครั้ง ตัวระบุตำแหน่งใช้ได้ ทุกองค์ประกอบและประเภทตัวระบุตำแหน่งสามารถใช้ได้และสามารถพบได้บนหน้า การยืนยันก็ใช้ได้เช่นกัน (เช่น element...isVisible) การกระทำคือการคลิก! และหากไม่คลิก ก็เอาไปทำอะไรไม่ได้มากนัก

ตัวอย่างผลลัพธ์: ดูที่ setChecked นั่นคือ 'ข้อผิดพลาด' มันแค่ใช้ไม่ได้

 8 |     await checkBox.isVisible();
    >  9 |     await checkBox.setChecked(true);
         |                    ^
      10 |     await expect(checkBox).toBeChecked();

Webkit และ Chrome ใช้งานได้ดีไม่มีปัญหา ในโปรเจกต์ของฉันฉันมีการทดสอบที่ซับซ้อน/ละเอียดประมาณ 40 รายการที่ทำงานได้อย่างราบรื่นบนเบราว์เซอร์เหล่านั้น แต่ Firefox กลับไม่ทำงานเลย ฉันได้อัปเดต Playwright และติดตั้งเบราว์เซอร์เวอร์ชันล่าสุดแล้ว แต่ก็ยังใช้ไม่ได้

ฉันไม่มีความคิดเลยว่าเกิดอะไรขึ้น และดูเหมือนว่าฉันจะหาใครที่เจอปัญหานี้ไม่ได้

--- ตัวอย่างง่ายๆ ที่ไม่ใช่จากโปรเจกต์ของฉัน แต่ฉันได้ลองทดสอบง่ายๆ คล้ายกันโดยไปที่ Google แล้วทำการค้นหา

const { test, expect } = require("@playwright/test");
test("simple test", async ({
  page,
}) => {
  await page.goto("https://playwright.dev/"); 
  await expect(page).toHaveTitle(/Playwright/); 
  const getStarted = page.locator("text=Get Started"); 
  await expect(getStarted).toHaveAttribute("href", "/docs/intro");
  await getStarted.click(); // In firefox this will fail/timeout.
  await expect(page).toHaveURL(/.*intro/);
});