Питання на співбесіді з тестування API (Middle) з відповідями

75 запитань для співбесіди з теми Тестування API (Middle) - з правильними відповідями, поясненнями й посиланнями на документацію.

Пройти цей тест
  1. 1.Навіщо з часом переносити API-перевірки з Postman у тести в коді?
  2. 2.Що дає SuperTest у проєкті на Node.js?
  3. 3.Що таке REST Assured?
  4. 4.Як перевірити тіло відповіді за JSON Schema в тестах на JavaScript?
  5. 5.Що ловить additionalProperties: false у схемі відповіді?
  6. 6.Що таке контрактне тестування, кероване споживачем (consumer-driven)?
  7. 7.Що можуть зловити контрактні тести, чого не ловлять юніт-тести кожної сторони?
  8. 8.Коли контрактна перевірка на основі OpenAPI - добра альтернатива Pact?
  9. 9.Що надає WireMock?
  10. 10.Навіщо імітувати повільну залежність в API-тесті?
  11. 11.Чим відрізняються 502, 503 і 504?
  12. 12.Ендпоінт повертає 202 Accepted. Як має продовжити тест?
  13. 13.Що таке ключ ідемпотентності для POST-запиту?
  14. 14.Як протестувати, що API безпечно обробляє подвійне клацання на «Оплатити»?
  15. 15.Від чого захищає If-Match з ETag?
  16. 16.Що має повернути запит з If-None-Match і збіжним ETag?
  17. 17.Навіщо перевіряти заголовки Cache-Control у відповідях API?
  18. 18.Як протестувати ліміт 100 запитів на хвилину?
  19. 19.Яка відома проблема offset-пагінації на кшталт ?page=3?
  20. 20.Що тестувати в cursor-пагінації?
  21. 21.Що таке mass assignment в API?
  22. 22.Що таке зламана авторизація на рівні функцій?
  23. 23.Як систематично тестувати авторизацію на рівні об'єктів?
  24. 24.Який тестовий ввід перевіряє SQL-ін'єкцію в параметрі пошуку?
  25. 25.Як має виглядати відповідь із помилкою для некоректного вводу?
  26. 26.Чому повідомлення про помилку бази даних у відповіді API - знахідка безпеки?
  27. 27.Чим допомагають correlation чи request ID у тестуванні API?
  28. 28.Хто отримує токен у потоці OAuth 2.0 client credentials?
  29. 29.Що тестувати в refresh-токенах?
  30. 30.Які перевірки JWT варто спробувати тестувальнику API?
  31. 31.Чому JWT може декодувати будь-хто, у кого він є?
  32. 32.Як тестувати завантаження файлів через multipart/form-data?
  33. 33.Що означає 413 Content Too Large?
  34. 34.Яка зміна JSON-відповіді зазвичай зворотно сумісна?
  35. 35.Як тестувальнику перевірити застарівання (deprecation) API?
  36. 36.Що таке data-driven тестування в API-тестах?
  37. 37.Чому грошові суми часто передають рядками чи цілими числами в центах?
  38. 38.Що тест має перевіряти щодо часових поясів в API?
  39. 39.Як зробити API-тести незалежними одне від одного?
  40. 40.Яка поширена причина нестабільних API-тестів?
  41. 41.Що має перевіряти тест доставки вебхуків?
  42. 42.Навіщо перевіряти підпис вебхука?
  43. 43.Для чого обмеження глибини чи складності запитів GraphQL?
  44. 44.Чому introspection у GraphQL можуть вимикати в продакшені?
  45. 45.Що таке проблема N+1 в API?
  46. 46.Що особливого в тестуванні gRPC API?
  47. 47.Як API-тестам працювати зі значеннями під конкретне середовище?
  48. 48.Навіщо додавати в API-тести перевірки заголовків безпеки?
  49. 49.Як тестувати налаштування CORS в API?
  50. 50.Що робить pm.response.to.have.jsonSchema(schema) у Postman?
  51. 51.Чим корисні динамічні змінні Postman на кшталт {{$guid}}?
  52. 52.Як протестувати, що API перевіряє значення enum?
  53. 53.Навіщо перевіряти, що відповіді з помилками мають правильний Content-Type?
  54. 54.Яка користь від запуску API-тестів на preview-середовищі кожного pull request?
  55. 55.Як тестувати eventual consistency між двома сервісами після виклику API?
  56. 56.Що тестувати у фільтрах ендпоінта пошуку?
  57. 57.Що означає стиснення на кшталт Content-Encoding: gzip для API-тестів?
  58. 58.Навіщо тестувати API старою версією клієнта після релізу?
  59. 59.Яка роль моків на кшталт MSW у фронтенд-тестах помилок API?
  60. 60.Що перевіряти, коли API повертає списки елементів?
  61. 61.Як тесту працювати зі значеннями, які генерує сервер, як-от ID і мітки часу?
  62. 62.Що робить фазинг API?
  63. 63.Що робить Schemathesis?
  64. 64.Як тестувати, що видалення батьківського ресурсу правильно обробляє дочірні?
  65. 65.Навіщо в звітах упалих API-тестів логувати повні запити й відповіді?
  66. 66.Яка головна цінність запуску smoke-колекції після кожного деплою?
  67. 67.Як тестувати поведінку API, коли залежність нижче повертає некоректний JSON?
  68. 68.Навіщо тестувати таймаути на боці клієнта інтеграції з API?
  69. 69.Що тестувати в повторах (retries) клієнта API?
  70. 70.Як тестувати поведінку API при відмові залежності, не ламаючи staging?
  71. 71.Чого вимагає від сервера 405 Method Not Allowed?
  72. 72.Що означає 406 Not Acceptable?
  73. 73.Навіщо перевіряти, що назви полів однакові, наприклад скрізь camelCase?
  74. 74.Як протестувати, що ендпоінт списку не показує м'яко видалені елементи?
  75. 75.Що Retry-After у відповіді 503 повідомляє клієнтам?