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
1k
一起來跑 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
掌握 Feature Toggle 與 OpenFeature 規範
line_developers_tw
PRO
0
69
用 AI 和 LINE Bot 簡化生活:讓圖片告訴你何時該忙!-- LINE 工作坊
line_developers_tw
PRO
0
360
Scaling The E-Commerce Recommendation System
line_developers_tw
PRO
0
17
Enhanced EC Recommendations: Trustworthy Validation with Large Language Models for Two-Tower Model
line_developers_tw
PRO
0
8
揭秘LLMOps: 讓LLM服務像火箭 般穩定高效的祕密!
line_developers_tw
PRO
0
45
ML Life Cycle for LINE SHOPPING Recommender
line_developers_tw
PRO
0
12
Review AI from LINE EC NLP
line_developers_tw
PRO
0
7
LINE購物 App x ATDD: 利用 ATDD 改善開發流程
line_developers_tw
PRO
0
30
Grafana Alloy Best Practice
line_developers_tw
PRO
0
3.7k
Other Decks in Technology
See All in Technology
入社半年(合計1年)でGoogle Cloud 認定を全冠した秘訣🤫
risatube
1
280
生成AIの活用パターンと継続的評価
asei
3
270
Amplify Gen 2ではじめる 生成AIアプリ開発入門
tsukuboshi
0
400
ラブグラフ紹介資料 〜プロダクト解体新書〜 / Lovegraph Product Deck
lovegraph
0
14k
マルチテナントのサービスインフラに大きなテナントを受け入れるまで
7474
0
790
寒冷地稲作の歴史にみるコミュニティ
miu_crescent
2
140
Demystifying Vite Internals
nozomuikuta
3
760
Road to Single Activity Uncovered
yurihondo
0
110
とある事業会社にとっての Kaggler の魅力
hakubishin3
7
1.6k
RAG: from dumb implementation to serious results
glaforge
0
670
Japan AWS Jr. Championsがお届けする、アウトプットのすすめ
hamijay_cloud
0
210
LLMOps : ΔMLOps
shuntaito
13
2.1k
Featured
See All Featured
Code Reviewing Like a Champion
maltzj
519
39k
BBQ
matthewcrist
85
9.2k
Adopting Sorbet at Scale
ufuk
73
9k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
41
9.2k
Fontdeck: Realign not Redesign
paulrobertlloyd
81
5.2k
Building Better People: How to give real-time feedback that sticks.
wjessup
363
19k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
6.9k
Six Lessons from altMBA
skipperchong
26
3.4k
A Philosophy of Restraint
colly
203
16k
Testing 201, or: Great Expectations
jmmastey
38
7k
Designing on Purpose - Digital PM Summit 2013
jponch
114
6.9k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.5k
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