Рассмотрим этот сценарий:
SystemUtil.Run "notepad.exe"
With Window("Notepad")
.WinEditor("Edit").Type "A"
.WinEditor("Edit").Type micReturn
.WinEditor("Edit").Type "B"
.WinEditor("Edit").Check CheckPoint("Edit")
End With
Контрольная точка «Edit» просто проверяет, содержит ли «Edit» WinEdit «A», CR, LF, «B».(Это именно то, что содержит редактор, вы можете проверить, посмотрев на GetROProperty ("Text")
, он возвращает строку длины 4 с ASCII 65, 13, 10, 66, что именно то, что я ожидал.) Я могу легко создатьтакую контрольную точку после записи сценария и вставки контрольной точки с помощью активной экранной click-o-magic.
Но теперь предположим, что я хочу параметризовать ожидаемую строку.Поскольку я не могу ввести разрывы строк в ячейке таблицы данных, я бы преобразовал ожидаемую строку в регулярное выражение, например "A\cM\cJB"
для приведенного выше примера.Независимо от того, положил ли я это регулярное выражение в таблицу данных или нет, он не совпадает.Почему?
Или есть какой-либо другой способ параметризации ожидаемой строки, содержащей разрыв строки?
Также см. Вопрос QTP: Как получить «комплексное значение»изменить элемент управления в диалоговом окне редактирования свойства контрольной точки? .