Автор: Энди Найт (Andy Knight) Оригинал статьи Перевод: Ольга Алифанова
Люди довольно серьезно настроены в отношении BDD. Я часто слышу, скажем, такие мнения:
"Зачем мне использовать BDD-фреймворк вместо традиционного – например, JUnit, NUnit, pytest? Дополнительный уровень шагов Gherkin мешает коду автоматизации, и вместо него я могу напрямую писать код для этих шагов. BDD-фреймворки требуют кучу лишней работы, а толку от этого никакого. Моя команда все равно не пользуется практиками разработки через реализацию поведения".
Я могу понять эти мнения, особенно в исполнении тех, кто участвовал в проекте с плохими BDD-практиками. Даже если команда не использует их во всей полноте, я все равно уверен, что BDD-фреймворки тест-автоматизации лучше, нежели традиционные, для большей части тестирования характеристик (на уровне выше юнит-тестов, для черного ящика). И вот почему.
Доброго времени суток! Подскажите, пожалуйста. При возникновении в тесте исключения UnhandledAlertException почему-то не может успешно отработать метод создания скриншота. Сам тест навечно повисает (в среде разработки выводится статус Stopped). При ловле других ошибок скриншот создается, тест не повисает, а штатно падает. Каким путем можно решить эту проблему?
Не удается "добраться" до элемента по индексу , полученного методом FindElements. Лист вроде-бы наполняется , по крайней мере распечатывается в цикле, но при попытке обратиться к элементу по индексу, выдает сообщение о несоответствии индекса размеру массива. Размер массива почему-то равен 1 , хотя распечатывается 6 элементов. В чем может быть причина такого несоответствия?
Dim DR As IWebDriver
DR = New ChromeDriver()
DR.Navigate.GoToUrl("https://www.fonbet.ru")
DR.Manage.Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(25))
Dim Elm_0, Elm_1, Elm_2, Elm_3 As IWebElement
Dim Lst As List(Of IWebElement)
Lst = DR.FindElements(By.CssSelector("menu.menu")).ToList
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Dim prnt As Graphics = Me.CreateGraphics
Dim FN As New Font("ARIAL", 10, FontStyle.Regular)
Dim i As Integer
i = 0
For Each p As IWebElement In Lst
prnt.DrawString(p.Text, FN, Brushes.Black, 10, 50 + 20 * i)
i = i + 1
Next
prnt.DrawString(Lst.Count, FN, Brushes.Black, 10, 30)
''''''''''''''''''''''''''''''''''''''''''
Elm_3 = Lst(4)
Elm_3.Click()