
Vladimir
20.02.2017
22:42:51

vyazovoy
21.02.2017
04:42:01
это впн же. прокси это например плагин для хрома frigate.

FF
21.02.2017
05:49:14

Shoo
21.02.2017
06:02:24

Google

Diana [CatsTrack R10]
21.02.2017
07:39:16
Кто-нибудь работал плотно с Windows Performance Recorder?.. последнее время больше Assesment toolkit гоняла, а тут появилась необходимость провести ряд тестов под WPR, и я внезапно столкнулась с тем, что по каким-то причинам в ETW попадают только последние события перед save-ом (например, шла построчная запись в файл, 100 итераций по 1000 строк), и в WPA вижу адекватное время "жизни" процесса, но дисковая активность, прохождение через минифильтры и т.п. - только для последних "2.5" итераций. Я так понимаю, что применяется профиль для transient performance issues, но вообще все настройки соответствуют прекомендациям для "ustained performance issues".


Stanislav
21.02.2017
10:33:02
кстати, как вам следующая модель автоматизации тестирования веба - автоматизатор подготавливает платформу, автотесты пишет ручной тестировщик.
Автоматизатор подготавливает инфраструктуру (фреймворк, виртуалки, логирование). Причем во фреймворке нет инициализации объектов, зато есть таблица в базе и интерфейс для добавления объектов (jquery синтаксис, например)
Ручной тестировщик учит jquery и для написания автотеста сам добавляет нужный ему объект в базу.
тем самым момент актуализации при изменении путей в dom-дереве лежат не на автоматизаторе, а на ручном тестере


Shoo
21.02.2017
10:34:37
Во первых, при правильной организации поддержка локаторов не занимает так уж много времени, что бы её было необходимо на кого-то спихивать.
Во вторых, проще один раз объяснить людям, как выдирать условный xPath из девпанели гуглхрома и дать им обновлять список локаторов.
Никакого рокет-саенса, ради которого стоило бы пилить отдельные инструменты с сомнительными интерфейсами, там нет.


Stanislav
21.02.2017
10:39:24
То есть в данном случае xpath лучше чем jquery

Shoo
21.02.2017
10:43:54
Ну, лучше всего - тестовые айдишники, потому что перемещение элемента по дому их не ломает.
Но да, xpath лучше jquery, потому что не требует велосипедов.

Pavel
21.02.2017
11:02:56

Ivan
21.02.2017
11:49:28

Pavel
21.02.2017
11:50:14
У нас как раз сейчас в проекте непонятки, как работать с PageObject и что туда стоит засовывать

Ivan
21.02.2017
11:55:21
если я правильно пониммаю, то jquery как представитель css? а xpath ему противопоставляется на основании чего?
xpath требует постоянного перестроения при длинной нотации, если у тебя элемент в элементе не ищется. У меня была необходимость починить чужие тесты с xpath - так вот там надо было из 10 /div/div/div.../div поставить порядковый номер одному из дивов, что это за див и где его найти - никаких идей :) хоть что-то сместил - и абсолютно другой объект находтися.
в этом случае id либо data-test (или как угодно назвать можно) атрибут к элементу, что бы изменения DOM не сказывалось на остальных элементах, а при короткой длине особой разницы нет.

Nikita
21.02.2017
12:00:15

Anton
21.02.2017
12:01:55

Google

Shoo
21.02.2017
12:02:58
чем BDD не угодил?
Тем, что для большинства случаев это излишний уровень абстракции, который тоже надо поддерживать, развивать и дебажить, который при этом неистовый оверхед.

Ivan
21.02.2017
12:03:14
ну, я просто попытался предположить чем xpath крут, а jquery ацтой. костыли есть везде
так ведь в этом случае тесты становятся приятны и понятны всем заинтересованным лицам, которые умеют читать (я про BDD).
оверхед на инженеринг есть везде, поддержка - тоже

Shoo
21.02.2017
12:04:19

Ivan
21.02.2017
12:04:49
PO и заказчикам как тестовая документация
если она нужна

Shoo
21.02.2017
12:05:05
Если нужна тестовая документация - пишите тестовую документацию.
БДД тесты таковой всё равно не являются.

Nikita
21.02.2017
12:05:30

Shoo
21.02.2017
12:06:17

Nikita
21.02.2017
12:06:41

Shoo
21.02.2017
12:07:03
Нет, я пишу на пайтоне, сейчас пересаживаюсь на рубя.
На джаве тоже писал. Но к чему вопрос?

Nikita
21.02.2017
12:07:22
ну просто я такие аргументы слышу исключительно от тех, кто пишет/писал на джаве)

Shoo
21.02.2017
12:07:38

Nikita
21.02.2017
12:08:53
лишняя абстракция и блаблабла, ну да, дополнительный уровень, который читаемость повышает и помогает делать очевидную и удобную параметризацию местами

Shoo
21.02.2017
12:08:58
Если вы пишете нечитаемый код - БДД вас не спасёт.
Если вы пишете нормальный читаемый код - полезность от БДД есть только условным менеджерам, которым это ненадо читать.

Nikita
21.02.2017
12:10:03
у меня нет менеджеров, у меня есть фронты, которые хотят понять, что происходит в тесте и что где упало за минимальное время, а не пытаться разобрать трейсбек и код теста

