Просто любопытно с технической точки зрения: что делает TestCafe на этапе компиляции, кроме введения функциональности test
и fixture
в модуль? Сколько нужно сделать ре-архитектуры для того, чтобы пользователь мог пройти тесты как реальный живой код, вместо того, чтобы иметь текстовый файл, который TestCafe будет собирать и компилировать. Например:
testcafe
.createRunner()
.fixtures([{
name: "log in",
beforeEach: setUp,
tests: [{
name: "happy path",
async body(t){
await t.navigateTo() // ...
}
}]
}])
Я спрашиваю об этом, потому что это то, с чем мы сталкивались на работе несколько раз, когда мы хотели бы иметь возможность делать что-то определенным образом (проводить тесты в соответствии с указать c logi c, изменить тесты во время выполнения и т. д. c), но это требование TestCafe делает его более запутанным, чем если бы вы могли просто передать тесты как javascript объекты.