Я запускаю все свои скрипты через .suite-файл примерно в следующем виде:
_include("variables.sah");
_include("functions.sah");
$a = 0;
while($a<3) {
try {
_navigateTo($loginpage);
login($user, $password);
myFunction();
$a = 3
}
catch (e){
_navigateTo($loginpage);
login($user, $password);
//undo changes made by myFunction()
...
$a++;
if($a<3) {
_log("Try again");
}
else {
_log("Skip to next script");
}
}
}
function myFunction() {
//do this
...
}
Теперь все это работает отлично, за исключением одного: он не повторяется, когда обнаруживает отсутствующий элемент, который при нормальных обстоятельствах прервал бы все сценарии. Он просто игнорирует ошибку и переходит к следующей строке пакета. Как мне заставить мой скрипт повторить попытку до двух раз, прежде чем двигаться дальше, если я не знаю, какая часть (если есть) выйдет из строя и когда?