Test Engineering Notes – Telegram
Test Engineering Notes
3.8K subscribers
177 photos
2 videos
641 links
Україномовний канал про технічні аспекти тестування, розподілені системи, блокчейн та кібербезпеку.

Консультації з автоматизації, менторинг, проведення співбесід - @al8xr
Download Telegram
Оновлення в Awesome Blockchain Testing

#blockchain #testing

❗️Для тих, хто ще не чув - я дуже люблю розбиратись в тестуванні складних речей. Насамперед - блокчейну. Як тільки я стартував роботу в цій сфері - я створив окремий репозиторій та ділюся там посиланнями, відео, постами та інструментами зі світу блокчейну тестування.

🔄Сьогодні я додав ще трохи матеріалів, оновив структуру, видалив трохи застарілого контенту.

А далі буду більше розповідати про цей чарівний світ блокчейнів ще більше. Чому? Бо він цікавий, складний та постійно розвивається.
25🔥8❤‍🔥2
Forwarded from Олекса Мащиць
14-15 грудня відбудеться онлайн конференція тестувальників “Бетельгейзе” від спільноти QA Україна.

🔸“Бетельгейзе” охоплює тестувальників різних рівнів та пропонує вам не лише послухати вже звичні доповіді, але й виділяє окремий день для професійних дискусій.

🔸Конференція відбудеться онлайн, а всім учасникам буде наданий доступ до записів відео матеріялів.

🔸Всі деталі доступні на сайті конференції, який організатори постійно оновлюють додатковими сюрпризами.

👀Організатор QA Україна це велика спільнота українських тестувальників, що просувається досвідченим фахівцем та освітянином Олексою Мащицем. Таким чином “Бетельгейзе” є конференцією “від своїх” та “для своїх”.

Чекаємо на тебе!

👉Офіційний сайт: https://betelgeuse.qaukraine.online/
🔥92👍1
🎒Чому інколи корисно навчатись тому, що вже знаєш?

#insight #learning

Коли ми навчаємось, здається, що одного джерела (книжки чи курсу) достатньо, щоб опанувати нову навичку.
Але зі свого досвіду можу сказати, що інколи розбирати навіть начебто знайомі речі - вкрай корисно!

Чому? Тому що різні люди подають інформацію по-різному. Хтось гарно розповідає, хтось - пояснює з візуальними матеріалами, хтось - доводить свою правоту за допомогою математики. (Так, я зустрічав математичне обгрунтування, чому вичерпне тестування - неможливе!).

Кожен новий матеріал дозволяє поглянути на проблему під трошки іншим кутом. Глибина ваших знань зростає. А як результат - бачиш звʼязки там, де раніше й не думав.

А ще - бачиш, яким чином можна розповідати досить складні речі більш простими словами, з аналогіями та прикладами.

🔗Яскравий приклад для мене - блокчейн. Коли я тільки почав його вивчати, у 2021 році, то ділився вивченим тут, в каналі. Наче все було зрозуміло.

Але тільки зараз, побачивши одні й ті ж матеріали від десятків різних спеціалістів, я бачу - як можна розповісти про усі ці концепції набагато легше, з мінімумом складних термінів.

P.S. Глибина матеріалу напряму залежить від аудиторії. 99% курсів й матеріалів, нажаль, глибиною похвалитись не можуть. Тому й розтягують контент, який можна росказати за годину - на цілі тижні.

P.P.S В цьому криється проблема "молодих інфлюенсерів" (люди поспішають ділитись знаннями, що не до кінця не зрозумівши їх). Такі люди дійсно можуть розповісти про різні класні штуки, але не своїми словами, а завченими термінами. Тому який-неякий досвід треба мати, перед тим як ділитись. Або - дуже ретельно пропрацьовувати теми.

Вмінню пояснювати теж треба вчитись. Не кожен спеціаліст може бути хорошим викладачем.
41🥱2
Forwarded from Testing Minutes (Oleksandr Romanov)
⚡️ Епізод 41: Піраміди й інші фігури в тестуванні

Testing Minutes подкаст повертається із пʼятим сезоном!

