2016-11-28 1 views
0

CRM 2016 SP1 내에서 자동화 된 UI 테스트를 위해 Selenium C#을 사용하려고합니다. MSD의 셀레늄 CRM - NavBarOverlay가 클릭을 차단합니다.

ContentIFrame의 요소를 클릭하려고, 나는 종종 제외

Element is not clickable at point (743, 496). Other element would receive the click: <div class="navBarOverlay" id="navBarOverlay" style="display: block;"></div> 

이 여전히 중첩 될 것 navBarOverlay로 인해 얻을.

내가 해봤 많은 옵션 :

  1. By navBarOverlay = By.Id("navBarOverlay"); wait.Until(ExpectedConditions.InvisibilityOfElementLocated(navBarOverlay));
  2. wait.Until(ExpectedConditions.ElementToBeClickable(elementToClick);
  3. Thread.Sleep(3000);, 아직 성공을 elementToClick

을 발견하지 전에 elementToClick

  • driver.Manage().Timeouts().ImplicitlyWait(new TimeSpan(0,0,10));을 찾기 전에 .. 어떻게 할 수 있습니까? 그의 제발?

  • 답변

    1

    이 문제를 해결할 수있었습니다. js 주사로이 div를 숨 깁니다.

    var navbar = WebDriverManager.Driver.FindElement(By.Id("navBarOverlay")); 
    WebDriverManager.Driver.ExecuteJavaScript("arguments[0].setAttribute('style', 'display: none')", navbar);