Как снести селен вебдрайвер, когда @tests находятся в разных классах
У меня есть около 5 различных классов с тестами JUnit (тесты селена). Мне нужен способ сносить веб-драйвер в конце программы. Поэтому мне нужно знать, куда поместить @AfterClass и как передать ему драйвер, чтобы его можно было закрыть.
Я подумал о создании тестового костюма и реализации там &AfterClass tearDownClass(). Но я не уверен, как передать драйвер, чтобы он закрылся.
2 ответа
Вы можете использовать ниже код
[OneTimeTearDown]
public void SetupTestTeardown()
{
KillDriver();
Assert.AreEqual("", verificationErrors.ToString());
}
Атрибут OneTimeTearDown наследуется от любого базового класса. Поэтому, если базовый класс определил метод OneTimeTearDown, этот метод будет вызываться после любых методов тестирования в производном классе.
Вы можете определить метод OneTimeTearDown в базовом классе, а другой - в производном. NUnit будет вызывать методы базового класса OneTimeTearDown после методов в производных классах.
Добавьте @BeforeClass к своему суперклассу. Инициируйте водителя в этом. Благодаря этому тестовые классы также наследуют драйвер.
Добавьте драйвер в свой суперкласс в @AfterClass