Піраміди ... Величні споруди посеред пустелі, що збудовані багато тисяч років тому. Люди, що їх створили напевне вже тоді думали про ... кількість тестів на кожному рівні! А які піраміди в тестуванні бувають? Чи піраміди є недосяжним Граалем, чи існують інші, більш практичні варіанти? Про все це у новому епізоді подкасту будуть розмовляти Артем та Олександр.

Дивитись та слухати:

🔸 Youtube
🔹 Spotify
🔸 Apple

Ваша підтримка важлива!

Ми постійно розвиваємося й рухаємося вперед, але це неможливо без вашої підтримки. Тому будемо вдячні за лайки, коментарі та будь-яку іншу форму підтримки. Це допоможе нам просувати наші подкасти в рекомендаціях. Також ви можете підтримати нас донатом — це дійсно важливо для нас і є нашим рушієм.

Дякуємо вам!

Підтримати подкаст можна через:

🏦 База від Монобанку
Buy Me a Coffee

#testingminutes | @a_grygorenko | Test Engineering Notes
🔥214👍1🗿1
☎️Як Google рекомендує тестувати Android додатки

#testing #mobile #android #automation

🔎 Google поділився рекомендаціями з тестування мобільних застосунків на Android. Ще одна піраміда!

TL;DR:

1. Пропонують зосередитись на таких рівнях тестів, як Unit, Component, Feature, Application, Release Candidate. Навіть розписують стратегію.
2. Описують підхід - screenshot testing. Хоча він має свої переваги, але не рекомендується створювати занадто багато таких тестів.
3. Для тестування навантаження розрізняють local testing (benchmarking в контрольованому середовищі) та field testing - перевірка в максимально наближених до користувача умовах.
4. UI радять тестувати за допомогою behavior ui тестів. Для цього є різні фреймворки - Espresso, Jetpack Compose, UI Automator, Roboelectic.
5. Стабільність тестів (особливо UI) - важлива. То ж треба слідкувати за правильним налаштуванням пристроїв, приділяти увагу можливим помилкам синхронізації та робити перезапуски тестів.
6. Roboelectic фреймворк можна застосовувати як для unit, так і для UI тестів.
7. Не варто забувати також про тестування на екранах різного розміру. Для цього є свої окремі бібліотеки та підходи.
1👍24🔥53🤮1
🐍Is Python Really That Slow? 🚤

#python #performance

Доволі цікаве порівняння швидкості між Python (CPython та PyPy рантайм різних версій), Node.js та Rust. Порівнювали на базових алгоритмах, типу Фібоначчі чи сортування.

Здається, переможець очевидний.

Треба відмітити, що PyPy рантайм останньої версії значно покращив свої показники та став навіть краще, ніж node. Але до Rust ще рости й рости.

Для тих, хто хоче дізнатись різницю між CPython та PyPy - маю окрему статтю.
👍111🤮1
🗃 Легкий спосіб втратити роботу тестувальником

#testing

В інтернетах пишуть:

"Тестери роблять процес розробки більш повільним, усе треба автоматизувати, то ж цим можуть легко зайнятись розробники. А тестерів - звільнити."


📎 Минулого тижня Wayne Roseberry розкрив цю тему та написав пост про те, як тестувальник додає користь продукту.

TL;DR:

- Якщо тестувальник перевіряє лише базові позитивні сценарії - то дійсно, це може зробити розробник (та автоматизувати згодом). Від такого тестера користі абсолютно нуль. Це - найлегший спосіб втратити роботу тестувальником.
- Тест інженер повинен робити більше ніж розробник, продакт менеджер й будь-хто інший - для того, щоб дослідити продукт та можливі ризики.
- Тестування тільки позитивних сценаріїв витрачає час, але дає мінімальний шанс знайти помилку чи ризик. То ж що робити?
- Створіть модель того, що ви тестуєте: частини з яких воно складається, звʼязки між ними та зовнішніми системами, вхідні й вихідні параметри.
- Створіть модель звʼязків в системі - графи станів, переходів, послідовності дій.
- Виконуйте дії по декілька разів (бувають ситуації, коли навіть однакові дії можуть призвести до різних результатів).
- Спробуйте змінити атрибути моделі, яку тестуєте.
- Перемішуйте різні моделі в різних послідовностях.
- Застосуйте різні, неочікувані вхідні параметри в системі.

