Добрый день. Пишу тест с использованием playwrith. Задание почти решено, но не могу сделать так, чтобы мои тесты читали данные из файла.
Вот код:
const user = require('../user.js');
const { test, expect, chromium } = require('@playwright/test');
//
test('goodAutorisation', async ({page}) => {
//const browser = chromium.launch({headless: false, slowMo: 5000});
//const page = await browser.newPage();
test.setTimeout(120000);
await page.goto('https://netology.ru/?modal=sign_in', { timeout: 60000 });
await page.pause();
// Click [placeholder="Email"]
await page.locator('[placeholder="Email"]').click();
// Fill [placeholder="Email"]
await page.locator('[placeholder="Email"]').fill(user.username);
// Click [placeholder="Пароль"]
await page.locator('[placeholder="Пароль"]').click();
// Fill [placeholder="Пароль"]
await page.locator('[placeholder="Пароль"]').fill(user.password);
// Click [data-testid="login-submit-btn"]
await Promise.all([
page.waitForNavigation( /*{ url: 'https://netology.ru/profile' }*/),
page.locator('[data-testid="login-submit-btn"]').click()
]);
await expect().locator('[data-testid="menu-userface"] div');
await browser.close();
});
Вот то, что стоит в файле:
const username = '123@mail.ru';
const password = '12345';
Пыталась вывести через функцию:
function username() {
return '123@mail.ru';
}
Через сетеры:
// let user = {
// username : '123@mail.ru',
// password: '12345',
// get username() {
// return `${this.username}`;
// },
// set username(value) {
// [this.username] = value.split(' ');
// }
// };
Во всех случаях при запуске теста выводится
TypeError: Cannot read properties of undefined (reading 'username')
или
locator.fill: value: expected string, got undefined
Помогите, пожалуйста, разобраться!