QTP作为一款自动化测试工具,在很多时候我们需要打开或者关闭应用程序,如在进行测试前需要将应用程序打开,等到结束后需要把应用程序关闭,这是第一种情况。第二种情况就是在脚本的运行过程中我们需要打开另外的一个程序配合当前脚本完成操作步骤。第三种情况则是在脚本操作中由于脚本稳定性差等一些原因导致虽然在脚本中有对应用程序的关闭操作,但是实际上并未关闭,本次对应用程序操作采用的方式是关闭进程的方式,这种方式比较彻底,但是不适合功能上的校验。

工具/原料

  • <p>自动化测试工具环境</p>

方法/步骤

  1. 1

    如果电脑上未按照QTP自动化测试软件,请先对软件进行安装,也就是常说的搭建测试环境,测试环境搭建好以后继续下面的操作。

  2. 2

    安装完成后在桌面找到QTP自动化测试软件的图标,双击运行自动化测试工具,如下图:

  3. 3

    接着会弹出一个对话框,对话框中有3个选择项,分别为:active X、visual Basic、web三个选项,这里小编是全部选上的因为对本次做的事情没有影响,读者下来可以查阅资料。然后点击【OK】按钮。

  4. 4

    点击【OK】按钮后自动化测试QTP就会进入工具的控制台主界面,耐心等待吧。

  5. 5

    界面展开后,点击下图红色方框选中的【NEW】即新建一个测试脚本。

  6. 6

    在脚本中输入如下代码:

    systemutil.Run"C:\Documents and Settings\Administrator\桌面\SQLyog\SQLyogEnt.exe"  

    ’***使用工具打开特定位置的程序,如打开下图中的测试工具

  7. 7

    print  "SQLyogEnt.exe is Running:" & FindProcess("SQLyogEnt.exe")  

    '*****这个print 语句很重要必须保留!判断判断应用是否开启后的结果*******

    Function FindProcess(ByVal ProcessName)

       FindProcess= False 

      Set Shell = CreateObject("WScript.Shell")       

      Set ShellResult = Shell.Exec("TaskList")         

      While Not ShellResult.StdOut.AtEndOfStream         

        If Instr(UCASE(ShellResult.StdOut.ReadLine),UCASE("SQLyogEnt.exe")) Then

    '判断进程中是否包含“SQLyogEnt.exe”这个进程

          FindProcess = True

          systemutil.CloseProcessByName("SQLyogEnt.exe")

    '如果进程中包含这个进程就关闭

          Exit Function              

        End If         

      Wend  

    End Function

      

    '****打开应用程序

           wait 5

           Dim wshShell  

           Set wshShell =CreateObject("WScript.Shell")

           wshShell.SendKeys "{ENTER}"'

  8. 8

    下面是脚本运行后的测试脚本运行报告,报告中全部操作通过,脚本运行成功。

    END

注意事项

  • 保证文件位置的正确性

经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。