💡Коли тестер перестає бути "папугою", що тільки повторює, а стає дійсно інженером й дослідником - користь одразу помітна.

Раджу почитати статтю повністю - там шикарні аналогії та приклади. В коментарі залишу прекрасну ілюстрацію до статті.
👍28🔥93🤮1
Forwarded from Testing Minutes (Oleksandr Romanov)
⚡️ Епізод 42: Як тестувати відео стрімінг з Миколою Аврамуком

Після робочого дня ви приходите додому та вмикаєте улюблений серіал на стрімінг платформі. Але як стрімінг працює з точки зору технології? В цьому епізоді до Артема та Олександра завітав Микола Аврамук. Разом ми поговорили про те як працює відео стрімінг та як його тестувати (й автоматизувати).

Дивитись та слухати:

🔸 Youtube
🔹 Spotify
🔸 Apple

Ваша підтримка важлива!
Ми постійно розвиваємося і рухаємося вперед, але це неможливо без вашої підтримки. Тому будемо вдячні за лайки, коментарі та будь-яку іншу форму підтримки. Це допоможе нам просувати наші подкасти в рекомендаціях. Також ви можете підтримати нас донатом — це дійсно важливо для нас і є нашим рушієм.

Дякуємо вам!

Підтримати подкаст можна через:
🏦 База від Монобанку
Buy Me a Coffee

#testingminutes | @a_grygorenko | Test Engineering Notes
👍18🔥8
🤖 The 70% problem: Hard truths about AI-assisted coding

#ai #llm

Вчора приймав участь в дискусії на тему - “Чи допомагає ChatGPT в роботі”. Під час розмови згадали статтю на цю тему.

📝TL;DR

- AI для розробки зазвичай використовують або для швидких прототипів або для деяких повсякденних задач (як-от генерація тестів, документації, парного програмування)
- Сійньори отримують більше користі від AI інструментів, ніж джуніори. Бо сіньйори одразу рефакторять отримані результати, думають про граничні умови та обробку помилок.
- Це призводить до парадоксу знань: за допомогою AI сіньйори прискорюють роботу, яку й так знають як виконувати; джуніори намагаються вчитися, що треба робити - за допомогою того ж AI. Джуніори копіпастять некоректні чи застарілі рішення, які не розуміють до кінця та збільшують кількість потенційних багів.
- Для не-інженерів, ChatGPT призводить до проблеми 70 відсотків: AI дуже легко дозволяє завершити перші 70%, але інші 30% займають дуже багато часу. AI щось запропонував, людина застосувала, нові проблеми зʼявились, знову запит до AI - й все наново.
- Як краще користуватись AI: або як засіб для швидких “чернеток”, або конкретних запитів із мінімумом контексту, або ж - при ретельній перевірці того, що пропонує ця магічна коробка.
- Майбутнє за AI агентами. Що це? Це такий собі “прокачаний” ChatGPT, який краще розуміє ваш контекст, пропонує варіанти, вчиться постійно на вашому коду.
- Найкраща мова програмування - це англійська. Бо при роботі з AI агентами, треба вміти точно пояснити, що ви очікуєте.
- Не дозволяйте AI інструментам замінити ваше мислення та ваш досвід. Користуйтеся цим, як ДОПОВНЕННЯМ до поточних навичок.

💡Зі свого боку, можу доповнити статтю.

- AI дуже легко може “вкрасти” момент навчання. Особливо для джуніорів. Бо навчання - це про самостійне мислення, про пошук звʼязків між концепціями та ідеями. Про нашарування нових знань на існуючу “базу”. Без всього цього - це просто "чарівна коробка", яка продукує щось, що МОЖЛИВО ПРАВИЛЬНО.
- AI треба завжди перевіряти. Якщо говорити про код - можна порівняти відповідь від різних AI систем.
- Ваш контекст зазвичай дуже складно перенести в AI систему. То ж ви будете завжди отримувати “найбільш прийнятну відповідь на поточне питання”. А ось чи правильна ця відповідь в конкретний момент часу на ВАШОМУ проєкті - вирішувати тільки ВАМ.
👍2562
Аналіз ризиків за допомогою FMEA

#testing #risk

