我正在测试的网络应用程序有一个两级左侧面板菜单。我正在尝试选择一个子菜单项。我有代码工作:
CHIA_LIB_Selenium_Wait.UntilElementDisplayed(DriverObj, By.LinkText(m_MenuItems(0)))
LinkObj = DriverObj.FindElement(By.LinkText(m_MenuItems(0)))
DriverObj.Manage().Timeouts().ImplicitWait = New TimeSpan(0, 0, 60)
BuilderObj.MoveToElement(LinkObj).Build.Perform()
If m_MenuItems.Count = 2 Then
If m_MenuItems(1) IsNot Nothing Then
CHIA_LIB_Selenium_Wait.UntilElementDisplayed(DriverObj, By.LinkText(m_MenuItems(1)))
LinkObj = DriverObj.FindElement(By.LinkText(m_MenuItems(1)))
BuilderObj.MoveToElement(LinkObj, 5, 5).Click().Build.Perform()
End If
End If
现在这段代码正在查找并选择与我想要选择的子菜单项位于同一位置的另一个子菜单项。
用语言描述正在发生的事情太难了。我们来试试图吧。我假设我想选择Sub1C。我找到并移动Main1。浏览器显示Sub1A,Sub1B和Sub1C菜单项:
Main1 - Sub1A
Main2 Sub1B
Main3 Sub1C
代码找到并尝试单击Sub1C。
但实际发生的是代码将鼠标移动到Main3并选择并点击Sub3A菜单项。
Main1
Main2
Main3 - Sub3A
您会看到Sub3A与Sub1A菜单项位于同一位置。
我的环境: Windows 7 64位 InternetExplorerDriver 3.8.0 边缘