fix(stealth): 修复 launch 选项与测试基线不一致问题

在 stealth 默认策略下保留自定义 user-agent,不再被 CDP 覆盖。

同步更新 protocol/browser/launch/file-access 相关测试预期,并放宽 browser.test 的 hook 超时以消除偶发超时。
This commit is contained in:
leeguooooo
2026-02-24 17:42:12 +09:00
parent aef8fcc038
commit ec011f46ff
6 changed files with 48 additions and 30 deletions
+2 -2
View File
@@ -146,9 +146,9 @@ describe('File Access (Issue #345)', () => {
const content = await page.locator('h1').textContent();
expect(content).toBe('Test File Access');
// Verify webdriver is hidden (from custom arg)
// Verify webdriver is hidden under stealth defaults
const webdriver = await page.evaluate(() => navigator.webdriver);
expect(webdriver).toBe(false);
expect(webdriver).toBeUndefined();
});
});
});
+7 -7
View File
@@ -11,7 +11,7 @@ describe('Launch Options', () => {
});
describe('browser args', () => {
it('should launch with custom args to disable webdriver detection', async () => {
it('should keep webdriver undefined with custom args under stealth defaults', async () => {
browser = new BrowserManager();
await browser.launch({
headless: true,
@@ -21,9 +21,9 @@ describe('Launch Options', () => {
const page = browser.getPage();
await page.goto('about:blank');
// Check that navigator.webdriver is false
// Under stealth defaults, webdriver is hidden (undefined)
const webdriver = await page.evaluate(() => navigator.webdriver);
expect(webdriver).toBe(false);
expect(webdriver).toBeUndefined();
});
it('should launch with multiple args', async () => {
@@ -39,7 +39,7 @@ describe('Launch Options', () => {
expect(browser.isLaunched()).toBe(true);
});
it('should launch without args (default behavior)', async () => {
it('should launch without args and keep webdriver hidden by default', async () => {
browser = new BrowserManager();
await browser.launch({
headless: true,
@@ -48,9 +48,9 @@ describe('Launch Options', () => {
const page = browser.getPage();
await page.goto('about:blank');
// Default Playwright behavior - webdriver is true
// Stealth default behavior - webdriver is hidden
const webdriver = await page.evaluate(() => navigator.webdriver);
expect(webdriver).toBe(true);
expect(webdriver).toBeUndefined();
});
});
@@ -152,7 +152,7 @@ describe('Launch Options', () => {
// Verify webdriver is hidden
const webdriver = await page.evaluate(() => navigator.webdriver);
expect(webdriver).toBe(false);
expect(webdriver).toBeUndefined();
});
});
});