[Test Engineering Weekly] Метрики якості, архітектори тестів, multiplayer в Age of Empires та проблеми з float числами

💡 Усі статті, обговорення, новини про тестування — в одному місці. Приєднуйтесь до QA спільноти!

Всім привіт. Це Олександр Романов з добіркою цікавих статей зі світу тестування та інженерії систем.

Звідси

Тестування

  • «Finding Adequate Metrics for Outer, Inner, and Process Quality in Software Development». Хороша стаття про те, як та навіщо треба вимірювати якість у софтварних продуктах. InfoQ стабільно радує якісними матеріалами.
  • «QA 101: how to manage product quality right from the start». Що робити, коли ви перший тестувальник у стартапі — та треба побудувати процеси з нуля? З чого починати? В цій статті ви знайдете відповіді на ці питання та навіть чек-лист, щоб нічого не забувати в дорозі.
  • «Help Wanted: Test Automation Framework Architect...Maybe?» Роздуми Paul Grizzaffi на тему того, хто такі Automation Architects та нащо вони потрібні. А також — яке важливе вміння повинно бути в таких людей.
  • «Test Automation Guidelines». Коротка, але важлива стаття про те, якими ж повинні бути автоматизовані тести. Можна користуватися для того, щоб перевіряти сеньйорність кандидатів на співбесіді.
  • «Writing The Perfect Tests for your Application». Хороша стаття про те, навіщо ми пишемо тести. TLDR: щоб будувати, дебажити та щоб спати спокійно.
  • «Key Differences Between Top-Down and Bottom-Up Integration Testing». Для джуніорів або тих, хто все ще не розібрався в тому, що ж таке інтеграційні тести та які вони бувають. Суха теорія, але для початку непогано.
  • «The reverse load test: it worked for us». Доволі незвичний погляд на тестування навантаження: коли потрібно тестувати не саму систему, а саме інструмент та інфраструктуру для навантажувальних тестів. Цікаве те, що саме автори заміряли та як будували тести.
  • «ChatGPT Use cases for Performance Engineers». Стильно та молодіжно! Задля розваги пропоную почитати приклади того, як можна застосувати ChatGPT для написання тестів навантаження. На перший погляд виглядає досить непогано, але потрібно перевіряти все це на практиці!
  • «I have no where to test my automation skills». Для тих, кому все ще не вистачає практики з автоматизації (наприклад, після чергових курсів) — ця стаття дасть декілька додаткових ресурсів для закріплення матеріалу.

Розробка та технології

  • «1500 Archers on a 28.8: Network Programming in Age of Empires and Beyond». Мабуть, найцікавіша стаття, що я читав за останній місяць. Для тих, кому цікаво побачити, у чому ж складність написання мультиплеєрних ігор. На прикладі старої доброї Age of Empires.

Обрані цитати:

Take the time to educate your testers in how your communications system works, and expose and explain the summary metering to them — you might be surprised what things they notice when the networking code inevitably encounters strange failures.
Be prepared to create simulation applications and stress test simulators. We ended up with three different minimal test applications, all to isolate and highlight problems like connection flooding, problems with simultaneous matchmaking connects, and dropped guaranteed packets.
Test with modems (and, if you are lucky, modem simulators) as early as possible in the process; continue to include modem testing (as painful as it is) throughout the development process. Because it is hard to isolate problems (is that sudden performance drop because of the ISP, the game, the communications software, the modem, the matchmaking service, or the other end?) and users really don’t want to hassle with flaky dialup connections when they have been zipping along at instant-connection LAN speeds. It is vital that you assure testing is done on modem connections with the same zeal as the LAN multiplayer games.
  • «System Design Interview Survival Guide (2023): Preparation Strategies and Practical Tips». Для тих, хто готується до систем-дизайн інтерв’ю або кому просто цікаво, як проєктувати великі масштабовані системи — ця стаття точно буде цікавою. Тут лише базові речі, але вектор, куди потрібно «копати», також надається.
  • «A beginner’s guide to Chrome tracing». Невеличкий пост про те, як можна швидко ввімкнути низькорівневий трейсинг в браузері Google Chrome. Може знадобитися як фронтендерам, що працюють над перфомансом, так і особливо прискіпливим тестувальникам.
  • «Examples of floating point problems». Крутезна стаття від Julia Evans про те, чому обчислення з плаваючою точкою — то дуже підступна річ. Багів з цим можна отримати величезну кількість. Читайте, не пошкодуєте!
  • «How we improved DNS record build speed by more than 4,000x». Практичний приклад того, як оптимізації лише в одному компоненті змогли покращити перфоманс усієї системи. Цього разу на прикладі DNS-резолвера Cloudflare.
  • «How to Be a Good Developer: 20 Practical Tips From Our Senior Programmers». Набір різних підходів та порад для новачків (та й не тільки) у IT-індустрії.
  • «We invested 10% to pay back tech debt; Here’s what happened». Практичний кейс того, як окрема команда в окремій компанії змогла інтегрувати роботу над технічним боргом в процес делівері. Плюс, уроки, які інженери отримали в процесі.

Що я вивчаю зараз

Зайшло:

  • Книга «System Design Interview — An insider’s guide». Для тих, хто не проходив ще курс Grokking System Design Interview — буде дуже багато цікавого. Особливо якщо вам цікаво, як спроєктувати щось типу YouTube чи Facebook. Для тих, хто вже пройшов — хороший спосіб закріпити вивчене та отримати просто купу посилань на цікаві дослідницькі роботи та доповіді.
  • Курс Automated Software Testing with Python. Досить непоганий курс про усі базові аспекти тестування в Пайтоні. Починаючи від модульних тестів для аплікації на Flask, закінчуючи UI та API тестами. Глибини матеріалу не чекайте — тільки прості речі.
  • Learn Blockchain, Solidity, and Full Stack Web3 Development with JavaScript. Проходжу цей безкоштовний курс зараз. Наразі опрацював десь третю частину курсу. Він дуже практичний, багато коду. Трохи бісить повторення матеріалу, але без цього люди не запам’ятають матеріал. Після закінчення — зроблю огляд.

Не зайшло: «The Secrets of Consulting: A Guide to Giving and Getting Advice Successfully». Книга крута, але вирішив її поки що відкласти. Не на часі.

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

👍ПодобаєтьсяСподобалось7
До обраногоВ обраному2
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Концентрат корисних статей для тестування, найбільше зайшли практика для автоматизації та метрики, дякую!

дякую за дайджест!

Дякую, що читаєте) Сподіваюся, кожен знайде щось цікаве із запропонованих статей.

Підписатись на коментарі