Коллеги, приветствую!
Помогите советом новичку.
QTP 10.0 build 513
При создании чекпоинта, в строке кода содержится пробел:
Browser("wtf").Page("wtf_2").Check_CheckPoint("wtf") 'в месте, где стоит символ "_"
и при подстановке указанной строки сюда:
IF (Browser("wtf").Page("wtf_2").Check CheckPoint("wtf"))=true then 'e.t.c
при дебаге ругается на отсутствие скобки на месте пробела, внешние скобки не спасают.
Как решается данная проблема ?
Проблемы с пробелом в строке Checkpoint'a
Автор ryazhenka, 21 ноя 2011 06:00
Сообщений в теме: 3
#1
Отправлено 21 ноября 2011 - 06:00
#2
Отправлено 21 ноября 2011 - 08:51
Вызываете .Check как функцию (нужен результат выполнения). В таких случаях аргументы берутся в скобки (а не само выражение).
В Вашем случае аргументом является сам checkpoint:
IF Browser("wtf").Page("wtf_2").Check(CheckPoint("wtf"))=true then
В Вашем случае аргументом является сам checkpoint:
IF Browser("wtf").Page("wtf_2").Check(CheckPoint("wtf"))=true then
#3
Отправлено 21 ноября 2011 - 09:10
Alex все верно написал.IF (Browser("wtf").Page("wtf_2").Check CheckPoint("wtf"))=true then
Хочу только заметить на будущее, что код лучше вставлять в тегах [ code ], а не жирным шрифтом
Ну и проверка на true/false через явное сравнение внутри IF-условий является дурным тоном (так как в разных языках операторы сравнения разные: где-то одинарное "=", а где-то двойное: "==" и можно запросто вместо сравнения присвоить значение выражения) Поскольку чекпоинт все равно вернет true/false совершенно незачем его сравнивать с true/false еще раз
Итого, правильным вариантом будет
If Browser("wtf").Page("wtf_2").Check(CheckPoint("wtf")) Then
SQL для тестировщиков
Тренинги по HP QTP и автоматизации тестирования
Если минарет, значит выше всех (с)
#4
Отправлено 22 ноября 2011 - 12:41
Спасибо огромное! Всё отлично! Проблема решена.
Тему можно закрывать.
Тему можно закрывать.
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных