$30 off During Our Annual Pro Sale. View Details »
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
1
2.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
NTUAI企業參訪
line_developers_tw
PRO
0
1.2k
Data TECH FRESH企業參訪- Amber
line_developers_tw
PRO
0
2.1k
Data Team 實習分享
line_developers_tw
PRO
0
3.2k
Backend Intern之旅
line_developers_tw
PRO
0
6k
清大企業參訪- Ben
line_developers_tw
PRO
0
1.4k
LLM 商品規格萃取大冒險- Vila
line_developers_tw
PRO
0
1.3k
Playwright/MCP/AI -Winter
line_developers_tw
PRO
0
1.3k
LINE EC Product Catalog Development- Rei
line_developers_tw
PRO
0
1.3k
LINE 與 AI 機器人技術應用現況
line_developers_tw
PRO
0
19
Other Decks in Technology
See All in Technology
シニアソフトウェアエンジニアになるためには
kworkdev
PRO
3
190
Oracle Cloud Infrastructure IaaS 新機能アップデート 2025/09 - 2025/11
oracle4engineer
PRO
0
170
Amazon Bedrock Knowledge Bases × メタデータ活用で実現する検証可能な RAG 設計
tomoaki25
4
400
生成AI時代におけるグローバル戦略思考
taka_aki
0
200
Reinforcement Fine-tuning 基礎〜実践まで
ch6noota
0
190
Lessons from Migrating to OpenSearch: Shard Design, Log Ingestion, and UI Decisions
sansantech
PRO
1
150
2025年 開発生産「可能」性向上報告 サイロ解消からチームが能動性を獲得するまで/ 20251216 Naoki Takahashi
shift_evolve
PRO
2
200
コンテキスト情報を活用し個社最適化されたAI Agentを実現する4つのポイント
kworkdev
PRO
1
1.6k
Sansanが実践する Platform EngineeringとSREの協創
sansantech
PRO
2
940
会社紹介資料 / Sansan Company Profile
sansan33
PRO
11
390k
品質のための共通認識
kakehashi
PRO
4
370
大企業でもできる!ボトムアップで拡大させるプラットフォームの作り方
findy_eventslides
1
840
Featured
See All Featured
BBQ
matthewcrist
89
9.9k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
How to make the Groovebox
asonas
2
1.8k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
47
33k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.1k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
26
Are puppies a ranking factor?
jonoalderson
0
2.3k
[SF Ruby Conf 2025] Rails X
palkan
0
540
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.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