Код тестов должен разрабатываться согласно таким же высоким стандартам, как и код продукта, но про это зачастую забывают. Это серьезно меня беспокоит, и стоит значительных временных и финансовых затрат благодаря своим последствиям. У меня много вопросов к плохому коду автотестов, и сейчас вы узнаете про это все!
Копипаста
Дупликация кода – это его рак. Особенно он свирепствует в тест-автоматизации, потому что шаги тестов зачастую повторяются. Но это не причина дублировать код! Используйте лучшие практики при создании кода, или готовьтесь к тому, что я забракую ваш код на код-ревью!
Жесткое кодирование конфигурационных данных
Автотесты должны быть способны запускаться в любом окружении без проблем. Не кодируйте намертво ссылки, логины, пароли и другие специфичные для конфигурации штуки! Считывайте их как ввод или файлы конфигурации. Нет ничего более раздражающего, чем переключить окружения и обнаружить – сюрприз! – что тесты не запускаются, хотя все значения в нем верны.
Хотите качественно подготовить продукт к релизу? В данной статье команда компании A1QA расскажет, как при грамотном планировании автоматизация тестирования поможет значительно сократить количество ручных проверок, ускорить процесс выхода на рынок и увеличить прибыль в меньший промежуток времени.
Нередко внедрение автоматизации начинается с поиска профессиональной команды, которая подбирает инструменты, разрабатывает решение. Это шаг верный, но не он должен быть первым.
С самого начала нужно решить, для чего же стоит внедрять автоматизацию и в каком объеме.
Грамотно разработанная стратегия позволит вам прочувствовать все преимущества автоматизации тестирования, а именно:
Получение более быстрых результатов тестирования;
Эффективное распределение ресурсов, направленных на тестирование;
Оптимизация затрат на обеспечение качества продукта и тестирование;
Безошибочное тестирование: качественный тест не допустит ошибки, которую может допустить человек;
Возможность более тесной интеграции тестирования с существующими процессами разработки продукта.
НА КАКИЕ ФАКТОРЫ ОБРАТИТЬ ВНИМАНИЕ ПРИ ПРИНЯТИИ РЕШЕНИЯ О ВНЕДРЕНИИ АВТОМАТИЗАЦИИ?
В докладе автор расскажет, как был организован запуск автоматических тестов (appium/javascript) в gitlab CI для нативного Android приложения на каждый Merge Request. Опишет, как можно встроить автотесты в существующий процесс сборки, как правильно настроить запуск тестов в docker image (тесты бегут в TestObject облаке), как произошла интеграция с клаудом и какие результаты это принесло. Tech stack: Gitlab CI, kubernetes, android, appium, javascript, testobject.
Привет! Меня зовут Артём, и я занимаюсь автоматизацией тестирования. Антипаттерны в разработке — довольно популярная тема. Но ведь в тестировании тоже есть свои "плохие советы", и они довольно забавно пересекаются с разработкой. Недавно мне на глаза попалась ироничная статья про антипаттерны в тестировании. Вашему вниманию!
Мы стараемся как можно скорее доказать, что неправы, потому что только таким образом можем развиваться. Ричард Фейнман
Есть много способов усложнить жизнь командам автоматизации тестирования. Если вы разработчик или системный архитектор, и недолюбливаете кого-то из тестировщиков, то эта статья — для вас. Вы найдете в ней сокровенное знание, вдохновившись которым, вы научитесь делать интерфейс любого приложения практически непригодным для тестирования.
Ну, а если вы добрая душа и уважительно относитесь к чужому труду, то можете рассматривать эту статью как набор антипаттернов.
В докладе говорится о новых возможностях Open Source фреймворка JDI для Автоматизации UI Тестирования и не только на языках Java, C# .Net и Python. Архитектор проекта расскажет «всю правду» о своем детище, а Вы можете послушать, сделать выводы и, возможно, использовать это решение для Вашего следующего проекта.
Бывали ли вы в доме маляра, требующем покраски, или в доме плотника, в котором не закончена отделка? Видели ли вы машину механика, которая прямо-таки требует починки? Почему, с вашей точки зрения, это происходит? Возможно, они слишком заняты работой, оплачивающей их счета? Или просто не хотят тратить время на то, что они и так целый день делают на работе, еще и дома? Как бы там ни было, кажется, что зачастую мы не применяем навыки, в которых мы достигли совершенства, к вещам, находящимся под нашим собственным контролем.
То же самое происходит и с тестировщиками. Мы классно находим баги, и все равно жалуемся. Мы жалуемся, что в нашей автоматизацией куча проблем. Мы отлично находим проблемы для других людей, но забываем применять этот навык, чтобы найти проблемы в своих собственных тестах. Наши тесты сломаны, и с этим надо что-то делать. Их надо тестировать!
Почему мы доверяем нашу жизнь машинам? Как известно, человек – существо ленивое. Если кто-то может постирать, раскопать, подумать (?) за нас, то мы с легкостью вверяем ему наши обязанности и переключаемся на более интересные вещи (прокрастинация в социальных сетях не считается ).
Но есть еще один немаловажный аспект: автоматизация любого процесса – это увеличение производительности. Профит правильно заавтоматизированного процесса улетает в космос. Возможности современных машин поражают воображение. Следовательно, не воспользоваться в тестировании благами автоматизации, наверное, было бы самой большой ошибкой в сфере разработки программного обеспечения.
Автоматизатор мобильных приложений – одна из наиболее высокооплачиваемых профессий на рынке. Учитывая дефицит кадров, многие автоматизаторы стоят дороже программистов. Поэтому любому хорошему тестировщику стоит освоить базовые навыки мобильной автоматизации.
В мае мы запустили новый тренинг "Автоматизатор мобильных приложений", который дает все необходимые навыки для самостоятельной настройки полного стека автоматизации с нуля.
Курс состоял из пяти тем. И сейчас в нем добавился новый урок, Continious Integration.
Прошло довольно много времени с момента нашейпоследней статьи об эффективной Selenium-инфраструктуре. Если вы находитесь в самом начале непростого пути Selenium — советую ознакомиться с нашими статьями про масштабируемый Selenium (часть I, часть II), Selenoid — универсальный инструмент для автоматизации тестов в браузерах (раз, два), Selenium под Windows (ссылка). Если вам больше нравятся мотивирующие рассказы — посмотрите видео моего доклада про масштабируемый Selenium на SeleniumConf Berlin 2017.
С момента публикации последней статьи в нашем сообществе произошло много интересного. Сегодня я хочу рассказать о самых важных возможностях, добавленных в наши инструменты за последние месяцы.
Последний и самый короткий месяц зимы выдался необычайно насыщенным новаторскими подходами и свежими решениями в автотестировании. Сегодняшнее повествование целиком и полностью посвящено автоматизации, и для этого есть множество причин:
автоматизация — это высшее благо при проведении регрессионного тестирования!
автоматизация помогает исключить человеческий фактор, а значит минимизировать ошибки!
все, что может быть автоматизировано, должно быть автоматизировано!
А теперь с удовольствием и гордостью представляем на ваш суд каждое достижение, успешно реализованное нами в феврале.