在QTP中的某些控件,例如WinTreeView,其中的某些函数是接受例如指定操作节点ID作为参数的,在进行稳定性测试的时候,这些节点位置可能需要随机生成,因而就需要使用随机函数,然后将随机函数生成的值作为参数供节点操作函数使用。
但我们经常会遇到一个问题,那就是如果直接传入随机生成的数值,操作函数并不认为合法,会直接报错。
当出现这种问题时,需要对生成的数值进行强制类型转换。
对数值类型,我经常用到的是Int()和Cint()两个强制类型转换函数,那么这两者有什么区别呢?例子说明:
在ComboBox控件中有一个函数GetItemsCount(),其接受的参数就是Int()
而在WinTreeView控件中有一个函数Select (),其接受的参数就需要进行使用CInt()进行强制类型转换了。
但是在QTP的函数说明中并没有说明每个函数所要接受的数据类型,因而如果遇到类似问题的话,可以换一下转换函数试试。
另外,我试验时,如果测试对于select()函数使用int()进行转换,报错信息是前面的控件无法找到。
Cint()在对数值进行转换时,返回的是离输入值最近的数值,例如输入Cint(99.8)的话,返回的是100,而in()返回的是比输入法小的最大一个数值,如果输入的是int(99.8)的话,返回的是99