Selenium VBA测试用例作为一个函数

时间:2015-11-06 15:45:26

标签: vba selenium

我正在尝试使用Excel将我的测试用例划分为Selenium VBA中的函数。我的第一步是登录。我作为函数登录了例如

Public Sub test()

     'my main program is here

     'First step login

      Login()

End sub

Function Login()
     ' Open Firefox command
     ' my commands here
     ' 
End function

每当我调用Login()并且函数结束时,它会关闭浏览器(在本例中为Mozilla firefox)。

2 个答案:

答案 0 :(得分:1)

一旦驱动程序的变量超出范围,浏览器就会自动处理。有关详细信息,我邀请您查看官方文档:https://support.microsoft.com/en-gb/kb/141693

以下是驱动程序的本地实例的示例:

Private Assert As New Assert

Sub Main()
    Dim drv As New Selenium.FirefoxDriver
    drv.Get "http://stackoverflow.com"

    Call ClickLogo(drv)

    drv.Quit
End Sub

Sub ClickLogo(drv As WebDriver)
    drv.FindElementByCss("#hlogo").Click
End Sub

另一个带有驱动程序全局实例的示例:

Private Assert As New Assert
Private drv As New Selenium.FirefoxDriver

Sub ProcMain()
    drv.Get "http://stackoverflow.com"
    Call ClickLogo
    drv.Quit
End Sub

Sub ClickLogo()
    drv.FindElementByCss("#hlogo").Click
End Sub

要使用上述示例获取最新版本的日期: https://github.com/florentbr/SeleniumBasic/releases/latest

答案 1 :(得分:0)

在您的子程序开始之前调暗您的 selenium webdriver,这将允许 webdriver 实例在您的主子程序的“范围”之外运行,然后在程序结束时使用 driver.quit 杀死该实例