51Testing软件测试论坛

标题: 使用QTP读取的Excel中的数值的格式与windows计算器计算出来的数值的格式是不是不同 [打印本页]

作者: 玩命格式化    时间: 2015-6-18 16:21
标题: 使用QTP读取的Excel中的数值的格式与windows计算器计算出来的数值的格式是不是不同
本帖最后由 玩命格式化 于 2015-6-18 16:24 编辑

刚开始接触QTP,使用QTP调试读取、写入Excel函数时,发现将读取的Excel中的数值与windows计算器计算出来的数值进行比较时,结果显示两者是不同的,部分代码如下。请指教该如何设置,是不是该设置EXCEL中单元格的格式。
  1. SystemUtil.Run "calc.exe"
  2. Dim firstnum,secondnum,op,eque,path,sheet,row,col,text
  3. path="c:\test.xls"
  4. sheet="sheet1"

  5. For row=2  to GetRow (path,sheet)
  6. ''读取firstnumber并操作
  7. firstnum=ReadFromExcel (path,sheet,row,1)
  8. Set obutton=Description.Create
  9. For i=1 to len(firstnum)
  10.           temp=mid(firstnum,i,1)
  11.           If temp="." Then
  12.                   temp="\" &temp
  13.           End If
  14.       obutton("text").value=temp
  15.        Window("计算器").WinButton(obutton).Click
  16. Next

  17. ''执行操作符op
  18. op=ReadFromExcel (path,sheet,row,2)
  19. Set obutton=Description.Create
  20. obutton("text").value="\"&op
  21. Window("计算器").WinButton(obutton).Click

  22. ''读取secondnum并操作
  23. secondnum=ReadFromExcel (path,sheet,row,3)
  24. Set obutton=Description.Create
  25. For i=1 to len(secondnum)
  26.           temp=mid(secondnum,i,1)
  27.           If temp="." Then
  28.                   temp="\" &temp
  29.           End If
  30.       obutton("text").value=temp
  31.        Window("计算器").WinButton(obutton).Click
  32. Next

  33. ''进行计算
  34. Window("计算器").WinButton("=").Click

  35. '' 将计算结果写入actual
  36. Set actual=Window("计算器").WinEdit("Edit")
  37. x=actual.GetROProperty ("text")
  38. x=Rtrim (x)
  39. icount=len (x)-1
  40. If right (x ,1)="."  Then
  41.         x=left (x ,icount)
  42. End If

  43. WriteToExcel  path,sheet,row,4,x
  44. print x


  45. ''向result写入测试结果p或f
  46. expected=ReadFromExcel (path,sheet,row,5)
  47. print expected
  48. If expected=x Then
  49.             WriteToExcel  path,sheet,row,6,"p"
  50. else
  51.             WriteToExcel  path,sheet,row,6,"f"
  52. End If

  53. Next


  54. Window("计算器").Close
复制代码
执行结果,在Excel中写入的计算结果是正确的,判断则表明两者不一致,写入了f。
[attach]95837[/attach]






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