Test Engineering Notes: Volume 1. Тестабіліті, 40 років в ІТ, балансування навантаження
Всім привіт. Це Олександр Романов. Черговий, нерегулярний, але все ж таки корисний дайджест цікавих статей про тестування, розробку та інші технічні штуки.
TLDR або що у випуску
- чи варто тестувати та писати тести з економічної точки зору;
- як продовжити розробляти софт якщо тестувальника немає в команді;
- що таке тестабіліті та як його покращити;
- SOLID принципи для автоматизаторів;
- просте пояснення балансування навантаження (з картинками);
- чому вам потрібні модулі, а не мікросервіси;
- історія створення мови програмування Visual Basic;
- як залишитися актуальним після сорока років роботи в IT;
- чому performance review не працюють та що можна застосувати замість них.
Тестування

- Software Testing Strategies: The Complete Guide. Якщо ви хотіли побачити усі варіанти тестових пірамід в одному місці (разом з поясненнями) — ця стаття для вас.
- Chaos Engineering with the Vacation Simulator. Цікавий підхід до проведення chaos testing. Підхід не технічний, а процесний. Але зі слів автора — він працює.
- The Economics, Value and Service of Testing. Величезна стаття від одного з моїх улюблених авторів у світі тестування. Цього разу він розмірковує, чи взагалі економічно вигідно проводити тестування та писати мануальні кейси. Та як можна говорити про тестування з позиції економіки та грошей.
- To Automate or Not to Automate? Deciding Which Tests to Automate for Maximum Efficiency. Цікавий підхід (разом з табличкою), щоб вирішити, чи потрібно вам автоматизувати ту чи іншу функціональність.
- Manual Testing Interview Questions. Для тих, хто зараз в пошуках роботи, пропоную велику підбірку запитань з тестування. Чим краще підготуєшся, тим буде легше на співбесіді!
- The Importance of Observability in Software Testing. Коротка стаття із роздумами про те, чому в тестуванні важлива observability.
- Reflections Of An Ex-Software Developer. Незвична стаття, в якій розробник, який став тестувальником, розвінчує міфи про те, що тестування то дуже просто і нетехнічно.
Як тестують в ...
- A Brief Overview of Testing at Okta. Невеличка стаття з описом підходів та процесних рішень з тестування в компанії Okta.
- Load Testing for 2022 Wrapped. Ще один короткий опис того, як Spotify підходить до тестування навантаження та які уроки вони з цього винесли.
- Six months without a tester. Інженер з компанії Maxilect розповідає страшне! Вони прибрали тестувальника з команди та ... працюють так вже пів року! І нічого не сталося. Просто девелопери також стали брати участь в тестуванні.
- Contract-Driven Development — a Real-World Adoption Journey. Практичний кейс контрактних тестів на прикладі Polarizer Technologies: як вони прийшли до такого виду тестування та як все ж таки вони застосували контракти.
Для лідів і тих, хто хоче ними стати

