51Testing软件测试论坛

标题: GetROProperty返回值的赋予和比较 [打印本页]

作者: wensy    时间: 2009-3-9 16:27
标题: GetROProperty返回值的赋予和比较
最近遇到一个奇怪的问题,在Excel里比对用户名,如果一致的话,就显示测试成功,不一致就显示测试失败。

按照如下的代码,没有任何的问题,取出的用户名和预期的用户名一致,并且测试成功。可是将mySheet.Cells(i,4).value 替换为 Browser("Mercury Tours").Page("Mercury Tours").Frame("info").WebElement("user").GetROProperty("outertext")就出现问题了。
问题比较有特点,就是用户名为全数字的会测试失败。但是查看Excel表,预期的值和实际的值却都是一样的。

用msgbox Browser("Mercury Tours").Page("Mercury Tours").Frame("info").WebElement("user").GetROProperty("outertext")
msgbox TypeName(Browser("Mercury Tours").Page("Mercury Tours").Frame("info").WebElement("user").GetROProperty("outertext"))输出的结果都没有问题,类型是string。
为什么会这样呢?

If Browser("Mercury Tours").Page("Mercury Tours").Frame("info").Exist Then
    mySheet.Cells(i,4).Value = Browser("Mercury Tours").Page("Mercury Tours").Frame("info").WebElement("user").GetROProperty("outertext")

             If      mySheet.Cells(i,3).value =  mySheet.Cells(i,4).value Then
                     mySheet.Cells(i,5).Font.Color = vbBlue
                     mySheet.Cells(i,5).Value = "测试成功"
              Else
                     mySheet.Cells(i,5).Font.Color = vbRed
                     mySheet.Cells(i,5).Value = "测试失败"
              End If

[ 本帖最后由 wensy 于 2009-3-9 16:47 编辑 ]
作者: blueeagle9999    时间: 2009-3-9 22:46
数字在写入EXCEL表格时有时会被做一些处理(比如以0开头的0会没掉),看看是不是这方面的原因
作者: jorhna    时间: 2009-3-9 22:48
我遇到过类似的问题,原因在于两者类型不一样。全数字的一个是数值型,一个是字符型,当然不一样。建议你将两边的值都做一次转换,例如Int(mySheet.Cells(i,3).value) = Int(mySheet.Cells(i,4).value)
作者: shiyi1022    时间: 2009-3-10 11:40
这种问题可以用QTP自带的debug功能,设置断点后可以直观获取数据。请注意获取的结果中是否有空格。
作者: lix43420    时间: 2009-3-12 10:17
标题: 回复 1# 的帖子
一般都是用trim()去干掉多余的空格的...可以试试
作者: wolaizhinidexin    时间: 2011-1-16 16:56
注意Excel表中的数字一定长度后会变的,你在数字前面加单引号就不会变了
另外,可以将两者强制转换为字符串型再比较




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2