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

一起來跑 TDD, 直到完成 User Story 為止

一起來跑 TDD, 直到完成 User Story 為止

Speaker: Brandon Lu
Event: LINE TECH FRESH 畢業分享會

LINE Developers Taiwan

June 19, 2024
Tweet

More Decks by LINE Developers Taiwan

Other Decks in Technology

Transcript

  1. Brandon Lu LINE TECH FRESH Software Engineer Intern Software Engineer

    Architecture Research Intern Software Engineer Intern Backend Engineer Intern @LINE @CeranaStudio @Sunbird @Advantech @iStaging SBS + GLC
  2. 01 02 03 04 ATDD 如何補⾜ TDD? ATDD 如何溝通需求? ATDD

    如何檢驗需求有被達成? What is TDD? 05 總結 CONTENT
  3. Write a failing test What is TDD? Pass the test

    Refactor Test Driven Development
  4. Write a failing test Pass the test Refactor Think first

    More testable code Code Quality UP! Confident to deliver/refactor Test Driven Development What is TDD?
  5. Meet ATDD What to test? What are the test cases?

    A C 1 A C 2 A C * N Spec By Example User Story
  6. Meet ATDD What to test? What are the test cases?

    User Story AC 1 AC 2 AC *N Spec By Example Acceptance Criteria
  7. Meet ATDD What to test? What are the test cases?

    User Story AC 1 AC 2 AC *N Spec By Example TDD TDD TDD
  8. Meet ATDD User Story Acceptance Criteria Spec By Example What

    to test? What are the test cases? Pain Points of TDD Simplified ATDD Process
  9. SECTION 03 User Story + Spec By Example ATDD 如何溝通需求?

    User Story Acceptance Criteria Spec By Example
  10. User Story User Story Acceptance Criteria Spec By Example As

    a __, I want to __, so that __.
  11. User Story User Story Acceptance Criteria Spec By Example 房屋篩選

    As a __, I want to __, so that __.
  12. User Story As a __, I want to __, so

    that __. As a ⼀名租屋族 User Story Acceptance Criteria Spec By Example I want to 篩選符合理想條件的房⼦ so that 快速找到符合我預算和需求的租房選擇,減少尋找房源的時間和精⼒
  13. Spec By Example User Story Acceptance Criteria Spec By Example

    I want to 篩選符合理想條件的房⼦ 什麼是理想條件? ⽤例⼦進⾏溝通
  14. Spec By Example User Story Acceptance Criteria Spec By Example

    I want to 篩選符合理想條件的房⼦ 什麼是理想條件? 租⾦、地區、交通 ⽤例⼦進⾏溝通
  15. Spec By Example User Story Acceptance Criteria Spec By Example

    租⾦、地區、交通 租⾦的範圍是多少?可以舉例嗎? ⽤例⼦進⾏溝通
  16. Spec By Example User Story Acceptance Criteria Spec By Example

    租⾦的範圍是多少?可以舉例嗎? ⽤例⼦進⾏溝通 租⾦、地區、交通 有效輸入:$0 ~ $999,999,999 無效輸入:< $0, > $999,999,999 邊緣輸入:$0, $999,999,999
  17. I want to 篩選 符合理想條件的房⼦ 租⾦條件 … … 驗收標準 Acceptance

    Criteria User Story Acceptance Criteria Spec By Example 有效輸入:$0 ~ $999,999,999 無效輸入:< $0, > $999,999,999 邊緣輸入:$0, $999,999,999 User Story 實例化需求
  18. I want to 篩選 符合理想條件的房⼦ 租⾦條件 … … 驗收標準 Acceptance

    Criteria User Story Acceptance Criteria Spec By Example 有效輸入:$0 ~ $999,999,999 無效輸入:< $0, > $999,999,999 邊緣輸入:$0, $999,999,999 AC 001: 系統應根據使⽤者指定的預算範圍顯⽰房源列表 User Story 實例化需求
  19. 租⾦條件 驗收標準 Acceptance Criteria User Story Acceptance Criteria Spec By

    Example 有效輸入:$0 ~ $999,999,999 Given 系統應根據使⽤者指定的預算範圍顯⽰房源列表
  20. 租⾦條件 驗收標準 Acceptance Criteria User Story Acceptance Criteria Spec By

    Example 有效輸入:$0 ~ $999,999,999 Given When 使⽤者查詢資料 系統應根據使⽤者指定的預算範圍顯⽰房源列表
  21. 租⾦條件 驗收標準 Acceptance Criteria User Story Acceptance Criteria Spec By

    Example 有效輸入:$0 ~ $999,999,999 Given When 使⽤者查詢資料 Then 預期得到房屋列表 系統應根據使⽤者指定的預算範圍顯⽰房源列表
  22. 租⾦條件 驗收標準 Acceptance Criteria User Story Acceptance Criteria Spec By

    Example 有效輸入:$0 ~ $999,999,999 無效輸入:< $0, > $999,999,999 邊緣輸入:$0, $999,999,999 Given When 使⽤者查詢資料 Then 預期得到房屋列表 系統應根據使⽤者指定的預算範圍顯⽰房源列表
  23. 租⾦條件 驗收標準 Acceptance Criteria User Story Acceptance Criteria Spec By

    Example 有效輸入:$0 ~ $999,999,999 無效輸入:< $0, > $999,999,999 邊緣輸入:$0, $999,999,999 Given When 使⽤者查詢資料 Then 錯誤處理 系統應根據使⽤者指定的預算範圍顯⽰房源列表
  24. 租⾦條件 驗收標準 Acceptance Criteria User Story Acceptance Criteria Spec By

    Example 有效輸入:$0 ~ $999,999,999 無效輸入:< $0, > $999,999,999 邊緣輸入:$0, $999,999,999 Given When 使⽤者查詢資料 Then [房屋列表] or [錯誤處理] 系統應根據使⽤者指定的預算範圍顯⽰房源列表
  25. Meet ATDD User Story Acceptance Criteria Spec By Example Pain

    Points of TDD Simplified ATDD Process What to test? What are the test cases?
  26. Meet ATDD Spec By Example User Story As a __,

    I want to __, so that __.
  27. Meet ATDD A C 1 A C 2 A C

    * N Spec By Example User Story ⽤例⼦進⾏溝通
  28. Meet ATDD User Story AC 1 AC 2 AC *N

    Spec By Example 訂立驗收標準
  29. Meet ATDD User Story AC 1 AC 2 AC *N

    Spec By Example TDD TDD TDD