我正在考虑做一些我不确定是否可行的事情——也许不是最佳实践,即使如此,但我还是想尝试一下。
我有一个函数库,我有一个操作,我在其中编写主脚本,显然是从库中调用函数。
最初在我的操作中,代码看起来是这样的:
代码
Browser("Browser").Page("Page").WebElement("Element").Click
不过,我把它改成了:
代码
Set WebLink = Browser("Browser").Page("Page")
WebLink.WebElement("Element").Click
我这样做是因为我觉得它的外观更干净,每行代码更少。
我知道我可以编写一个函数来实现这一点:
Public Function myLink(WebLink)
Set WebLink = Browser("Browser").Page("Page")
End Function
然后在我的行动中,我只在顶部打一次电话:
代码
Call myLink(WebLink)
WebLink.WebElement("Name").HighLight
但是,我想在某些情况下,我会有不同的页面名称,例如:
代码
Browser("Browser").Page("Page1")
Browser("Browser").Page("Page2")
Browser("Browser").Page("Page3")
因此,创建一个函数来存储变量,然后我就可以调用变量,这可能是一种选择。
我的函数可以如下所示:
代码
Public Function myLinks(WebLink)
Dim Pages(): Pages = ("Login","CreateUser","SelectOption","DeleteUser",)
Browser("Browser").Page(Pages())
For Each Elem In Pages
Set WebLink = Browser("Browser").Page(Pages())
End For
End Function
然后在我的行动中,我这样使用它:
代码
Call myLinks(WebLink)
Login.WebElement("Element").Click
CreateUser.WebElement("Element").Click
SelectOption.WebElement("Element").Click
DeleteUser.WebElement("Element").Click
我知道我所拥有的可能不合逻辑,但如果这样的东西可能奏效,我想尝试一下。