Что-то типа Finalize в скрипте
#1
Отправлено 15 сентября 2010 - 06:14
Ситуация следующая: есть в Clear Quest готовый test suite со скриптами из RFT. Каждый скрипт начинается с запуска приложения. Может это не совсем правильно, но очень удобно. И вот если в одном из скриптов, входящих в test suite происходит ошибка, то скрипту ставится вердикт fail и clear quest переходит к следующему. А тестируемое приложение остается открытым. И новый скрипт на StartApp запускает второй экземпляр, ломая тем самым распознавание контролов и, соответственно, весь тест.
Есть ли способ борьбы? Можно ли на исключение или fail в verification point выполнить какое-либо действие, например, закрыть приложение? Или в начале теста перед StartApp искать и убивать все экземпляры приложения? Есть такая возможность?
#2
Отправлено 15 сентября 2010 - 08:46
У меня делается как описано у вас - с помощью команды kill убивается экземпляр приложения.Добрый день! Есть ли в Rational Functional Tester возможность выполнять некие действия в скрипте даже в случае выхода по fail в verification point или любому другому исключению?
Ситуация следующая: есть в Clear Quest готовый test suite со скриптами из RFT. Каждый скрипт начинается с запуска приложения. Может это не совсем правильно, но очень удобно. И вот если в одном из скриптов, входящих в test suite происходит ошибка, то скрипту ставится вердикт fail и clear quest переходит к следующему. А тестируемое приложение остается открытым. И новый скрипт на StartApp запускает второй экземпляр, ломая тем самым распознавание контролов и, соответственно, весь тест.
Есть ли способ борьбы? Можно ли на исключение или fail в verification point выполнить какое-либо действие, например, закрыть приложение? Или в начале теста перед StartApp искать и убивать все экземпляры приложения? Есть такая возможность?
Обычно работает. Проблем нет - если ошибка, то робот(а у мя именно он) все фотографирует.
ну или пропишите если VP = fail - делать то то, иначе дальше.
#3
Отправлено 15 сентября 2010 - 11:12
У меня делается как описано у вас - с помощью команды kill убивается экземпляр приложения.
Обычно работает.
Спасибо за совет, попробую в начале каждого скрипта kill вызывать
#4
Отправлено 16 сентября 2010 - 09:12
А если скрипт pass , то все равно запускается след. скрипт и заново запускается приложение?Добрый день! Есть ли в Rational Functional Tester возможность выполнять некие действия в скрипте даже в случае выхода по fail в verification point или любому другому исключению?
Ситуация следующая: есть в Clear Quest готовый test suite со скриптами из RFT. Каждый скрипт начинается с запуска приложения. Может это не совсем правильно, но очень удобно. И вот если в одном из скриптов, входящих в test suite происходит ошибка, то скрипту ставится вердикт fail и clear quest переходит к следующему. А тестируемое приложение остается открытым. И новый скрипт на StartApp запускает второй экземпляр, ломая тем самым распознавание контролов и, соответственно, весь тест.
Есть ли способ борьбы? Можно ли на исключение или fail в verification point выполнить какое-либо действие, например, закрыть приложение? Или в начале теста перед StartApp искать и убивать все экземпляры приложения? Есть такая возможность?
Почему бы тогда не закрывать приложение в конце каждого скрипта?
#5
Отправлено 16 сентября 2010 - 13:17
Если скрипт pass, то там в конце честно выполняетсяА если скрипт pass , то все равно запускается след. скрипт и заново запускается приложение?
Почему бы тогда не закрывать приложение в конце каждого скрипта?
menuStrip1menuBar().click(atText("Файл")); menuStrip1menuBar(ANY,MAY_EXIT).click(atPath("Файл->Выход"));Проблема именно в fail. Скрипт заканчивает работу, а приложение остается висеть
#6
Отправлено 17 сентября 2010 - 05:08
Добрый день! Есть ли в Rational Functional Tester возможность выполнять некие действия в скрипте даже в случае выхода по fail в verification point или любому другому исключению?
Решение найдено, причем достаточно элегантное:
ProcessTestObject o = startApp("MyApp"); try { ... } finally { if (o.isAlive()) { o.kill(); } }
#7
Отправлено 17 сентября 2010 - 07:37
В настройках воспроизведения установите "Не прерывать работу при возникновении ошибки".Если скрипт pass, то там в конце честно выполняется
А если скрипт pass , то все равно запускается след. скрипт и заново запускается приложение?
Почему бы тогда не закрывать приложение в конце каждого скрипта?menuStrip1menuBar().click(atText("Файл")); menuStrip1menuBar(ANY,MAY_EXIT).click(atPath("Файл->Выход"));Проблема именно в fail. Скрипт заканчивает работу, а приложение остается висеть
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных