QA Family by Alexey – Telegram
QA Family by Alexey
1.55K subscribers
99 photos
6 videos
219 links
Команда:
- Иванов Алексей 2ГИС @alexey_qa
- Иванова Ксения Wink

Этот канал из моего лично трансформируется в канал онлайн сообщества QA Family

👥 Делаем митап @moscowqa
🎙Подкаст family-qa.mave.digital
Download Telegram
В хроме109 в Recorder можно скопировать шаг для различных библиотек
Теги: #playwright, #cypress, #selenium, #tools.
👎52👍9
WebDriver BiDi
Это новый протокол для автоматизации браузеров
Сейчас находится в процессе работы и реализации

https://developer.chrome.com/blog/webdriver-bidi/
https://www.youtube.com/watch?v=ehPpDgqc2bE
Теги: #automation, #tools.
👎50👍4
🛠️Инструменты для тестирования web performance

Google Lighthouse
Это опен соурс от гугл который запускается как часть Chrome DevTools, из командной строки или как библиотека в NodeJS

pagespeed
Под копотом тот же Lighthouse, но использует данные от реальных пользователей

xk6-browser
Инструмент от графаны, то же опенсоурс
xk6-browser позволяет получать информацию из фронта приложения при нагрузочном тестирования при этом доступны все основные функции k6.
Теги: #tools, #grafana, #k6.
👎58👍6
Не вредные советы начинающему

👉 Сосредоточитесь на изучении одного языка или технологии, но изучите его подробно, это намного эффективно, чем поверхностное изучение нескольких языков и инструментов.
👉 Побольше практикуйтесь, то, что изучили сразу применяйте
👉 Изучайте код профессионалов, например на гитхабе или лайф кодинг
👉 Следите за трендами новыми технологиями
👉 Вступите в комьюнити, ходите на митапы в бары с единомышленниками
👉 Найди себе наставника или ментора, старший коллега поможет избежать ошибок который сам совершил

подсмотрено
Теги: #learning, #recommendation, #practices.
👎63👍12
Этот вопрос часто задают на собеседование.

Зачем надо писать автоматизированные тесты?
👌 Ручное тестирование занимает слишком много времени.
Это основная причина, по которой начинают автоматизировать тесты. Ручное тестирование это прохождение регресса которое занимает много времени
👌 Автотесты обеспечивают быструю и раннюю обратную связь
Чем раньше обнаружен баг, тем проще и дешевле его исправить
👌 Автоматизация позволяет поставлять стабильные сборки
👌 Автоматизация поможет высвободить время команды.
👌 Автотесты как подстраховка
Если автотесты имеют большое покрытие, это дает команде большую уверенность при изменении или добавлении нового кода.
👌 Ручные тесты более уязвимы к человеческим ошибкам

Подробно
Теги: #automation #tools #testing #agile
👎55👍10
Небольшие полезности на сегодня:
- Публичные апи.
Можно использовать как для разработки приложения, а можно учиться писать апи тесты
- Советы по написанию кода в nodeJS
для себя подчерпнул советы из раздела Практики безопасности
- Puppeteer best practices
- Практики по улучшение показателей Core Web Vitals
Теги: #playwright, #tools, #learning, #practices.
👎53👍5
Как бороться со "скрытыми" багами которые не нашли во время тестирования
Шаг 1: Определите дефект
Найти такие дефекты можно используя мониторинг или фидбек юзеров
Шаг 2: Воспроизведите дефект
Понять причину падения и полный путь воспроизведения бага
Шаг 3: Изолируйте дефект
Найти модуль или микросервис в котором ошибка, что позволит разработчикам быстро исправить дефект
Шаг 4. Устраните дефект
Когда разработчик исправит дефект, протестируйте исправление и проверьте, что исправление не вызывает новых проблем
Шаг 5: Сообщите результат
После 4 шага сообщите заинтересованным сторонам об исправление скрытого дефекта
Шаг 6. Проведите анализ первопричин
Проведите анализ, почему дефект прошел стадию тестирования. Этот может помочь выявить слабые места в тестирования и не допустить такие ошибки в будущем
Шаг 8: Улучшайте процесс
Шаг 9: Предотвратите будущие дефекты
Важно внедрить процессы, чтобы предотвратить будущие дефекты. Например, внедрение автоматизированного тестирования, улучшение процессов проверки кода или улучшение документации.
Цель состоит в том, чтобы уменьшить вероятность появления дефектов в конечном продукте.