В останній статті від Алана Пейджа я побачив один з підходів до аналізу ризиків - Failure Mode and Effect Analysis (FMEA).
Підхід не новий та не єдиний можливий. Але для початку - вкрай корисний.

TL;DR

Що таке FMEA?

Техніка аналізу ризиків, ідентифікації проблем, їх причин та розробки шляхів управління цими ризиками.

Де можна застосувати?

При дизайні систем, процесів, продуктів. Для процесів тестування в тому числі.

Як користуватись FMEA?

1. Зберіть крос-функціональну команду з ключовими замовниками
2. Визначте межі аналізу (scope)
3. Перечисліть потенційні моделі проблем та помилок
4. Оцініть помилки, їх серйозність (Severity - S), частоту виникнення (Occurence - O), ймовірність виявлення (Detection - D).
5. Розрахуйте показник RPN = S x O x D та пріорітезуйте ризики за цим показником
6. Розробіть плани дій, у разі реалізації ризиків.

Шаблони для цього підходу можна скачати тут.
🔥17👍1🥰1💩1
Стратегії мобільного тестування в різних компаніях

#testing #mobile

Знайшов цікавий тред про те, як в різних компаніях (Lyft, Spotify, Uber, RobinHood, Nordstrom, Shopify, Ford, Airbnb) налаштоване мобільне тестування.

Дуже рекомендую почитати!
👍19🔥14🥱1
Forwarded from Testing Minutes (Oleksandr Romanov)
⚡️ Епізод 43: Performance review та як його пройти

Кожного року, в грудні, настає час для зимових див. Тим, хто цілий рік гарно працював, Cвятий Миколай допомагає .... пройти performance review та отримати очікуване підвищення! Але як підготуватись до цього ревʼю? Яку роль в цьому грає ваш менеджер? Про все це Артем та Олександр будуть говорити у цьому епізоді подкасту.

Дивитись та слухати:

🔸 Youtube
🔹 Spotify
🔸 Apple

Ваша підтримка важлива!
Ми постійно розвиваємося і рухаємося вперед, але це неможливо без вашої підтримки. Тому будемо вдячні за лайки, коментарі та будь-яку іншу форму підтримки. Це допоможе нам просувати наші подкасти в рекомендаціях. Також ви можете підтримати нас донатом — це дійсно важливо для нас і є нашим рушієм.

Дякуємо вам!

Підтримати подкаст можна через:
🏦 База від Монобанку
Buy Me a Coffee

#testingminutes | @a_grygorenko | Test Engineering Notes
🔥17👍2🤮1
Мапа Github

#tech

Знайшов цікавий проєкт, де проєкти на Гітхабі зображені у вигляді величезної мапи. Кожна точка - то окремий репозиторій. Виглядає дуже круто!

Для тих, кому цікавий код - https://github.com/anvaka/map-of-github
🤓13
Forwarded from Testing Minutes (Oleksandr Romanov)
⚡️ Епізод 44: Як тестувати блокчейн з Євгеном Старинцем

Біткоін за 100к! Блокчейн на хайпі! Ні, блокчейн це scam! А що таке блокчейн - насправді? Та найголовніше - як його тестувати? З цим питанням ведучим подкасту, Артему та Олександру, допоможе гість - Євген Старинець.

Дивитись та слухати:

🔸 Youtube
🔹 Spotify
🔸 Apple

Ваша підтримка важлива!
Ми постійно розвиваємося і рухаємося вперед, але це неможливо без вашої підтримки. Тому будемо вдячні за лайки, коментарі та будь-яку іншу форму підтримки. Це допоможе нам просувати наші подкасти в рекомендаціях. Також ви можете підтримати нас донатом — це дійсно важливо для нас і є нашим рушієм.

Дякуємо вам!

Підтримати подкаст можна через:
🏦 База від Монобанку
Buy Me a Coffee

#testingminutes | @a_grygorenko | Test Engineering Notes
🔥12👍5
Вітаю. Сьогодні хочу нагадати вам як пройшов 2024 рік для тестувальників: які події відбулися, які конференції були, що за рік зробили найвідоміші українські блогери-тестувальники, які оновлення повиходили, які інстурменти зʼявились, та як взагалі це все вплинуло на галузь.
Підсумків не буде бо у кожного вони свої. Трошки порефлексуємо, трошки поностальгуємо.

