Size: a a a

2020 June 08

AP

Alexander Popov in JS for testing
Marina
да, но это на уровне описания теста.
я говорю именно о пейдже - селекторы (локаторы?) жеж именно на ней должны описываться?
Нету никаких "должно", есть проблема (например разные тесты работают с одними элементами) и чтоб не писать локаторы и логику работы с элементами в разных местах, это выносят в одно место, и потом из разных тестов вызывают вот это одно место - это одно из решений
источник

AP

Alexander Popov in JS for testing
Разница между этим и тем что ты предложила только в том что твой вариант имеет некоторые минусы по сравнению с тем что я предложил, и может быть сложнее в использовании
источник

AP

Alexander Popov in JS for testing
Marina
и, конечно, вопрос отвлечённый, но - почему структура данных не может быть объектом?)
Может, просто я под объектом в контексте разговора подразумеваю штуку которая не только хранит данные, но и работает с ними
источник

M

Marina in JS for testing
Alexander Popov
Разница между этим и тем что ты предложила только в том что твой вариант имеет некоторые минусы по сравнению с тем что я предложил, и может быть сложнее в использовании
нет, тут вообще одно другому не противоречит.

есть тесты. В разных тестах юзаются элементы. За инфой об элементах тесты ходят на пейджи
Элементы описаны на пейджах. На пейджах же - действия с элементами (хз, насколько правильно).

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

тогда мы оформляем пейджу в виде "тип элемента: название элемента: селектор элемента", и все одинаковые элементы группируем.
тогда фактически у нас для всех "типичных" элементов (не только одного типа) - вызывается один метод
источник

M

Marina in JS for testing
уф. простите, это уже как-то бессмысленно(
источник

M

Marina in JS for testing
на самом деле объективные минусы уже услышала, спасибо.
источник

ДП

Діма Потапов... in JS for testing
Marina
нет, тут вообще одно другому не противоречит.

есть тесты. В разных тестах юзаются элементы. За инфой об элементах тесты ходят на пейджи
Элементы описаны на пейджах. На пейджах же - действия с элементами (хз, насколько правильно).

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

тогда мы оформляем пейджу в виде "тип элемента: название элемента: селектор элемента", и все одинаковые элементы группируем.
тогда фактически у нас для всех "типичных" элементов (не только одного типа) - вызывается один метод
пробовали использовать - страница -> фрагмент -> елемент, где елементы могут быть пошарены между страницами?
источник

M

Marina in JS for testing
Діма Потапов
пробовали использовать - страница -> фрагмент -> елемент, где елементы могут быть пошарены между страницами?
нет. Не будет ли только ещё больше путаницы с тем, откуда какой элемент берётся?
да и если речь о "поиске" элемента на странице - они ж все разные. Речь только об одинаковых действиях ("вставить текст", например). Ну или я чего-то недопоняла)
источник

ДП

Діма Потапов... in JS for testing
Marina
нет. Не будет ли только ещё больше путаницы с тем, откуда какой элемент берётся?
да и если речь о "поиске" элемента на странице - они ж все разные. Речь только об одинаковых действиях ("вставить текст", например). Ну или я чего-то недопоняла)
в мене не виникало, на проектах на ~50 сторінок, з 1к + тестів
источник

M

Marina in JS for testing
подумаю над этим, спасибо)
источник

ДП

Діма Потапов... in JS for testing
Marina
подумаю над этим, спасибо)
Пример кода могу дать, если нужно будет
источник

M

Marina in JS for testing
Діма Потапов
Пример кода могу дать, если нужно будет
На самом деле было бы неплохо
источник

AP

Alexander Popov in JS for testing
Marina
нет, тут вообще одно другому не противоречит.

есть тесты. В разных тестах юзаются элементы. За инфой об элементах тесты ходят на пейджи
Элементы описаны на пейджах. На пейджах же - действия с элементами (хз, насколько правильно).

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

тогда мы оформляем пейджу в виде "тип элемента: название элемента: селектор элемента", и все одинаковые элементы группируем.
тогда фактически у нас для всех "типичных" элементов (не только одного типа) - вызывается один метод
Технически - не мешает... Но тогда выходит что не все связанное со страницей хранится в пейдж обжекте, а в нем и ещё где то в локаторах...
источник

M

Marina in JS for testing
Alexander Popov
Технически - не мешает... Но тогда выходит что не все связанное со страницей хранится в пейдж обжекте, а в нем и ещё где то в локаторах...
я таки спрошу. А что именно имеется в виду под локаторами?
(простите, я из мобилки. Возможно, в этом причина большой части недопониманий)
источник

AP

Alexander Popov in JS for testing
Marina
я таки спрошу. А что именно имеется в виду под локаторами?
(простите, я из мобилки. Возможно, в этом причина большой части недопониманий)
Это тоже хороший вопрос, потому что локаторы могут быть сложными, вплоть до того что ты берёшь один элемент, и по его аттрибуту ищешь другой, и тогда структура данных с локаторами (в виде строк или by) пополнится ещё локаторами - функциями... И это будет ещё сложнее
источник

AP

Alexander Popov in JS for testing
Я понимаю локатор как штука с помощью которой ты берёшь элемент со страницы
источник

M

Marina in JS for testing
Alexander Popov
Это тоже хороший вопрос, потому что локаторы могут быть сложными, вплоть до того что ты берёшь один элемент, и по его аттрибуту ищешь другой, и тогда структура данных с локаторами (в виде строк или by) пополнится ещё локаторами - функциями... И это будет ещё сложнее
о господи. Нет, у меня все такие вещи не выглядят мега-сложными. Хотя есть история как раз для "кнопка и текст на ней" - но там вынесенный отдельно метод "найтиЭлементПоТекстуНаЧайлде", а все селекторы и кто тут чайлд а кто родитель - описано именно на том, что я называю пейджой (хотя уже есть сомнения, что это оно)
источник

AP

Alexander Popov in JS for testing
Будь то строка, функция, объект, или что то ещё
источник

M

Marina in JS for testing
Alexander Popov
Я понимаю локатор как штука с помощью которой ты берёшь элемент со страницы
ну.. оно ж тоже всё одиноковое. Только тут прям для всех элементов одинаковое, да ещё и вшито в драйвер (метод фреймворка)
источник

AP

Alexander Popov in JS for testing
Marina
о господи. Нет, у меня все такие вещи не выглядят мега-сложными. Хотя есть история как раз для "кнопка и текст на ней" - но там вынесенный отдельно метод "найтиЭлементПоТекстуНаЧайлде", а все селекторы и кто тут чайлд а кто родитель - описано именно на том, что я называю пейджой (хотя уже есть сомнения, что это оно)
Сложно? Ну, то что необходимость фильтровать элементы по критерию это сложно - спорно)
источник