Вы определили переменную checkQuestion как функцию, но никогда не вызываете эту функцию.
Попробуйте что-то вроде этого:
LoopThroughQuestions: function() {
this.waitForElementVisible('.next-button', constants.timeout.medium);
this.api.execute(function() {
var checkQuestion = function() {
var nextButton = document.querySelector('.next-button');
var answers = document.querySelectorAll('.flex-row.key');
answers[0].click();
nextButton.click();
setTimeout(function () {
if (document.querySelector('.next-button')) {
checkQuestion();
} else {
console.log("Exit");
}
}, 2000, "Running")
checkQuestion();
}
}, []) ;
return this;
},
Напомним, что вы также можете использовать самозапускающуюся анонимную функцию.
(function () {
// body of the function
}());