Версія для читання з всіма посиланнями буде за цією лінкою https://dou.ua/forums/topic/51824/ (зʼявиться через пару годин)

Дивитись тут https://www.youtube.com/watch?v=H8Ya1yyeFAs

До зустрічі у 2025 році! Нехай він принесе перемогу, радість, любов, здоровʼя, гроші та нові знання всім нам! 🥳🙏❤️
12
Forwarded from Testing Minutes (Oleksandr Romanov)
⚡️ Епізод 45: Оцінки задач в тестуванні та чому мало хто вміє їх робити

Як часто ми чуємо питання: за скільки ви це протестуєте, а чого так багато часу займає автоматизація, чому ми не влізли з задачею в спрінт. Оцінки задач - то невіддільна частина буття тест інженера. Але чому ми так часто робимо хибні оцінки? Чи є можливість зробити наші оцінки задач більш точними? Про це й будуть вести розмову Артем та Олександр в черговому епізоді подкасту.

Дивитись та слухати:

🔸 Youtube
🔹 Spotify
🔸 Apple

Ваша підтримка важлива!
Ми постійно розвиваємося і рухаємося вперед, але це неможливо без вашої підтримки. Тому будемо вдячні за лайки, коментарі та будь-яку іншу форму підтримки. Це допоможе нам просувати наші подкасти в рекомендаціях. Також ви можете підтримати нас донатом — це дійсно важливо для нас і є нашим рушієм.

Дякуємо вам!

Підтримати подкаст можна через:
🏦 База від Монобанку
Buy Me a Coffee

#testingminutes | @a_grygorenko | Test Engineering Notes
26👍4
Що таке Lean Test Canvas?

#testing

Lean Test Canvas - одна з форм організації тестової стратегії. Знайшов її в книзі Software Testing Strategies. Автори надихались відомим business model canvas.

Модель допомагає візуалізувати всі найголовніші складові тестової стратегії:

- customers: хто буде тестувати - внутрішня чи зовнішня команди

- value proposition: відповідь на питання "чому вам треба тестувати оце все"

- test and deploy pipeline: скільки часу треба на усі активності, щоб отримати нову версію на продакшн

- core scope of role: за які ризики відповідає команда

- impact: наскільки велика фіча та які підсистеми вона включає

- key resources and activities: хто та яким чином виконує тестування

- out of scope: які аспекти чи атрибути системи не покриваються тестуванням

- cost of structure: скільки ми платимо за тестування (чому так багато?)

- direction for improvements: як команда буде покращувати зібрані метрики

- key measures: які метрики команда буде використовувати
🔥22👍5
🪄Проблеми автоматизації: чарівність та швидкість автотестів

#testing #automation

Дуже часто експерти у доповідях "рекламують" автоматизацію тестування, як таку собі велику кнопку, яку можна натиснути й вона магічним чином швидко продукує тестові результати.

Уявімо на секунду, що така кнопка існує. Девелопер закінчив написання коду, створив PR - тести автоматично запустилися на CI сервері, й БУМ - ви отримали результати!

🔮Більшість автоматизованих тестів створюють не для того, щоб тестувати. Їх створюють для швидкої ідентифікації змін (change detection). Робота розробників якраз і полягає в тому, щоб ці зміни створювати. То ж по хорошому, якщо тест на змінену фічу впав - то це саме те, задля чого він був створений (бо тепер є зміни в системі чи бізнес сценарії).

🎱Команди, що використовують автоматизацію тестування знають, що як тільки отримуєш результат - їх треба дослідити. Бо серед тестів можуть бути підступні false negatives (баги нема, а тест впав) та false positives (бага є, а тест - зелений). Після дослідження треба описати кроки для відтворення проблеми та обговорити чи потрібно взагалі робити фікс.
Далі - наступає очікування, поки розробник пофіксить проблему. Наступний крок - перезапускаємо тести на новому білді та сподіваємось, що цього разу вони будуть зеленими.

💫 Який із цього можна зробити висновок? Автоматизація тестування ніколи не є "безкоштовною" та "не працює миттєво". Деякі автори книжок навіть стверджують, що автоматизація тестування, в середньому, може прискорити процеси тестування менше ніж на 50%.

