Похожие видео
Описание
Чингиз рассказал об инструментах, которые упрощают жизнь мобильному тестировщику, и об автоматизации процессов мобильного тестирования. 20 июня в офисе Kolesa Group прошел QA Meetup 2, посвященный вопросам тестирования и обеспечения качества проектов.
Текстовая версия
Так ребята всем привет все подустали наверное пицца только сейчас достигла. Вашего желудка поэтому давайте сосредоточимся мой доклад я попросил сделать интересным меня зовут? Чингиз я являюсь мобильным тестировщиком в компании колес и групп сегодня вам расскажу как упростить жизнь мобильному тестировщику а именно мы поговорим?
Как взаимодействовать с разработчиками в разных типах команд как правильно проверять задачи и какие фишки автоматизации мы используем у себя в компании.
Чтобы сэкономить драгоценное время задаюсь вопросом приходит новая фича как и проверить как нужно правильно разговаривать с разработчиком! Вообще нужен ли какой-то поход к разработчику нету какого-то одного такого правильного ответа поэтому давайте рассмотрим несколько?
Видов взаимодействия разработчика и тестировщика первый вид это когда один разработчик и один тестировщик. Но это такое лакшери вариант когда у разработчика есть свой собственный тестировщик. Или как бы мы это херов щеки сказали у нас не свой личный разработчиков что стоит ожидать это так как процесс происходит?
В принципе просто разработчик там берет телефон собирает нам все свои изменения ветки и отдает тестировщику. На тест это хорошее взаимодействие то есть! И разработчик и тестировщика не как мама с папой?
Лелеет свое дитя и получается за хорошее. Взаимодействие повышается качество работы дальше все упирается во время даже это происходит оперативная работа: Так как и тестировщики разработчик заинтересованы в решении задач это это все происходит.
Быстрее также конечно в каких то моментах проще договориться и обсудить какие детали будут эффективней ну и всегда можно попросить быстро! Пересобрать сборку давайте рассмотрим теперь команду когда.
Много разработчиков и это этот случай разделил на две команды это распределенная команда то есть если кто то здесь слышал.
Сейчас есть такая мода заказывать приложение там на аутсорсинге то есть:
Команда разработки она находится может быть ни в одной стране ни в одном городе или у вас просто нету прямого доступа команде.
Что какие минусы возникают в этом случае нет возможности. Подойти и попросить собрать изменения на телефон также все вопросы решаются через машин. Мессенджеры то есть это получается все простое во времени и возникает вопрос как проверять изменения давайте.
Начнем с android разработке здесь есть два варианта тебе присылают по почте либо каком-то иному другому ресурсу build вы его берете скачивать.
Установки на телефон принципе все просто второй вариант это дает ссылку в play маркете на внутреннее тестирование. То есть в каймар где самом есть функция когда ты загружаешь апк файл туда и даешь и ринг на команду этапу как называется внутренней.
Датированный через play market через ios к сожалению? Боюсь тебе просто так не могут прислать файл файл называется этого к кпк в андроиде то эффект и 5 файл в аисе.
Нужны сертификаты поэтому сердце единственная но единственная возможность это тестировать! Через ставь лайк возникает вопрос удобно ли это из-за того.
Qaengineer
Что много людей все на расстоянии возникают простое по времени ты ждешь проверки в историю также ты привязан клеве недоступности.
Сборке также принципе неудобно тестировать через play market потому что вот в одно время где доступен только.
Один бил какие же решения наверное смириться но попал я вам расскажу какой выход есть из этой ситуации. Поехали дальше следующий тип команды это локальная команда я думаю как большинство наверное из вас работают это когда есть прямой. Доступ к к разработке что стоит ожидать данном случае.
Это так как мы работаю в колеса групп по идее много разработчиков много тестировщиков один разработчик делает 10 задач эти все 10 задач.
Проверяют 10 разных тестировщиков это возникает возникают такие моменты как собери мне здесь build собери там сделал изменения здесь сделал изменения там разработчики.
Переключая светка на ветку они начинаю психовать у нас конечно классно разработчики очень такие сдержанные?
Но все равно даже они начинают нервничать и все это занимает конечно время как проверять изменения в данном случае и вообще. Удобно ли зависеть все время про разработчика.
Постоянно просить его посмотреть логи собрать ветку тоже полностью как бы быть на попечение разработчика какое решение это настало время наверное самому. Открытие полез код и посмотреть что там происходит с чего начать надо впервые первое то что нужно. Изучить среду то есть какой функционал есть также посмотрите как собирается билды то есть вы должны знать каждую стадию сборки какие окружении доступны будь то тестовое окружения.
Либо продав ская и где меняется веточки начнем с android studio кто-нибудь знаком с android studio просто ручки вверх отлично но те кто незнаком? Я смотрю такие глаза ну в принципе ничего тяжелого вы наверное думаете что придется.
Много много читать много времени потратить чтоб разобраться. Но давайте я пробегусь по основному функционалу в android studio который должен!
Знать мобильных тестировщик поехали так первое to build верен что мы можем сделать здесь мы можем поменять тип окружении то.
Есть то ли мы будем тестировать на тестовом то ли мы будем тестировать напротив идем дальше это ветки в те то есть благодаря поисковику вы можете начинать! Печатать номер ветки выходит поисковике ветка вы ее стягивайте что это вам дает все все изменения? Которые сделал разработчик теперь локально у вас есть на компьютере ну и конечно для чего мы это все делаем для того что тестировать.
На устройствах всегда можете подключить устройство и протестировать на нем возникает к примеру вы разрабатываете приложение. Смотрите его приложение падает а там на каком-то нексусе на пятой версии но у вас нету этого:
Телефона для этого существуют эмуляторы если у вас слабая библиотека устройстве бы она вообще отсутствует вы всегда можете. Протестировать на эмуляторах то есть это но но всегда помните самое главное то что то что работает.
На устройствах может не работать на эмуляторах и наоборот почту. Работает на эмуляторах может не работать на устройствах ну и конечно логе для чего нужны логин для того чтобы правильно заводили задачи.
Qameetup
Вот моя коллега елена до этого рассказывала как мы заводим задачи что правильно. Указать тип ага из-за чего она упала то есть может быть вы какой то запрос от отослали. Но никто не ожидал что придет ну да поэтому здесь у вас вот вот здесь все белое все классно но если вдруг вы что-то?
Не так на каком-то шаге уго у вас это покраситься. Все красный так если вы это попробуйте применить то изначально что-то пойдет!
Не так явно паниковать не надо можно просто всегда попросить разработчика.
Помочь либо со временем вы просто сами начнете разбираться ребята чему это говорю. Ошибки бывают у всех но чем чем чаще вы пытаетесь.
Сделать что-то новое тем вы как бы больше развиваетесь сами идём дальше что изменилось. В общем теперь я никак не завишу. От разработчиков я сам могу взять телефон сам собрать нужную веточку перепрыгнуть на другую.
Веточку протестировать и посмотреть логи из-за чего падает но возникает такой момент. Я все равно должен идти брать телефон должен подключать его как всегда знаете бывает.
Что что-то не работает ты ждешь начинаешь тихого так что ты вроде заработало ты переключаешься. С ветки на ветку ждешь время сборки. Время сборки тоже занимает какое то время как мы можем улучшить.
Этот процесс я точно знаю что молодой: Человек за что такое до 7 до кто знает что такое континент игре просто руки поднимите отлично да ну и может тут еще до сих пор не понял continent игре!
Sin это практика разработки программного обеспечения я так своими словами попробую накидать кто не до сих пор не понял это слияние нескольких. Файлов в основную рабочую обед несколько раз в день также это запуск автоматизированного сбора.
Хорошо другой вопрос раз уже говорили прощай кто-нибудь пользуется какими-то инструментами сами у себя в работе а какими. Отлично это вроде ты достать с элизой марсе а вот ну отлично но класса на экране популярные.
Все инструменты если вдруг кто-то все по самому большинство из них alpen source! Так что можно принципе посмотреть в интернете в компании колеса групп мы пользуемся бамбук бамбук это инструмент непрерывной интеграции который объединяет автоматизированные.
Сборки тесты и релизы единый жизненный цикл какие плюсы bamboo ну конечно это запуска процесса также эта настройка.
Триггера для запуска автоматический сборок по после каких-то коммитов также это создание многоступенчатых планов сборок!
Как в общем выглядит процесс разработки начинается сама? Разработка разработчик пишет код и всю свою поэзию он пушит средство изменения он кушает и тренируется автоматическая сборка после эту сборку мы все устанавливаем на мобильные. Девайсы давайте я пробегусь по основному функционалу bamboo.
Какие плюсы есть бомбу во первых мы всегда знаем что в разработке так как у нас много. Проектов и много задач мы всегда знаем что находится данный момент в разработке также мы можем легко!
Kolesagroup
Перейти на нужную веточку и нужный build ну и конечно мы знаем о состоянии.
Ветки зеленая это хорошо красная это плохо также мы знаем то что что происходит светочка данный момент.
То есть она либо собирается либо нас топе либо уже собралась либо зафейлилась то есть если веточка вдруг по каким-то! Причинам запылилась мы всегда можем пойти блоги и посмотреть что там происходит это конечно. Прогон юниты ей тестов то есть если вдруг какой-то из тестов упал то с горкой соответственно не собирается если.
Вдруг сборка падает то bamboo формирует report куда ты можешь зайти посмотреть почему сборка упал а также есть функция нас настройки. Жизни веточки то есть в нашей компании веточка оживет 14 дней после этого оно протыкает.
Доступа к веточке нету но благодаря функции вот create план branch ты всегда. Можешь воссоздать эту ветку и так же ты ее можешь: Удалить так идем дальше про интеграцию с другими:
Продуктами оплате дыра bug tracking до система которая отличная интеграция с bamboo есть ссылка на задачу конкретную! Которой принадлежит сборка также ejiry есть ссылка на сборку в бамбу по окончанию нам собирают бабушка а пока файлы! Которые мы грузим на телефон то есть это дебаг и релиз также какие плюсы мы видим какие ками ты делал разработчик?
То есть кто сделками и поможет оставить комментарий.
Что он здесь поправил то есть нам нам понятнее что происходит у вас возникнет вопрос как это все устанавливать на устройство.
Но вот бомбу собрал а как это теперь засунуть в устройство!
Благодаря открытый api в бамбу мы смогли запилить два приложения сами это памбу фокс и бабу downloader.
Bamboo fox для ios а downloader для android соответственно как выглядит приложением то есть мы хорошо? Сортировали проекты если мы проваливаемся внутрь проекта то мы видим веточки которые принадлежат:
Только этому проекту проваливать веточку мы видим количество сборок также мы видим мы можем собрать! Либо develop либо production видим кем была собрана веточка когда. И сколько времени это заняло так для чего все это мы делаем.
Мы разрабатываем тестировал что в итоге приложения доставит на продакшен?
Доставляем моего делая релизы давайте я вам расскажу как мы их делаем ios вот это мои записи первые четыре. Страницы это мои записи своей рукой писал это боль была. То есть мы в x коде делали выполняли какие-то пункты и ничего?
Нельзя было забыть а именно не надо было забывать подтянуть. Актуальные изменения надо было обновить все сам модуль и заархивировать!
Файл потом это все отправить в пустой как мы делаем релиз айос сейчас я создаю задачу в жире создаю веточку тренируется. Сборка собирается сборка и все это отправляется в тайской просто отправляется в то есть файл благодаря чему благодаря fast lane: У это инструмент для автоматизации процессов сборки мобильных приложений и выход и их шторы давайте.
Вам поподробнее расскажу о фасоне у него есть функция отправки сообщения в telegram. Также может ты можешь привязать послан прошли tik su вот пример.
Телеграма мы запускаем сборку отправляем когда релиз то она приходит! Сообщение пор поэтапно что происходит то есть началась сборка собирается. Схема отправляется в appstore и даже за нас грузит дасин файлы.
Так чтобы понимали как мы убрали ту боль как было раньше вот это было вот так 8 пунктов. И как сейчас это один кратко пробегусь. По пунктам мы создаем релизную ветку дальше.
Мы идем компьютером с наличными ключами в чем боль мы не можем сами мы не можем сами релизе со своих компьютеров потому что ключи. Привязаны конкретной машине то есть я должен был встать и пойти там в другую.
Комнату да это первая боль дальше мы стягиваем! Ветку используя source 3 стягиваем какие-то зависимости устанавливаем под и потом открываем xcode и вот шестом пункте я просто написал архивируем.
Файлы на самом деле там куча всего что мы делаем в их сходе это вот те бумажки которые.
Я вам показывал потом мы отправляем в appstore и загружаем до символы сейчас мы просто создаем релизную! Ветку и это все благодаря чаю и по следу вместе как мы делаем. Релиз android сейчас создаем задачу создаем ветку также идет сборка и благодаря тому что пампушка собирает нам а пока файлы.
Мы просто скачиваемых на компьютер и загружаем через google!
Play консоль и релиз готов что мы имеем сейчас разработчик занимается своим. Делом тестировщики никак не зависят от разработчиков! Просто кайфуют потому что у них автоматизированный процесс за спиной в итоге у нас крутой.
Процесс и сэкономленное время подводя итоги посещаем какие плюсы это запуск новых билдов переса грани. Старых билдов и запуск авто тестов и в принципе все это вместе нам экономит время я заканчиваю? Все вздыхают эдик плюсы плюсы и минусы в командах то есть вы будете работать в разных.
Командах какие плюсы и минусы у них разные но всегда можно подумать о том какой процесс можно автоматизировать и если вы нашли какое-то. Решение то не бойтесь внедрять его потому что как я говорил? До этого это всегда возможность развития давайте я подведу еще один итог наверное менеджера и тестировщики которые ручками тестируют:
Они не равны думаю блин круто да ребята у вас вся но что теперь! Я должен делать так изначально прийти домой просто переспать с этой мыслью и завтра друзей и рассказать разработчику?
Как круто иметь аль но изначально нужно понять насколько нужен вам 7 то есть у вас там один разработчик. Один тестировщик насколько вам надо оптимизировать то что уже работает но если у вас команда которая разрастается проект который растет вы все равно.
Когда-нибудь придется к этому поэтому надо потыкать разрабов сказать друг сестра брат надо надо. Реально надо реализовать эту идею если вдруг он говорит давай ты сделаешь это сам я вам могу сказать одно я недавно наткнулся. На видео реализуюсь за один день ю тубе мужик вам расскажет как а так если честно а так естественно дофига.
Крутых open source of таких как diplo дженкинс можете залезть. И там действительно сейчас очень много документации в интернете почитать как это реализовывать?
И хочу свой такое закончить крутым советам которые давал конфуций своим ученикам нормально делай нормально будет так что вот этот слайд для того чтобы его сняли и запомнили.
Всем спасибо!