суббота, 17 мая 2014 г.

Выбор паттерна для WD тестов(мнение)

Выбор паттерна для WD тестов(мнение)

Собственно некоторое наблюдение по паттернам для WD тестов.
Изначально,для написания UI тестов, предлагается использовать либо Page Objects, либо Page Factory. (сделал их ссылками,вдруг кто не знает)
У каждого из подходов есть свои плюсы,но я в основном всегда использовал Page Object при работе с UI.
И могу объяснить почему:
Конечно я пробовал использовать Page Factory и вот те минусы что не дали мне с ним смириться:

  1. Нельзя проверить отсутствие нужного тебе элемента, не обернув это все в блок try/catch
    Вроде пункт не сложный,но меня напрягает.
  2. Нельзя искать элемент в элементе используя WebElement c Page Factory.
    Пропадает возможность вложенного поиска,который бывает очень удобен.
    Можно создавать коллекции элементов,подходящими под описание локатора,но это немного   другое.
  3. Большинство ExpectedConditions у WebDriverWait работают с объектом By,а не WebElement.
    Тоже решается созданием или перегрузкой имеющихся,но зачем,если есть готовые.
Ну в общем то и проксирование между объектом WebElement сразу к объекту на странице намного чаще даст шанс поймать Stale Element Exception.(Да, я знаю про lazy инициализацию,но ничего не могу поделать с тем,что мне так кажется)

Это было всего лишь мое мнение.Всем Спасибо.