Источник
Теги: #cleanСode, #unitTests, #testing, #defect, #process.
👎61👍12
Вышла новая версия Lighthouse 10

метрика Time To Interactive (TTI) удаляется в Lighthouse 10
Вес Cumulative Layout Shift (CLS) теперь будет составлять 25 % от общей оценки производительности
Поддержка back/forward cache (bfcache)
https://developer.chrome.com/blog/lighthouse-10-0/
Теги: #lighthouse #performance
👎51👍4
ezy — клиент gRPC с открытым исходным кодом, альтернатива Postman и Insomnia
находиться в бета тестирование
https://www.getezy.dev/
Теги: #postman, #tools.
👎55👍8
По инструменты в ручном тестирование

Если вы тестируете веб, у вас возникает потребность протестировать готовый фронтенд, но бэкенд не готов
Или надо протестировать не стандартный кейс и посмотреть как поведет себя фронт

На помощь в таких случаях приходят debugging proxy
Что с помощью такого прокси можно сделать?
- Перенаправлять запрос
- Добавление, замена или удаление заголовков
- замена тела запроса
- Добавление тротлинга(задержки запроса)
- Фильтровать, отменять запросы

Когда я начал интересоваться ит сферой, я себе познакомился с различными инструментами для дебаг прокси:
- Charles
- Fiddler
- Proxyman
- burp (его называют швейцарский нож для тестирования на проникновение)

Пару лет назад я познакомился с созданием расширением и увидел у хрома интересное апи для расширения chrome.webRequest
Его еще использую блокиратор рекламы

И я полез искать расширения для хрома которые смогли заменить большие инструменты:
- Redirect URL, Modify Headers & Mock
- netify (Open source)
Теги: #debugging_proxy #Charles #Fiddler #Proxyman #burp #chrome_extensions #Redirect_URL,_Modify_Headers_&_Mock #netify
👎65👍9
У Postman появились ограничения для Local Collection Runner, которое затронет многих бесплатных и платных пользователей.

- с бесплатным и базовым планами 25 запусков в месяц
- с профессиональным планом по 250 запусков в месяц
- Enterprise неограниченным количеством запусков
- Cloud-based Collection Runner будут оплачиваться на основе потребления

через Newman или Postman CLI ограничений нет

https://blog.postman.com/postman-2023-product-and-versioning-updatesand-vs-code-extension
Теги: #postman
👎53👍7
Тут Heisenbug открыл доклады с прошлой конференции

https://youtube.com/playlist?list=PLsVTVVvrKX9uwg_amKKFsvWwZVYoCuW68
Теги: #automation, #tools.
👎68👍18
Программисты учатся избегать повторения кода, чтобы сделать свой код более эффективным и легче поддерживать. Однако, эта же привычка избегать повторений может привести к тому, что программисты начинают добавлять слишком много логики и абстракций в свои модульные тесты. Это может сделать тесты менее надежными и сложными в понимании.

Есть шкала от повторения до абстракции, которая помогает программистам понять, какую логику следует использовать в коде и тестах. Код и тесты должны находиться на разных уровнях этой шкалы. Модульные тесты не должны содержать сложную логику или абстракции, так как это может сделать их хрупкими и сложными в понимании. Если программист начинает чувствовать, что его модульные тесты нуждаются в своих собственных тестах, то это может быть признаком неправильного подхода.

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

источник
Теги: #cleanСode, #unitTests.
👎60👍13
Всем привет!
Я тут выступлю с докладом Используем JS в браузере для повседневных задачек на конференции Heisenbug 2023 Spring

