您的位置:首页 > 编程语言 > Qt开发

QTP自动化测试框架:第四章 主要方法介绍(action部分,作为驱动)

2014-04-21 11:07 381 查看
后续将主要介绍一些此次框架中用的主要方法

  先来看一下aciton中的整体内容

  



 

 1. 引用外部DLL来读取INI文件,这里分为读和写两个

   

   '//refer external dll to read and write ini file

   '第一个是用来读取INI的,方法名为 GetPrivateProfileInt,具体的可查看帮助文件,在这个地方要注意参数个数以及当读的时候是需要返回值的,所以最后是 micString+micByRef,而写的时候则不需要

Extern.Declare micInteger,"GetPrivateProfileInt", "kernel32.dll","GetPrivateProfileInt", micString,micString,micInteger,micString+micByRef

写入INI文件
Extern.Declare micLong,"WritePrivateProfileString", "kernel32.dll","WritePrivateProfileString", micString,micString,micString,micString

 

    以下是具体调用地方

    初始化过程中读取INI文件中的参数

   

'调用方法
Sub InitializeTestParameter()
RestartRunIndicator=Cint(ReadIniFile("RunScenario","RestartRun",InitialFilePath))
If RestartRunIndicator=0 Then    '0 present current test run normally,if 1 represent current test has been restarted
InitialIterator=Cint(ReadIniFile("InitialParameter","InitialIterator",InitialFilePath))
InitialTestCaseNo=Cint(ReadIniFile("InitialParameter","InitialTestCaseNo",InitialFilePath))
Environment("DefinedTestIteration")=Cint(ReadIniFile("InitialParameter","Environment(""DefinedTestIteration"")",InitialFilePath))
Environment("DefinedActionIteration")=Cint(ReadIniFile("InitialParameter","Environment(""DefinedActionIteration"")",InitialFilePath))
else
InitialIterator=Cint(ReadIniFile("RecoveryParameter","InitialIterator",InitialFilePath))
InitialTestCaseNo=Cint(ReadIniFile("RecoveryParameter","InitialTestCaseNo",InitialFilePath))
Environment("DefinedTestIteration")=Cint(ReadIniFile("RecoveryParameter","Environment(""DefinedTestIteration"")",InitialFilePath))
Environment("DefinedActionIteration")=Cint(ReadIniFile("RecoveryParameter","Environment(""DefinedActionIteration"")",InitialFilePath))
End If
End Sub

 

   写的时候非常简单
  

Function WriteIniFile(SectionName,KeyName,KeyVlaue,InitialPath)
Extern.WritePrivateProfileString SectionName,KeyName,KeyVlaue,InitialPath
‘分别指定section ,Key也就是参数名和具体参数,以及文件路径即可
End Function

 

 

读的时候需要多一步

   

Function ReadIniFile(SectionName,KeyName,InitialFilePath)

ReadIniFile=Extern.GetPrivateProfileInt(SectionName,KeyName,1000,InitialFilePath)
'1000 just use to distinguish an exception when required key or section not found.
’这个地方需要注意当要读取的参数名不存在的时候,会返回一个值1000.用来区分读取失败。出现这种情况通常是配置存在问题,所以直接结束action,弹出提示,不再向下继续执行
If CLng(ReadIniFile)=1000 Then
Reporter.ReportEvent micFail,"ReadIniFile","KeyName : "+KeyName + "in Section "+SectionName+"in fILE: "+InitialFilePath+"Not Found"
End Function
Msgbox "Section or KeyName not found"
ExitAction()
End If

 
 



大小: 43.3 KB

查看图片附件
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: