Що запитати в архітектора, якщо ви тест інженер?
#testing #architecture
Як тест - інженери, ми працюємо й спілкуємось із різними людьми: розробниками, менеджерами, дизайнерами, девопсами. Час від часу ми також працюємо із тими, хто проектує ці системи. Це можуть бути як окремі архітектори, так і самі розробники.
🤯 Отже, вас запросили на планування нової системи чи окремої функціональності. Що робити???
1️⃣ По-перше - подивіться на архітектурну діаграму компонентів. Зрозумійте як працює система. Не бійтеся задавати питання про частини, які ви не розумієте.
2️⃣ По-друге - ви можете задати наступні питання (як приклад):
👉 Яка бізнес-логіка міститься на кожному рівні архітектури? Які сценарії є найкритичнішими та чому?
👉 Де розташовані синхронні й асинхронні функції в цій архітектурі?
👉 Які залежності є в сервісу та що ми будемо робити у випадку, якщо залежності недоступні?
👉 Які частини попередньо скомпільовані, а які компілюються під час виконання?
👉 Яке API доступне користувачеві? Яка частина з нього є приватною?
👉 Чи будуть додаватись балансування навантаження на вході в систему чи сервіс?
👉 Чи існують випадки, коли користувач буде взаємодіяти із системою без UI?
👉 Чи розподілене сховище та який підхід обраний для реплікації даних?
👉 Чи існує можливість резервного копіювання та відновлення стану системи (чи окремого сервісу)?
👉 Чи додаємо ми достатньо логування для розуміння стану системи в будь-який момент часу?
👉 Які частини сервісу чи системи буде найважче протестувати в реалістичних умовах? Як ми будемо це тестувати?
Загальний підхід - обираєте компонент та обговорюєте його роботу в умовах повної або часткової недоступності.
Головні два питання, які треба задати:
💡 Як це може впасти й вплинути на роботу системи?
💡 Як ми це будемо тестувати?
Під ми, я маю на увазі всю команду, а не тільки окремих тестувальників у кінці процесу розробки.
Чим раніше ви задасте ці питання й спонукаєте команду до вирішення цих проблем - тим краще для продукту. А значить - для користувача.
Post #795
1.57K
- ❤ 25
- 🔥 7