В настоящее время я пытаюсь реализовать функцию прокрутки для моих тестов SpecFlow, которые я использую в Selenium для тестирования веб-сайта.Мне нужно иметь возможность прокручивать страницу вниз, чтобы водитель мог видеть определенные элементы и проверять их.По сути, я закодировал функцию прокрутки (используя webdriver в качестве IJavaSriptExecutor), но когда я реализовал этот шаг в своих тестах, он попытался открыть отдельный веб-драйвер.Мне нужна эта функция прокрутки для запуска драйвера, который в настоящее время открыт для тестирования других функций.По сути, мне нужно, чтобы все было в унисон, если это имеет смысл.В любом случае вот мой код с ошибкой внизу.Понятия не имею, в чем проблема.
namespace (mynamespace)
{
[Binding]
public class SeleniumContext
{
public SeleniumContext()
{
//create the selenium context
WebDriver = new ChromeDriver();
}
public IWebDriver WebDriver { get; private set; }
}
public class BeforeAllTests
{
private readonly IWebDriver objectContainer;
private static SeleniumContext seleniumContext;
public BeforeAllTests(IWebDriver container)
{
this.objectContainer = objectContainer;
}
[BeforeTestRun]
public static void RunBeforeAllTests()
{
seleniumContext = new SeleniumContext();
}
[BeforeScenario]
public static void RunBeforeScenario()
{
objectContainer.RegisterInstanceAs<SeleniumContext>(seleniumContext);
}
[Then(@"I scroll down")]
public void ThenIScrollDown()
{
ScenarioContext.Current.Pending();
}
}
}
Код серьезности Описание Ошибка состояния подавления строки файла проекта CS0120 Ссылка на объект требуется для нестатического поля, метода или свойства BeforeAllTests.objectContainer '