Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
一起來跑 TDD,直到完成 User Story 為止
Search
LINE Developers Taiwan
PRO
June 19, 2024
Technology
0
1.3k
一起來跑 TDD, 直到完成 User Story 為止
Speaker: Brandon Lu
Event: LINE TECH FRESH 畢業分享會
LINE Developers Taiwan
PRO
June 19, 2024
Tweet
Share
More Decks by LINE Developers Taiwan
See All by LINE Developers Taiwan
在 GCP 運用 Parse 全家餐管理那堆 AI 應用的資料
line_developers_tw
PRO
0
12
40歲的我會給20歲的自己,關於軟體開發的7個建議
line_developers_tw
PRO
0
4.2k
從零到一:轉碼仔的實習攻略
line_developers_tw
PRO
0
10
如何在團隊發揮數據影響力: 以電商資料科學家為例
line_developers_tw
PRO
1
32
做Data超讚的 誰懂?
line_developers_tw
PRO
0
17
iOS Live Activity: Opportunities & Challenges
line_developers_tw
PRO
1
96
掌握 Feature Toggle 與 OpenFeature 規範
line_developers_tw
PRO
0
190
用 AI 和 LINE Bot 簡化生活:讓圖片告訴你何時該忙!-- LINE 工作坊
line_developers_tw
PRO
0
700
Scaling The E-Commerce Recommendation System
line_developers_tw
PRO
0
58
Other Decks in Technology
See All in Technology
組織に自動テストを書く文化を根付かせる戦略(2024冬版) / Building Automated Test Culture 2024 Winter Edition
twada
PRO
13
3.6k
複雑性の高いオブジェクト編集に向き合う: プラガブルなReactフォーム設計
righttouch
PRO
0
110
Oracle Cloudの生成AIサービスって実際どこまで使えるの? エンジニア目線で試してみた
minorun365
PRO
4
280
レンジャーシステムズ | 会社紹介(採用ピッチ)
rssytems
0
150
社外コミュニティで学び社内に活かす共に学ぶプロジェクトの実践/backlogworld2024
nishiuma
0
260
.NET 9 のパフォーマンス改善
nenonaninu
0
770
プロダクト開発を加速させるためのQA文化の築き方 / How to build QA culture to accelerate product development
mii3king
1
260
kargoの魅力について伝える
magisystem0408
0
200
WACATE2024冬セッション資料(ユーザビリティ)
scarletplover
0
190
Postman と API セキュリティ / Postman and API Security
yokawasa
0
200
GitHub Copilot のテクニック集/GitHub Copilot Techniques
rayuron
26
11k
UI State設計とテスト方針
rmakiyama
2
440
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1366
200k
Designing on Purpose - Digital PM Summit 2013
jponch
116
7k
Music & Morning Musume
bryan
46
6.2k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
111
49k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
5
440
Unsuck your backbone
ammeep
669
57k
Scaling GitHub
holman
458
140k
Faster Mobile Websites
deanohume
305
30k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
26
1.9k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
29
2k
Transcript
⼀起來跑 TDD, 直到完成 User Story 為⽌
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
01 02 03 04 ATDD 如何補⾜ TDD? ATDD 如何溝通需求? ATDD
如何檢驗需求有被達成? What is TDD? 05 總結 CONTENT
SECTION 01 What is TDD?
Write a failing test What is TDD? Test Driven Development
Write a failing test What is TDD? Pass the test
Test Driven Development
Write a failing test What is TDD? Pass the test
Refactor Test Driven Development
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?
Why don’t you run TDD?
Why don’t you run TDD? Self-discipline
Why don’t you run TDD? Self-discipline What to test? What
are the test cases?
SECTION 02 來看看 ATDD 如何補⾜ TDD? Meet ATDD What to
test? What are the test cases?
Meet ATDD What to test? What are the test cases?
Spec By Example User Story
Meet ATDD What to test? What are the test cases?
A C 1 A C 2 A C * N Spec By Example User Story
Meet ATDD What to test? What are the test cases?
User Story AC 1 AC 2 AC *N Spec By Example Acceptance Criteria
Meet ATDD What to test? What are the test cases?
User Story AC 1 AC 2 AC *N Spec By Example TDD TDD TDD
Meet ATDD User Story Acceptance Criteria Spec By Example What
to test? What are the test cases? Pain Points of TDD Simplified ATDD Process
SECTION 03 User Story + Spec By Example ATDD 如何溝通需求?
User Story Acceptance Criteria Spec By Example
User Story User Story Acceptance Criteria Spec By Example
User Story User Story Acceptance Criteria Spec By Example As
a __, I want to __, so that __.
User Story User Story Acceptance Criteria Spec By Example 房屋篩選
As a __, I want to __, so that __.
User Story As a __, I want to __, so
that __. As a ⼀名租屋族 User Story Acceptance Criteria Spec By Example I want to 篩選符合理想條件的房⼦ so that 快速找到符合我預算和需求的租房選擇,減少尋找房源的時間和精⼒
Spec By Example User Story Acceptance Criteria Spec By Example
I want to 篩選符合理想條件的房⼦ 什麼是理想條件? ⽤例⼦進⾏溝通
Spec By Example User Story Acceptance Criteria Spec By Example
I want to 篩選符合理想條件的房⼦ 什麼是理想條件? 租⾦、地區、交通 ⽤例⼦進⾏溝通
Spec By Example User Story Acceptance Criteria Spec By Example
租⾦、地區、交通 租⾦的範圍是多少?可以舉例嗎? ⽤例⼦進⾏溝通
Spec By Example User Story Acceptance Criteria Spec By Example
租⾦的範圍是多少?可以舉例嗎? ⽤例⼦進⾏溝通 租⾦、地區、交通 有效輸入:$0 ~ $999,999,999 無效輸入:< $0, > $999,999,999 邊緣輸入:$0, $999,999,999
SECTION 04 驗收標準 Acceptance Criteria ATDD 如何檢驗需求有被達成? User Story Acceptance
Criteria Spec By Example
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 實例化需求
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 實例化需求
租⾦條件 驗收標準 Acceptance Criteria User Story Acceptance Criteria Spec By
Example 有效輸入:$0 ~ $999,999,999 Given 系統應根據使⽤者指定的預算範圍顯⽰房源列表
租⾦條件 驗收標準 Acceptance Criteria User Story Acceptance Criteria Spec By
Example 有效輸入:$0 ~ $999,999,999 Given When 使⽤者查詢資料 系統應根據使⽤者指定的預算範圍顯⽰房源列表
租⾦條件 驗收標準 Acceptance Criteria User Story Acceptance Criteria Spec By
Example 有效輸入:$0 ~ $999,999,999 Given When 使⽤者查詢資料 Then 預期得到房屋列表 系統應根據使⽤者指定的預算範圍顯⽰房源列表
租⾦條件 驗收標準 Acceptance Criteria User Story Acceptance Criteria Spec By
Example 有效輸入:$0 ~ $999,999,999 無效輸入:< $0, > $999,999,999 邊緣輸入:$0, $999,999,999 Given When 使⽤者查詢資料 Then 預期得到房屋列表 系統應根據使⽤者指定的預算範圍顯⽰房源列表
租⾦條件 驗收標準 Acceptance Criteria User Story Acceptance Criteria Spec By
Example 有效輸入:$0 ~ $999,999,999 無效輸入:< $0, > $999,999,999 邊緣輸入:$0, $999,999,999 Given When 使⽤者查詢資料 Then 錯誤處理 系統應根據使⽤者指定的預算範圍顯⽰房源列表
租⾦條件 驗收標準 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 [錯誤處理] 系統應根據使⽤者指定的預算範圍顯⽰房源列表
SECTION 05 來帶點東⻄回家吧 Summary User Story Acceptance Criteria Spec By
Example
Meet ATDD User Story Acceptance Criteria Spec By Example Pain
Points of TDD Simplified ATDD Process What to test? What are the test cases?
Meet ATDD Spec By Example User Story As a __,
I want to __, so that __.
Meet ATDD A C 1 A C 2 A C
* N Spec By Example User Story ⽤例⼦進⾏溝通
Meet ATDD User Story AC 1 AC 2 AC *N
Spec By Example 訂立驗收標準
Meet ATDD User Story AC 1 AC 2 AC *N
Spec By Example TDD TDD TDD
None
None