FindSBy от SeleniumExtras не может найти IWebElement - PullRequest
0 голосов
/ 14 сентября 2018

Я обновил пакеты из своего проекта на Mac и обнаружил, что PageObjects был перемещен в SeleniumExtras.Я изо всех сил пытаюсь использовать это, но ошибка "System.NullReferenceException: ссылка на объект не установлена ​​на экземпляр объекта." показано.Тем не менее, тот же элемент можно найти через FindElement.В настоящее время у меня заканчиваются идеи, и я буду признателен за помощь.Спасибо!

using Microsoft.VisualStudio.TestTools.UnitTesting;
using NUnit.Framework;
using NUnit.Compatibility;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using SeleniumExtras.PageObjects;


namespace SomeTest
{
    [TestFixture]
    public class UnitTest1
    {
        [FindsBy(How = How.XPath, Using = "//*[@id='lst-ib']")]
        public IWebElement _searchField;

        public IWebDriver chrome;

        [SetUp]
        public void TestMethod1()
        {
            chrome = new ChromeDriver(@"/Volumes/Macintosh HD/QA/SomeTest/SomeTest/bin/Debug/netcoreapp2.1");
        }
        [Test]
        public void SomeTest()
        {
            chrome.Navigate().GoToUrl("https://www.google.com/");
            _searchField.SendKeys("Some Text");
        }
        [TearDown]
        public void CloseBrowser()
        {
            chrome.Close();
        }
    }
}

1 Ответ

0 голосов
/ 17 октября 2018

Получил решение:

  1. Добавить все DotNetSeleniumExtras через пакеты NuGet: PageObjects и PageObjects.Core;
  2. Добавить пространства имен: using FindsByAttribute = SeleniumExtras.PageObjects.FindsByAttribute; используя How = SeleniumExtras.PageObjects.How;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...