Повестка дня : я хотел запустить метод входа в систему перед всеми тестами и метод выхода из системы после всех тестов, чтобы в случае сбоя ловушки before выполнение теста не происходило.
I добавлен логин входа c в fixture.before, как показано в коде ниже. Но он дает следующую ошибку, может помочь мне исправить ее.
![enter image description here](https://i.stack.imgur.com/VbtG2.png)
Тестовый файл
import { Selector } from "testcafe";
import LoginPage from '../page-objects/login.po';
const loginPage = new LoginPage();
fixture`Getting Started`
.page`https://ci360-dev.dynatracelabs.com/`
.before(async t => {
await loginPage.login();
});
test("My First Test", async t => {
const str = await Selector('.home-container h1').textContent;
console.log(str);
});
Класс объектов Page
import { Selector, t } from 'testcafe';
import CommonFunctions from '../commons/common-fns'
export default class LoginPage{
constructor () {
this.emailTxtBox = Selector('input[type="email"]');
this.nextBttn = Selector('button[type="submit"]');
this.microsoftNextBttn = Selector('input[type="submit"]');
this.passwordTxtBox = Selector('input[type="password"]');
this.signinBttn = Selector('input[type="submit"]');
this.noBttn = Selector('#idBtn_Back');
}
async login() {
await t
.typeText(this.emailTxtBox, 'ci360-user@dynatrace.com')
.click(this.nextBttn)
.typeText(this.emailTxtBox, 'ci360-user@dynatrace.com')
.click(this.microsoftNextBttn)
.typeText(this.passwordTxtBox, 'Dynatrace2019')
.click(this.signinBttn)
.click(this.noBttn);
}
}