Конференция пройдет 2 дня в онлайне и 2 дня в офлайне — и это в 2 раза больше времени, чтобы пообщаться вживую и послушать доклады, а после пойти в бар. Если не готовы прийти на площадку лично, то сможете поучаствовать удаленно.

Пользуясь случаем, хочу подарить всем желающим промокод — он дает повышенную скидку на билеты «Для частных лиц»: AIvanov2023JRGpc
Теги: #heisenbug2023spring
👎60👍14
👋Bye bye cypress
Единственная фича которая радовала меня, при написании тестов на cypress режим удобной ui отладки тестов

Но в playwright 1.32 вышел режим ui. Посмотрев презентацию, кажется, последняя фича cypress перестала быть уникальной

Презентации
Теги: #playwright, #cypress.
Please open Telegram to view this post
VIEW IN TELEGRAM
👎56👍24
🫠В последнее время банки переходят на мобильные версии своих банковских приложений
Как говорить мой друг: "А что случилось?"

И в моем круге, очень много знакомых которые тестят мобильные версии с PWA

PWA - это тип веб-приложения, которое можно использовать на любом устройстве, даже без подключения к Интернету. Они работают быстрее и удобнее, чем обычные сайты, и могут сохранять данные на устройстве пользователя. PWA могут быть установлены на устройстве через специальный ярлык на рабочем столе.

на что обратить при тестировании таких приложений?

Кеширование
- PWA используют кэширование, чтобы сохранять данные и ресурсы локально на устройстве пользователя. При тестировании PWA следует убедиться, что кэширование работает корректно, и что приложение правильно обновляет кэшированные данные.

Оффлайн-режим - PWA должны работать в оффлайн-режиме, то есть без доступа к Интернету. При тестировании следует убедиться, что приложение работает корректно в оффлайн-режиме

Разрешения - PWA могут запрашивать разрешения для доступа к определенным функциям устройства, например, к камере или геолокации. При тестировании следует убедиться, что приложение корректно запрашивает разрешения и правильно обрабатывает их отсутствие или отказ.

Push-уведомления - PWA могут отправлять push-уведомления на устройство пользователя, даже если приложение не запущено. При тестировании следует проверять, что push-уведомления работают корректно и доставляются вовремя.
Теги: #PWA, #тестирование, #кеширование, #оффлайн-режим.
Please open Telegram to view this post
VIEW IN TELEGRAM
👎56👍11
🤓 Почему?
Почему
тут не работает?
Почему эта ошибка возникает?
Почему эта ошибка не была замечена ранее в процессе разработки?
Почему функция работает некорректно в разных окружениях?

Задавать вопрос "почему?" важно при тестировании, потому что это помогает определить корни проблемы и обеспечить более глубокое понимание системы или продукта. Рассмотрим несколько причин, почему это важно:

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

- Понимание взаимосвязей: Тестирование часто включает в себя анализ работы системы в целом, и понимание взаимосвязей между различными компонентами критически важно. Задавая вопрос "почему?" и исследуя взаимодействия между компонентами, вы можете улучшить свое понимание системы и обнаружить потенциальные проблемы.

- Обеспечение качества: Чтобы обеспечить высокое качество продукта или системы, важно понимать, почему происходят отклонения от требований или ожиданий.

Контроль и улучшение процессов: Задавая вопрос "почему?", вы также анализируете и оцениваете процессы, используемые в разработке и тестировании. Это может помочь выявить неэффективные практики и внести изменения для повышения производительности и качества результатов.

Почаще спрашивайте своих коллег "почему?" при тестировании и вы улучшите свое понимание системы и будете быстрее устранять проблемы
Теги: #testing #вопросы #почему
Please open Telegram to view this post
VIEW IN TELEGRAM
👎50👍8
Снипеты кода js для различных задач.
Да, js one ❤️

https://www.30secondsofcode.org/
Теги: #tools
👎63👍7
Автоматизаторы на python не пробовали новый быстрый линтер?
написан на rust-e

https://github.com/charliermarsh/ruff
Теги: #automation #tools
👎59👍6