То ж не треба вважати автотести "срібною кулею". Навіть з AI! А якщо саме ви це знаєте - допоможіть це зрозуміти вашим менеджерам. 😎
24🔥16🥱1
🥊Чому автотести не замінять тестування (та при чому тут морський бій) ⛵️

#testing #automation

Давайте на хвилину перенесемось у дитинство та згадаємо гру "морський бій" (чи battleships). Малюємо своє поле й поле суперника, розташовуємо на полі кораблі й ведемо вогонь по кораблям вашого супротивника. Не знаю як ви, а я памʼятаю таку гру (в часи коли ще не було багато компʼютерів та консолей).

👨‍🔬Про експеримент

В книзі "Software Testing Strategies", автори розповідають про свій експеримент. Під час майстер класів з тестування, вони ділили учасників на дві групи та пропонували їм грати в морський бій. Умови були прості. Один з учасників гри повинен грати як завжди. Іншому є учаснику треба зазделегідь продумати план гри - стратегію розміщення та ураження кораблів (наприклад хрестом, зіркою, чи ще якось). До того ж - йому треба дотримуватись обраного плану протягом усієї гри.

Автори експерименту провели декілька сотень таких ігор. Вгадайте, скільки разів виграли люди, які чітко дотримувались плану гри? (декілька разів із сотень)

🤔 Але нащо тим нам про це розповідаєш? Де тут тестування?

Кораблі на листочку паперу - то баги у софті. Як кораблі можуть мати декілька палуб - так і баги зазвичай групуються та туляться один до одного. (ефект кластеризації).

Команда, яка механічно дотримувалась плану гри - то і є автоматизовані тести. Такий стиль гри можливо й призведе до ураження корабля (знаходження багу), але не зможе перевірити наявність помилок поруч.

Команда, що грала як завжди - то і є тестування. Ця команда аналізувала нові дані після кожного пострілу - та переглядала свою стратегію гри відповідно.
До того ж - люди, які ніколи грали в морський бій, так чи інакше вчаться застосовувати "дослідницький" підхід до гри (навіть неусвідомлено!)

💡 Висновки

- Автотести виконують тільки те, що ви запрограмували їх робити. Не більше, не менше.
- Тестування все-таки "... процес оцінки продукту шляхом його вивчення через досвід, експерименти та наявні знання" (М. Болтон).
- Тестування, окрім перевірки очікуваних результатів, завжди містить прихований очікуваний результат: "і нічого іншого дивного не сталося".
👍29🔥163🥱2
Чи потрібен ISTQB сертифікат

#testing

Сьогодні маю для вас дещо цікаве.

🕹По-перше, для тих, хто хоче потренуватись в CSS / XPath локаторах - маю невеличку тренувальну гру.

🗞А по-друге - для тих, хто розмірковує, чи потрібно взагалі отримати свій перший ISTQB сертифікат - маю хорошу новину.

Олександра Ковальова, з якою ми якось спілкувались на подкасті, з 13го січня буде проводити марафон по ISTQB Foundation Level.
Для новачків буде вкрай цікаво - буде багато практичних прикладів. До того ж, вартість марафону - аж 0.

👉👉👉 Долучитись до марафону - ось тут!
👍193
Forwarded from Testing Minutes (Oleksandr Romanov)
⚡️ Episode 46: Software Testing in the Age of Generative AI with Mark Winteringham

AI is on hype. AI is everywhere. But how exactly do you use generative AI for software testing and automation? Is it just a fancy tool for generating test cases or ... something more? What are the challenges and problems in using modern LLM systems for daily work? To explain this topic, the hosts, Artem and Oleksandr, invited Mark Winteringham.

Дивитись та слухати:

🔸 Youtube
🔹 Spotify
🔸 Apple

Ваша підтримка важлива!
Ми постійно розвиваємося і рухаємося вперед, але це неможливо без вашої підтримки. Тому будемо вдячні за лайки, коментарі та будь-яку іншу форму підтримки. Це допоможе нам просувати наші подкасти в рекомендаціях.

Також ви можете підтримати нас донатом на 🏦 База від Монобанку — це дійсно важливо для нас і є нашим рушієм.

Дякуємо вам!

#testingminutes | @a_grygorenko | Test Engineering Notes
7👍6