- How we improved our hiring process. Хороша стаття від Артема Григоренка про найм тестувальників та як зробити цей процес кращим.
- QA 101: how to manage product quality right from the start. Суто практична стаття про те, як організувати тестування у стартапі, коли ти один тестувальник у команді. А може, й у компанії.
- Стратегія налагодженя процесів в команді для QA інженера. Стаття від Петра Тарасенка про те, що таке процеси в команді та як їх налагодити.
- Deep dive into evolution of testing organizations. Огляд різних варіантів організації тестувальників за останні 10 років. Від окремих відділів до окремих інженерів на декілька команд.
- I’m no longer a Tester, I’m a Checker. Or am I? Стаття — продовження тези Майкла Болтона про те, що ми автоматизуємо не тести, а саме перевірки. А тести автоматизувати неможливо.
- Quality Coaching Colors. Завжди було цікаво, хто ж такі ті Quality Coach. Ця стаття допомогла зменшити «туман війни» на карті та зрозуміти, чим же такі спеціалісти займаються в компаніях.
- The Comprehensive Guide to Essential Soft Skills for Testers: Unlocking Success in Your Testing Career. Коли хочеш стати сеньйором чи лідом, то потрібно прокачувати свої soft-скіли. Але що воно таке? Ця стаття розповість про те, які існують взагалі ці м’які скіли.
Для SDET`ів

- Automated tests: Testability. Велика та дуже корисна стаття про те, що таке testability. З картинками та поясненнями. Must read.
- SDET: SOLID principle examples in Test Automation solutions. Костянтин як завжди радує якісними технічними статтями. Для тих, кого не взяли на роботу через те, що він не знав SOLID-принципи — ця стаття не тільки в черговий раз розповість про них, але й наведе приклади з автоматизації тестування.
- Make Engineers Love Playwright With These Software Design Patterns. В цій статті ви побачите різні приклади паттернів на Playwright та JS.
- Guide to AWS Serverless & Lambda Testing Best Practices: part 1, part 2, part 3. Я знаю про AWS Serverless та лямбди дуже й дуже мало. Цей цикл з трьох статей додасть знань та допоможе планувати тестування таких рішень.
- Cypress vs Playwright: Which is the Best Cross-Browser Testing Tool? Стаття для джуніорів, що вагаються, який же інструмент обрати для UI-автоматизації — Cypress або Playwright.
- The landscape of Android screenshot testing in 2023. Огляд інструментів для візуального тестування в Android.
- Two strategies to drive screenshot testing in Mobile projects. І у продовження тестування скріншотів — хороша стаття із наглядними малюнками.
- 5 Must-Know Cypress Testing Strategies for Software Engineers. Фішки cypress з прикладами. Виникає питання, чому зустрічається так мало статей про фішки Playwright? Чи то я не так шукаю?
- Exploring Selenium BiDi Functionality: A Guide with Java Examples. Крута стаття про те, що таке BiDi-протокол та як його можна застосувати у тестах.
Інструменти

- Finding Your Best Go Testing Framework. Якщо ви тільки вивчаєте мову програмування Go — буде корисним побачити, які там існують бібліотеки для тестування.
- Build Quality Assurance Dashboards: Metrics, Design, and Tools. Як ви візуалізуєте показники якості? У себе в голові чи, все ж таки, деінде? У цій статті знайдете приклади різних рішень, які допоможуть створювати хороші репорти. (Так, там є Grafana та Report Portal).
- Full Code Coverage For Free. Набір інструментів для заміру покриття тестів на cypress.
- Event-driven Kubernetes testing with Testkube and Tracetest. Чи можна тестувати Kubernetes? Виявляється, що так. І доволі успішно.
- Complete Beginner Guide: Automation Testing With Java and Cucumber. Для новачків — ще один приклад створення тестів з «огірками».
Розробка й технології
- A Tale of Paradigms. Що таке ООП? А які парадигми крім цього ви знаєте? Прочитайте статтю та дізнайтеся більше.
- Load Balancing. Мабуть, найкраща стаття з хорошими візуальними прикладами про те, що таке балансування навантаження.
- The history and legacy of Visual Basic. Захоплюючий long-read про те, як створювалася мова програмування Visual Basic.
- MVP: The Most Valuable Programmer. MVP це не те, що ви подумали. Це не продукт, це ...
- The Last Algorithms Course You’ll Need. Для тих, хто ще не вивчив базові алгоритми — є дуже хороший курс на Typescript.
- Postgres: The Graph Database You Didn’t Know You Had. Виявляється, Postgres таки графова база даних ...
- Writing Tips for Improving Your Pull Requests. Стаття про те, як зробити життя колег кращим — та описувати свої пул-реквести зрозуміліше для усіх.
- You Want Modules, Not Microservices. Виявляється мікросервіси — то не універсальна відповідь на усі завдання. Багато де мікросервіси не потрібні — потрібні лише модулі.
- Remaining Relevant Over Four Decades. Поради від розробника, який нещодавно вийшов на пенсію після 40 років роботи.
- Python Is Not Java. Стаття — нагадування про те, що
(Україна — не Росія)Python — це не Java, тому потрібно писати так, як було задумано, а не так, як звикли. - 25 signs of an experienced Python developer. Показники того, що ви дещо знаєте в Python.
- From Unstructured Logs to Observability. Шлях від повністю нечитабельних логів до зрозумілих логів, якими приємно користуватися.
Менеджмент та кар’єра

- Junior to senior: An action plan for engineering career success. Якщо ви тільки починаєте свою кар’єру — ці поради допоможуть свідоміше підходити до задач та свого розвитку.
- Becoming a Better Writer as a Software Engineer. Стаття про те, чому навички написання тексту важливі навіть для пересічного інженера.
- The Alternative to Performance Reviews for Software Engineers. Дуже хороша стаття про те, що мотивує робітників, які підходи до оцінки перфомансу є та як знайти найкращий спосіб оцінки, який не буде впливати на мотивацію.
- Architects, Anti-Patterns, And Organizational Fuckery. Роздуми про те, чому в західних продуктових компаніях доволі рідко є окремо виділені архітектори, які тільки малюють діаграми.
- Advices on writing blog posts. Корисні поради для тих, хто не знає, про що писати у своєму блозі.
Книжки
- Developer Testing: Building Quality into Software (Alexander Tarlinder). Цю книжку я читаю саме зараз. Але поки що можу тільки сказати, що вона дійсно хороша. Окремий огляд на неї буде згодом.
- A Developer’s Guide to Blogging (Ankur Tyagi). Не варто витрачати свій час на читання цієї книги. Набір загальновідомих істин, плюс, купа скріншотів з Twitter.
- Beyond the Basic Stuff with Python: Best Practices for Writing Clean Code (Al Sweigart). Хороша книга для тих, хто володіє базовим синтаксисом мови Python та хоче подивитись щось більше.
- Python Tricks: A Buffet of Awesome Python Features (Dan Bader). Якщо хочется використовувати Python на повну — потрібно знайти його можливості. Ця книга допоможе в цьому.
- Serious Python: Black-Belt Advice on Deployment, Scalability, Testing, and More (Julien Danjou). Книжка більше про супутні інструменти для розробки на Python. Але мені сподобалась.
- Pythonic Programming: Tips for Becoming an Idiomatic Python Programmer (Dmitry Zinoviev). Після попередніх книжок, корисного вже було мало. Та й води вистачає.
Більше цікавого про інженерію в тестуванні, блокчейн та розподілені системи читайте в моєму каналі.
2 коментарі
Додати коментар Підписатись на коментаріВідписатись від коментарів