Skip to content
This repository has been archived by the owner on Sep 20, 2022. It is now read-only.

Отображать тесты определенного браузера #38

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

baymer
Copy link

@baymer baymer commented Mar 21, 2016

Скрывает тесты остальных браузеров
https://yadi.sk/i/MSyq-7E1qMWSu

@levonet levonet added the review label Mar 21, 2016
<option value="ie8">ie8</option>
<option value="chrome-latest">chrome-latest</option>
<option value="opera-v12.16">opera-v12.16</option>
<option value="firefox-latest">firefox-latest</option>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

вот этот список бы не хардкодить, а из конфига gemini брать

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍, браузеры могут называться как угодно

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Да, отлично было бы не хардкодить, всеми руками за. Можно вообще весь блок в шаблон вынести. Откуда список можно получить?

@j0tunn
Copy link
Contributor

j0tunn commented Mar 21, 2016

@sipayRT @SwinX глянтье плз. Меня смущает то, что все сваливается в кучу в верхнем ряду кнопок

this._showBrowser.addEventLestener('change', function(e) {
var value = e.target.value;
byId('stylesoHideBrowsers').innerText = !value ? '' :
'.section[data-browser-id]:not([data-browser-id="' + value + '"]){display:none}';
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ух какая логика на селекторах. Определённо в гуй нужно добавить больше реакта.

@sipayRT
Copy link
Member

sipayRT commented Mar 21, 2016

@baymer положи, плз, ссылку с гифкой на какой-нибудь внешний ресурс. Нельзя оставлять ссылки внутренней сети в репозиториях внешних проектов

@@ -66,6 +67,12 @@ Controller.prototype = {
byId('collapseAll').addEventListener('click', sections.collapseAll.bind(sections));
byId('expandErrors').addEventListener('click', sections.expandErrors.bind(sections));

this._showBrowser.addEventLestener('change', function(e) {
var value = e.target.value;
byId('stylesoHideBrowsers').innerText = !value ? '' :
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

stylesoHideBrowsers странный ID - видимо, должно было быть stylesofHideBrowsers.
и зачем инвертировать value?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Опечатка, должно было быть stylesToHideBrowsers ("T" пропущена)

@sipayRT
Copy link
Member

sipayRT commented Mar 21, 2016

расскажи про реальную необходимость такого селекта? если нужно показать только один браузер, то почему не запустить просто гуй только для нужного браузера? Ну и что я должен сделать, если захочу увидеть несколько браузеров? Как будет работать мультиселект?

@baymer
Copy link
Author

baymer commented Mar 21, 2016

@sipayRT,

расскажи про реальную необходимость такого селекта?

При написании теста понадобилось смотреть и сравнивать между собой только тесты chrome, потом только тесты opera. Кажется, удобная штука. Нет?

если нужно показать только один браузер, то почему не запустить просто гуй только для нужного браузера?

Имеешь ввиду .skip(/ie|fire|oper/), чтобы увидеть только chrome?
Если да, то остальные только тесты проходить не будут, но останутся видны битые картинки.
Если имеешь ввиду передаваемый параметр при запуске (есть такой?), то в случае селекта есть возможность смотреть, то один браузер, то другой, причем довольно дешево для браузера и без пересборок.

Ну и что я должен сделать, если захочу увидеть несколько браузеров? Как будет работать мультиселект?

Мультиселект вроде и не нужен. Тут скорее кейс про "выделить конкретный браузер и сравнить акшены с плейном", например. Если нужно больше, можно выключить селект (выбрать первый дефолтный пункт).

@baymer
Copy link
Author

baymer commented Mar 21, 2016

положи, плз, ссылку с гифкой на какой-нибудь внешний ресурс

Так на внешнем же: Я.Диск.

@sipayRT
Copy link
Member

sipayRT commented Mar 22, 2016

Так на внешнем же: Я.Диск.

посмотри свое описание к коммиту

Имеешь ввиду .skip(/ie|fire|oper/), чтобы увидеть только chrome?
Если да, то остальные только тесты проходить не будут, но останутся видны битые картинки.
Если имеешь ввиду передаваемый параметр при запуске (есть такой?), то в случае селекта есть возможность смотреть, то один браузер, то другой, причем довольно дешево для браузера и без пересборок.

я имею ввиду опцию -b — запустить тест в конкретном браузере (при этом ты можешь заюзать эту опцию несколько раз, чтобы запустить тесты в нескольких браузерах). в результате у тебя в отчете будут только эти браузеры

@baymer
Copy link
Author

baymer commented Mar 22, 2016

посмотри свое описание к коммиту

спасибо, поправил

имею ввиду опцию -b

Странно, в документации не нашел такой опции. Попробовал запустить gemini-gui -b chrome gemini/arrow.gemini.js и gemini-gui -b gemini/arrow.gemini.js. В обоих случаях открылись скриншоты для всех браузеров.
Если же ты имеешь ввиду npm run gemini -- -b ie8 test gemini/arrow.gemini.js, то это прогонит тесты в нужном браузере, да. Прогонит в консоли. Скриншотов я не увижу.
Если запустить npm run gemini -- -b ie8 update gemini/arrow.gemini.js; gemini-gui gemini/arrow.gemini.js и перед этим не удалять все скриншоты блока, то запуск gemini-gui покажет все скриншоты, не только по выбранному браузеру.
Если же перед запуском удалить скриншоты блока, то в результате будет такая картинка:
https://yadi.sk/i/r49npjcZqNzJv

Требуется именно в сверить скриншоты по определенному браузеру на этапе их создания или обновления. При этом можно выбрать то один браузер, то другой, без пересборки.

Если это никому не нужно, то ок. Мне понадобилось, я написал. Может еще кому пригодится:sunglasses:

@a-x-
Copy link
Contributor

a-x- commented May 14, 2016

Очень нужное изменение, по крайней мере, ещё и мне!

@a-x-
Copy link
Contributor

a-x- commented May 14, 2016

Кстати, в результатах прогонов в CI вообще нельзя отфильтровать по бро, а временами хочется.

@sipayRT
Copy link
Member

sipayRT commented May 16, 2016

Кстати, в результатах прогонов в CI вообще нельзя отфильтровать по бро, а временами хочется.

расскажи почему этого хочется? может мы просто найдем единое верное решение

@a-x-
Copy link
Contributor

a-x- commented May 16, 2016

@sipayRT
Например, когда все браузеры ведут себя заведомо одинаково для какой-то функциональности и нужно быстро просмотреть диффы, не тратя времени на браузерные дубликаты.

В качестве универсального решения вот как можно было бы сделать с "рокетной наукой": если между браузерами скриншоты для конкретного стейта одинаковы, то кластеризовать с текстовой пометкой.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants