import { test, expect } from '@playwright/test';
// Получаем логин и пароль из переменных окружения
const username = process.env.LOGIN;
const password = process.env.PASSWORD;
test('Login to the dashboard with secrets', async ({ page }) => {
// Проверяем, что секреты существуют
if (!username || !password) {
throw new Error('LOGIN or PASSWORD environment variables are not set.');
}
// Переходим на страницу логина
await page.goto('https://my-service.com/login');
// Заполняем форму
await page.fill('input[name="username"]', username);
await page.fill('input[name="password"]', password);
// Нажимаем на кнопку входа
await page.click('button[type="submit"]');
// Ждём, пока страница загрузится и проверяем, что логин успешен
await page.waitForSelector('.dashboard-ready');
await expect(page.url()).toContain('/dashboard');
});import { test, expect } from '@playwright/test';
// Тест для проверки API
test('API request with secret', async ({ request }) => {
// Получаем токен из переменной окружения
const apiToken = process.env.PINGERA_API_TOKEN;
// Проверяем, что токен существует
if (!apiToken) {
throw new Error('PINGERA_API_TOKEN environment variable is not set.');
}
// Выполняем GET-запрос к API, используя токен в заголовке
const response = await request.get('https://api.pingera.ru/v1/pages', {
headers: {
'Authorization': `${apiToken}`,
'Content-Type': 'application/json'
},
});
// Проверяем, что запрос был успешен
expect(response.status()).toBe(200);
// Выводим тело ответа для отладки
const responseBody = await response.json();
console.log(responseBody);
});