Это намного чище и, как указано в комментариях, является распространенным явлением на других языках. Другая вещь, которую я нашел приятной, - это разрывы строк, очень полезные при написании строк.
let person = {name: 'John Smith', age: 24, greeting: 'Cool!' };
let usualHtmlStr = "<p>My name is " + person.name + ",</p>\n" +
"<p>I am " + person.age + " old</p>\n" +
"<strong>\"" + person.greeting +"\" is what I usually say</strong>";
let newHtmlStr =
`<p>My name is ${person.name},</p>
<p>I am ${person.age} old</p>
<p>"${person.greeting}" is what I usually say</strong>`;
console.log(usualHtmlStr);
console.log(newHtmlStr);
Кажется, вы пропустили ключевое слово await
до вызова doLogin()
:
fixture`App > ${menuName}`
.page`${HOST}`
.beforeEach(async (t) => {
// Don't forget about await
await doLogin(t)
});
Из-за деталей реализации в некоторых случаях можно вызвать функцию async
без await
, но лучше не полагаться на это и всегда использовать await
с async
функциями.
Если вы добавите ключевое слово async
и оно не исправит тест, не стесняйтесь создать отчет об ошибке в репозитории TestCafe и предоставить полный пример, который можно запустить для воспроизведения проблемы. ,