Я настраиваю Playwright + TypeScript + ESM с тестами на основе данных (чтение из файла Excel).
Однако в VS Code кнопка Playwright Test Runner не отображается.
В терминале Playwright говорит: «Тесты не найдены», даже когда я передаю имя файла спецификации напрямую.
Команда и ошибка:
PS C:\MyWorkspace\Playwright> npx playwright test dataDrivenXLSX.spec.ts
Error: No tests found.
Make sure that arguments are regular expressions matching test files.
You may need to escape symbols like "$" or "*" and quote the arguments.
Я ожидаю:
Кнопку запуска VS Code для отображения моих тестов.
Я настраиваю Playwright + TypeScript + ESM с тестами на основе данных (чтение из файла Excel). Однако в VS Code кнопка Playwright Test Runner не отображается. В терминале Playwright говорит: «Тесты не найдены», даже когда я передаю имя файла спецификации напрямую. Команда и ошибка: [code]PS C:\MyWorkspace\Playwright> npx playwright test dataDrivenXLSX.spec.ts Error: No tests found. Make sure that arguments are regular expressions matching test files. You may need to escape symbols like "$" or "*" and quote the arguments. [/code] Я ожидаю: [list] [*]Кнопку запуска VS Code для отображения моих тестов. [*][code]npx playwright test[/code] для обнаружения и запуска моих тестов *.spec.ts. [*][code]npx playwright test dataDrivenXLSX.spec.ts[/code] для запуска этого файла. [/list] Структура проекта: [code]C:\MyWorkspace\Playwright ├─ sandbox\ │ └─ dataDrivenXLSX.spec.ts ├─ testdata\ │ └─ Login.xlsx ├─ playwright.config.ts ├─ tsconfig.json └─ package.json [/code] Файлы конфигурации: [list] [*][code]playwright.config.ts[/code]: [code]import { defineConfig, devices } from '@playwright/test';
const records = getLoginCreds("Login.xlsx"); for (const record of records) { test(`Login Test for ${record.username}`, async ({ page }) => { await page.goto('https://www.saucedemo.com'); await page.locator("#user-name").fill(record.username); await page.locator("#password").fill(record.password); await page.click("#login-button"); await page.waitForTimeout(1500); if (record.expectedResult === 'success') { await expect(page).toHaveURL(/inventory/); } else { const selector = page.locator("[data-test='error']"); await expect(selector).toBeVisible(); } }); } [/code]
[/list] Я пробовал: [list] [*]Гарантированное имя файла заканчивается на .spec.ts. [*]Пробывал и testDir: '.', и testDir: './tests'. [/list] По-прежнему не вижу кнопки бегунка и надписи «Нет тестов». найдено". Вопросы: [list] [*]Почему Playwright не обнаруживает никаких тестов (как средства запуска VS Code, так и CLI), хотя мой файл *.spec.ts существует? [*]Какие-либо настройки VS Code необходимы для того, чтобы обозреватель тестов Playwright отображал средство выполнения? [/list]