@qa_ru

Страница 356 из 1080
Maxim
22.02.2017
17:02:36
проверь свой XPath локатор на этой странице через поиск в Chrome DevTools, например. не нужны для этого никакие сервисы-тестеры

Vir
22.02.2017
17:02:57
<div class="flash-success">Section 9 data updated</div> Вот на таком я тестирую
просто интересно, а это html генерит кто?

Pavel
22.02.2017
17:03:16
бэкенд. Там обычная html страница

Но если ты увидел знакомый тебе класс то скорее всего ты думаешь о том же о чем и я ;)

Google
Alexei
22.02.2017
17:05:45
Pavel
22.02.2017
17:07:08
oh no. Но близко.

Vir
22.02.2017
17:08:24
я это к чему, в 5.4 же, там можно тесты писать уже норм, собственно мы и пишем.

Anton
22.02.2017
17:28:19
//div[contains(concat(' ', normalize-space(@class), ' '), ' flash-success ')]

на стаке оверфлоу нашел, хз работает ли)

http://stackoverflow.com/questions/1604471/how-can-i-find-an-element-by-css-class-with-xpath

Faust
22.02.2017
17:32:49
<div class="flash-success">Section 9 data updated</div> Вот на таком я тестирую
если это единственный подобный класс на странице, почему не заюзаешь так .flash-success ?

Pavel
22.02.2017
17:33:09
так тоже не находит

Походу все же что-то с формированием страницы

Faust
22.02.2017
17:34:25
у тебя через devTools не находит или где?

Pavel
22.02.2017
17:34:52
через codeception

Google
Faust
22.02.2017
17:36:01
isCSS('.flash-success')

?

Anton
22.02.2017
17:39:15
по тексту находит?

Pavel
22.02.2017
17:40:29
isCSS('.flash-success')
Если ты про метод класса Locator, то bool(true)

по тексту находит?
Вообще не находит подобные элементы, сейчас попробовал с //body[class=...] та же проблема

А просто //body находит

Anton
22.02.2017
17:42:41
может беда с кавычками, поэкранировать их надо или вообще без них

Pavel
22.02.2017
17:48:09
Короче я только могу предположить что из-за криво сформированной страницы часть тегов вычищаются из нее во время трансформации в DOM дерево. Иначе нельзя объяснить, почему с одними тегами селекторы работают, а с другими нет.

Anton
22.02.2017
17:55:22
ну так сдампить страницу можно, чтобы не предполагать?

Pavel
22.02.2017
17:57:12
А что я с ней делать буду? Поиск производится не по оригинальному html а по построенному DOM дереву уже ведь.

В самом html тег с классом то присутствует

Anton
22.02.2017
17:57:54
ну так это дерево в файл куда-то можно сохранить?

Pavel
22.02.2017
18:00:19
Нет. На дебаггере оно не отображается

Показывается как (value omitted), там во внутренних сишных структурах оно хранится

Anton
22.02.2017
18:06:49
код скинешь?

Pavel
22.02.2017
18:08:59
Код чего? Codeception опенсорсный

Вообще у меня есть идея как построить минимально воспроизводимый пример, через полчаса займусь этим

Maxim
22.02.2017
18:42:57
Какой-то ты ерундой занимаешься

Pavel
22.02.2017
18:44:39
Мне за это платят

Ivan
22.02.2017
19:21:15
для тех, кто не смог договориться с разработчиками об удобншых тэгах на важных элементах нужено обязательно пройти курс! а иначе все будут чураться ваших тестов с самописными xpath

Google
Shoo
22.02.2017
19:29:27
Договариваться с разработчиками - плохой путь, проблема одного человека превращается в проблему нескольких. Или ставишь тэги сам, или мучаешься с хпас.

Хотя особых мучений там на самом деле нет.

vyazovoy
22.02.2017
19:36:24
договариваться вообще хорошо.

Ivan
22.02.2017
19:48:36
То есть что?! Договориться о том, что ты сам проставишь теги на существующие вещи, а они будут проставлять на все новые - это плохой путь, а херачить непонятные последовательности в xpath - это норм? Есть понятие "тестируемость" и данный случай вполне себе подходит. Во первых, разработчики будут рады малой кровью, что после небольших изменений тесты не упали просто из-за привязки в xpath. Во вторых, время на написание тестов уменьшается в разы, так как ты не тратишь на составление пути. В третьих, если надо что-то будет изменить, то в старом xpath, а еже ли он ещё и чужой, таки вообще трудно разобраться. Особенно, когда любят одинаковые классы проставлять и прочие штуки.

Блин, зачем я все это пишу?

Pavel
22.02.2017
19:56:56
Ээ вы про какое проставление тегов на элементы? Может проставление атрибутов?

Но эту задачу как правило решает id - многие фреймворки ставят его на критичные вещи, вроде форм и элементов управления.

