Как выбрать подменю в селене с помощью наведения мыши - PullRequest
0 голосов
/ 13 сентября 2018

Я хочу нажать на подменю в навигации, но она не работает в Selenium.Откроется браузер, первое меню отображается как выбранное, но раскрывающееся меню не открывается, я получил сообщение об ошибке: элемент не отображается при нажатии подменю.Надеюсь, детали кода помогут вам разобраться в моей проблеме

using Microsoft.VisualStudio.TestTools.UnitTesting;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using OpenQA.Selenium.Interactions;

using OpenQA.Selenium.Support.UI;

[TestMethod]
    public  void OpenPatEarningCode()
    {
        try
        {
            WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(10));
            Actions action = new Actions(driver);

            var Menu = wait.Until(ExpectedConditions.ElementIsVisible(By.Name("Menu")));
            action.MoveToElement(Menu).Click().Build().Perform();


            IWebElement FirstmenuAdmin = Menu.FindElement(By.Name("First Menu"));

            action.MoveToElement(FirstmenuAdmin).Click().Build().Perform();


            IWebElement SubmenuElement = new WebDriverWait(driver, TimeSpan.FromSeconds(5)).
                Until(ExpectedConditions.ElementToBeClickable(By.Name("Sub Menu")));

            action.MoveToElement(SubmenuElement).Click().Build().Perform();
        }
        catch (Exception)
        {

            throw;
        }
    }

1 Ответ

0 голосов
/ 13 сентября 2018
 [TestMethod]
        public void OpenPatEarningCode()
        {
            try
            {
                WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(10));
                Actions action = new Actions(driver);

                var Menu = wait.Until(ExpectedConditions.ElementIsVisible(By.Name("Menu")));

                action.MoveToElement(Menu).Build().Perform();

                IWebElement FirstmenuAdmin = wait.Until(ExpectedConditions.ElementIsVisible(By.Name("First Menu")));

                action.MoveToElement(FirstmenuAdmin).Build().Perform();


                IWebElement SubmenuElement = wait.Until(ExpectedConditions.ElementToBeClickable(By.Name("Sub Menu")));

                SubmenuElement.Click();
            }
            catch (Exception)
            {

                throw;
            }
        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...