Upgrade to Pro — share decks privately, control downloads, hide ads and more …

API 테스트 주도 개발의 시작

kakao
PRO
December 08, 2022

API 테스트 주도 개발의 시작

#Test #RestAPI #TDD #CI/CD #API테스트 #테스트 #TestAutomation

카카오에서는 애플리케이션 품질 향상을 위하여, API 테스트 자동화 및 성능 테스트를 보다 쉽게 지원하는 TestLAB을 개발하고 있습니다. API Test 자동화에 대해 설명하고, TestLAB이 어떻게 API Test 자동화를 지원하는지 소개합니다. 그리고 API Test 자동화를 넘어서 API 테스트 주도 개발을 지원하는 플랫폼으로 가는 로드맵을 공유합니다.

발표자 : ronaldo.c
카카오 테스트플랫폼셀에서 개발을 하고 있는 호날두입니다.

kakao
PRO

December 08, 2022
Tweet

More Decks by kakao

Other Decks in Programming

Transcript

  1. Copyright 2022. Kakao Corp. All rights reserved. Redistribution or public display is not permitted without written permission from Kakao.
    API పझ౟ ઱ب ѐߊ੄ द੘
    ҕ૓࢑ Ronaldo.c
    ஠஠য়
    if(kakao)2022

    View Slide

  2. API
    ೐۽Ӓ۔ ೐۽Ӓ۔
    API

    View Slide

  3. RESTful API
    client server server
    REST API REST API

    View Slide

  4. Presentation Layer


    Business Layer


    Database Layer


    API Testing

    View Slide

  5. API Test


    न܉, ӝמ, ࠁউ, ࢿמ
    UI Test


    Look And Feel
    Presentation Layer


    Business Layer


    Database Layer


    API Testing

    View Slide

  6. API Testing


    न܉, ӝמ, ࠁউ, ࢿמ
    -పझ౟ ೡ ࣻ ੓ਸ ٸ ө૑ ӝ׮ܿ

    -UI ߡӒੋ૑? API ߡӒੋ૑?
    UI Testing


    Look And Feel
    Presentation Layer


    Business Layer


    Database Layer


    API Testing

    View Slide

  7. API Testing
    API TESTING UNIT TESTING
    • Broad functional issues • Only basic functions
    • Black Box Testing • White Box Testing
    • After Build • Before Build
    • Not Involved Source Code • Involved Source Code

    View Slide

  8. API Testing
    Unit Test
    API Test
    UI Test

    View Slide

  9. API Test Automation

    View Slide

  10. API Test Automation
    API TEST
    BUILD DEPLOYMENT
    CI/CD

    View Slide

  11. In Kakao T_stLAB

    View Slide

  12. T_stLAB
    - Restful API Testing Platform
    - Test Engine ੗୓ ѐߊ
    - ӝמ/ࢿמ పझ౟ ૑ਗ
    - Assertion / Script ૑ਗ
    - Triggering / Scheduling
    - Postman ݃੉Ӓۨ੉࣌ ૑ਗ

    View Slide

  13. T_ st Suite

    View Slide

  14. T_ st Suite
    - दաܻয়


    - పझ౟ ജ҃


    - ӝמ/ࢿמ పझ౟


    - CI/CD


    - झா઴݂

    View Slide

  15. T _ st Suite

    View Slide

  16. T _ st Suite

    View Slide

  17. T _ st Suite

    View Slide

  18. T _ st Suite

    View Slide

  19. T _ st Suite

    View Slide

  20. T _ st Suite

    View Slide

  21. T _ st Suite

    View Slide

  22. ӝמ పझ౟
    T _ st Suite

    View Slide

  23. ࢿמ పझ౟
    T _ st Suite

    View Slide

  24. {{Assignment}}

    View Slide

  25. о࢚੄ ࢶޛೞӝ API
    Create
    Assignment

    View Slide

  26. Assignment

    View Slide

  27. {{sample-rest-api-url}}
    Assignment

    View Slide

  28. Assignment

    View Slide

  29. Post-Script
    Assignment

    View Slide

  30. {{
    fi
    rstId}}
    Post-Script
    Assignment

    View Slide

  31. Assignment

    View Slide

  32. {{ }}
    {{ }}
    Assignment

    View Slide

  33. Automation

    View Slide

  34. Automation
    - CI/CD োز
    - Token ӝ߈
    - cURL or Wget
    - Passed or Failed

    View Slide

  35. Automation

    View Slide

  36. Automation

    View Slide

  37. API Test Driven

    View Slide

  38. API Test Driven
    ӝദ ҳഅ ࠽٘ పझ౟ ߓನ ਍৔

    View Slide

  39. API Test Driven
    ӝദ ҳഅ ࠽٘ పझ౟ ߓನ ਍৔
    API TEST
    CLIENT SERVER

    View Slide

  40. API Test Driven
    ӝദ ҳഅ ࠽٘ పझ౟ ߓನ ਍৔
    MOCK SERVER
    DOCUMENTS API TEST

    View Slide

  41. API Test Driven
    ӝദ ҳഅ ࠽٘ పझ౟ ߓನ ਍৔
    API TEST
    PERFORMANCE
    FUNCTIONAL
    SECURITY

    View Slide

  42. API Test Driven
    ӝദ ҳഅ ࠽٘ పझ౟ ߓನ ਍৔
    MONITORING
    SCHEDULE API TEST

    View Slide

  43. Api
    Test
    Driven
    Write
    API
    Test
    Test
    Pass
    CI/CD

    View Slide

  44. Road Map
    - TestSuite ࢤࢿ ੗زച
    - ӝמ/ࢿמ పझ౟৻ ׮নೠ పझ౟ ఋੑ ૑ਗ
    - Test ੗زച/਍৔ ъച
    - OpenApi Spec ١ API ޙࢲച ૑ਗ
    - Mock Server ૑ਗ
    - Jira, Github ١ ഈস ో ૑ਗ

    View Slide