【发布时间】:2011-04-07 22:01:21
【问题描述】:
考虑这个脚本:
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
“编辑”检查点只是检查“编辑”WinEdit 是否包含“A”、CR、LF、“B”。 (这正是编辑器包含的内容,您可以通过查看GetROProperty ("Text") 来验证,它返回一个长度为 4 且 ASCII 为 65、13、10、66 的字符串,这正是我所期望的。)我可以轻松创建在录制脚本并通过活动屏幕 click-o-magic 插入检查点之后的这样一个检查点。
但现在假设我想参数化预期的字符串。
由于我无法在数据表单元格中输入换行符,因此我会将预期的字符串转换为正则表达式,例如上述示例中的 "A\cM\cJB"。无论我是否将该正则表达式放入数据表中,它都不匹配。为什么?
或者有没有其他方法可以对包含换行符的预期字符串进行参数化?
另见问题QTP: How do I get the "complex value" edit control in the checkpoint property edit dialog?。
【问题讨论】:
-
支持人员告诉我他们不知道为什么它不起作用。他们说正则表达式似乎在这种情况下不起作用。我不同意,因为它们可以工作,只是换行符不起作用,所以我再次等待更新。