Slow
22.02.2017
20:00:26
А чё это разрабы не ставят тэге?

Они у вас особенные, что ли?

Anastasiya
22.02.2017
20:00:40
А чё это разрабы не ставят тэге?
Они слишком классные для этого

Slow
22.02.2017
20:01:23
У меня есть три слова для таких людей

Slow
22.02.2017
20:02:01
Они слишком классные для этого
Вообще, если там речь идёт об автотестировании, то имена обязаны быть

Ivan
22.02.2017
20:02:30
Разные ребята работают по разному, есть vaadin, который генерирует уникальные Id каждый раз, каждый чертов раз. Но да, я конечно же по атрибуты, а не тэги. Тэг использовал в терминах чата, как "пометка".

Slow
22.02.2017
20:02:59
потому как ВЫДУМЫВАТЬ алгоритмы вычисления нужно элемента это бред

не в этом суть автотеста

Pavel
22.02.2017
20:03:37
Ну да доп. тест-атрибуты это норм тема

Slow
22.02.2017
20:04:45
я уже писал тут, на проекте нынешнем и предыдущем, когда я сказал, что нужны id'шники к элементам, единственное, что возникло - вопрос, как называть

я предложил фигачит ВО ВСЕ атрибуты guid'ы

и ничего, разрабы так и сделали

Google
Slow
22.02.2017
20:05:51
и все довольны

Pavel
22.02.2017
20:05:52
guid это что?

Ivan
22.02.2017
20:06:14
Зато какое поле для творчества!

Slow
22.02.2017
20:06:32
{abcgf-asdhj-dhhs-ahgx}

типа такого

только без скобок и минусов

Pavel
22.02.2017
20:06:53
Ну по какому алгоритму он вычисляется то?

Рандомно? ?

Ivan
22.02.2017
20:07:01
Глобальный уникальный идентификатор

Slow
22.02.2017
20:07:23
Ну по какому алгоритму он вычисляется то?
всё просто, заранее задали в таблице БД

Admin
ERROR: S client not available

Ivan
22.02.2017
20:07:32
Один раз вычислил - прописал в верстке - забыл до следующего тысячелетия

Slow
22.02.2017
20:07:55
т.е. мне не нужно голову ломать

Pavel
22.02.2017
20:08:20
А фронтендеры не повесились потом к этим айдишникам привязываться?

Ivan
22.02.2017
20:08:29
У них свои

У нас свои

Slow
22.02.2017
20:08:53
у нас есть глобальный перечень гуидов

Pavel
22.02.2017
20:09:16
фронтендеры тоже у себя в коде используют селекторы активно

Google
Ivan
22.02.2017
20:09:20
Ну в js привязка к элементам идёт по атрибуту

Pavel
22.02.2017
20:09:22
А ну ок

Slow
22.02.2017
20:09:54
они взяли и сопоставили свой код с гуидами

столько лишнего кода выброшено было с их стороны

Ivan
22.02.2017
20:10:15
У нас просто data-ref для фронта data-test для теста. По фату если элемент меняется тэг переносится и все

Slow
22.02.2017
20:10:48
там как раз дохера алгоритмов было для вычисления

теперь просто, один тэг один гуид

и, да, там когда главному показали, то он сказал, что всё, эта тема ему нравится, потому что уникально и и чётко и точно

и ещё сыграло наруку можно сказать приказ автоматизация должна быть

всё

а я как главный по автоматизации, сказал, зачем мне писать алгоритм по вычислению тэгов?, давайте гуиды пихать, а я одной функцией к нужному буду общаться и всё

Alexei
22.02.2017
20:18:47
Алгоритм по вычислению тэгов, my ass...!

Ivan
22.02.2017
20:20:26
А если с первого раза не подобрал тэг?)

Pavel
22.02.2017
20:26:41
Хватит путать термины миня аж трисет

Slow
22.02.2017
20:26:42
Pavel
22.02.2017
20:27:00
Дата-атрибуты а не теги

Slow
22.02.2017
20:27:47
О, функцией говоришь... покажешь как конкретно вы из БД айди генерируете?
любым генератором гуиды на генерировали и в табличку прописали или шаблоны и уже при отображении страницы гуиды всегда и везде на одном и том же месте

Ivan
22.02.2017
20:27:54
guid всегда уникален
Да, я к предыдущему про алгоритм о вычислению значению атрибута:)

Если б он ещё и не однозначно определял значение - было бы совсем грустно

Slow
22.02.2017
20:29:06
сам механиз xpath не есть сущность для вычисления тэга?

а чтобы генерировать guid взяли сайт гуид онлайн и там нагенерировали вагон и маленькую тележку

Ivan
22.02.2017
20:30:25
Скорее нахождения в дом, не? Или под вычислением имелось ввиду "я тебя по идентификатору вычислю"

Страница 356 из 1080