Shoo
21.02.2017
12:10:49
Ещё раз, у вас фронтендер не может разобраться в коде тестов?
Вы там, простите, логику коллизий в тесте описываете, или что?

Google

Nikita
21.02.2017
12:11:08

Shoo
21.02.2017
12:11:24
Тогда вы пишите в тестах то, чего не надо писать в тестах. Thats all folks.

Nikita
21.02.2017
12:12:18

Shoo
21.02.2017
12:12:42
Ну, т.е. тесты сами по себе - предельно простая по логике вещь.
У вас есть прекондишен, вынесенный в отдельный кусок кода а-ля Setup, у вас есть Action и есть Assert.
Самая сложная часть всего этого - прекондишен.
Если фронтендер не может разобраться в логической цепочке из трех экшенов - всё сильно плохо с фронтендерами.
Если у вас сильно много логики внутри теста - значит вы делаете что-то не так, и их надо декомпозировать.

Nikita
21.02.2017
12:13:54

Shoo
21.02.2017
12:14:06
Причем тут селекторы, собственно?
Валидный тест это всегда precondition -> action -> assert.

Nikita
21.02.2017
12:15:10
а, ну я не так прочитал) по логике простая, да

Ivan
21.02.2017
12:15:13
эх, если бы все писали простые и понятные автотесты, зачем бы мы здесь вообще общались и конференции устраивали...

Nikita
21.02.2017
12:15:20
вопрос в том, что делать если у вас 5 прекондишенов

Nikita
21.02.2017
12:15:27
и в разных тестах они разные

Shoo
21.02.2017
12:15:30

Nikita
21.02.2017
12:15:48
тогда уже не так и просто :)

Ivan
21.02.2017
12:16:05
PageObject не нужен, обвязками наобмазывались

Shoo
21.02.2017
12:16:08
Если у вас 5 прекондишенов в разных тестов - это, по сути, пять разных тестов.

Ivan
21.02.2017
12:16:09
да вы писать не умеете
а я дартаньян

Shoo
21.02.2017
12:16:19

Google

Shoo
21.02.2017
12:16:30
БДД - обвязка, потому что вводит дополнительный уровень абстракции.
Грубо говоря, фреймворк.

Nikita
21.02.2017
12:16:47
тоже вводит фикстурки, удобные прекондишены

Ivan
21.02.2017
12:17:10
bdd грубо говоря тоже фреймворк

Nikita
21.02.2017
12:17:14
давайте без них будем жить в питоне, unittest с сетап-теардаун и поехали

Shoo
21.02.2017
12:17:25
Пайтест тоже обвязка. И как только логика тестов выходит за то, что предусмотрено пайтестом - начинается лютая боль.

Nikita
21.02.2017
12:17:28
и геттеры с сеттерами писать в питоне будем заодно

Admin
ERROR: S client not available

Ivan
21.02.2017
12:17:29
а я к тому, что я не очень различил нелюбовь к однму и любовь к другому

Nikita
21.02.2017
12:17:36

Shoo
21.02.2017
12:18:04
Затрудняюсь сказать, юзаю пайтест исключительно для генерации отчетов.
С Селениумом наглядный пример - подмена запросов\ответов.

Nikita
21.02.2017
12:18:43

Ivan
21.02.2017
12:18:51
так ведь есть объекты дома, а то что ты с ними работаешь через PageObject - это как раз паттерн по написанию обвязки. Так как то, чего нет в PageObject - не сможешь использовать в тестах. Тот самый уровень абстракции

Shoo
21.02.2017
12:18:54
Встал господин Баранцев в позу, что "Мы про юзер-лайк тестирование" и всё, что обёрнуто в запрос селениума ты не достанешь никак.
Бдд - это фреймворк.

Nikita
21.02.2017
12:20:30
поэтому он может в реально видимые элементы, например, а не просто в доме находить цссочки

Google

Shoo
21.02.2017
12:21:44
Потому что приходится сидеть и втыкать костыли.

Nikita
21.02.2017
12:22:06
а что вы используете в питоне и в рубях? на чем тесты бегают?

Ivan
21.02.2017
12:22:25
аля тыкать в невидимые объекты или что?
можно подробнее, мне стало интересно

Shoo
21.02.2017
12:22:34
Вот использование любой сторонней библиотеки - это такого рода риски.
С БДД, за счёт черезвычайно высокого уровня абстракции, этих рисков больше (ибо каждый уровень абстракции это +1 место где что-то может пойти не так).

Nikita
21.02.2017
12:22:55
просто как бы на западном рынке Ruby это синоним Cucumber+Watir, и топовые чуваки юзают Ruby потому что BDD там роднее некуда

Shoo
21.02.2017
12:23:25
У нас TDD тесты пишутся через RSpec и вот это всё.
Автотесты - на капибаре.

Nikita
21.02.2017
12:24:04
эээ

Ivan
21.02.2017
12:24:07

Shoo
21.02.2017
12:24:09
Под руби много классных продуктов, ватир и кукумбер лишь одни из.

Nikita
21.02.2017
12:24:11
TDD на уровне функциональных тестов?
куча всего классного, это правда

Shoo
21.02.2017
12:24:39
Нет, ТДД на уровне юнитов. Там Рспек.
На уровне функциональных - капибара и никакого бдд.

Nikita
21.02.2017
12:24:42
регулярки из коробки ван лав)
я верно понял?
точнее на юнитах бдд конечно не нужно
но почему тогда рспек