狠狠撸

狠狠撸Share a Scribd company logo
BDD in Action
我的叠顿顿实践
我的叠顿顿实践
1. 叠顿顿介绍
2. 我的叠顿顿实践
3. Q&A
叠顿顿介绍
BDD TDD
Behavior-driven development
決定好测试案例再開發
從使用者角度
描述系統應有的行為
Test-driven development
從物件角度
描述物件應有的行為
Integration test Unit test
BDD is ...
一種開發方式 ,用大家都能理解的方式討論使用案例 , 減少彼此之間的代溝 ;
我的叠顿顿实践
that’s talk a story ...
過了一段時間 ...
目標 事主 手段
開發產品的時候,正確的方向,比速度更重要
透過一些工具來協助描述我們要解決的問題 : mind map ,impact
mapping…
有效地找出要做的事大概有哪些
example :
why : 增加營業額
who : 客戶
how: 增加消費行為
what : 收到促銷折扣資訊
让我们再把故事说清楚点
我的叠顿顿实践
IT部門
產品
研發部門
業務部門
我的叠顿顿实践
看到產品全貌 (Big Picture)
User Story Mapping is an approach to Organizing and Prioritizing user stories.
雖然產品的全貌會隨著時間而變動 ,但這是規劃如何執行開發的的起始點
故事怎样算完成
定義使用場景來滿足這個故事 , 一個故事可以用很多場景來描述 ,
每個場景都屬於這個故事驗收的範圍 ,也就是我們所需要的驗收規範
测试导向开发
確認好待開發需求 (使用者故事-userstory) - Definition of Ready
定義好產品規格 (使用場景-scenario) - Definition of Done
依照規格開發 - BDD (Behavior-driven development)
我的叠顿顿实践
UI测试 -可測到的系統功能範圍 non-UI 测试
定義良好的規格作為测试案例,協助系統持續整合建構
UI测试主要用於描述使用者如何透過系統達成某些功能,目標
- 適合用來跑過主流程 ,確認系統整合運行正常
- 可有效減少手動测试 ,讓测试人員進行更有價值的测试 ,explore test
- demo產品功能
非UI的测试 ,主要用來测试驗證較複雜的商業邏輯 ,
例如:
- 註冊新帳號時 , 註冊用的密碼強度如何區分 .
- 網購時 ,商品根據購買總價和寄送地區要如何收取運費
实机顿别尘辞...
Reference
https://ruddyblog.wordpress.com/2016/06/18/%E7%AC%AC%E4%BA%8C%E7%AF%87%E3%80%81defin
ition-of-ready-
%E5%B7%A5%E7%A8%8B%E5%B8%AB%E8%A6%81%E5%AD%B8%E6%9C%83%E5%A6%82%E4%
BD%95%E8%AC%9B%E5%A5%BD%E6%95%85%E4%BA%8B/
https://dotblogs.com.tw/hatelove/2013/01/11/learning-tdd-in-30-days-catalog-and-reference
Q&A
END

More Related Content

Viewers also liked (20)

從App developer角度來介紹BLE
從App developer角度來介紹BLE從App developer角度來介紹BLE
從App developer角度來介紹BLE
Sam Lee
?
LWC18 編目館員看RDA的各種角度 報告人:國立臺灣大學圖書館書目服務組李明錦組長
LWC18 編目館員看RDA的各種角度 報告人:國立臺灣大學圖書館書目服務組李明錦組長LWC18 編目館員看RDA的各種角度 報告人:國立臺灣大學圖書館書目服務組李明錦組長
LWC18 編目館員看RDA的各種角度 報告人:國立臺灣大學圖書館書目服務組李明錦組長
International Federation for information integration
?
設計角度談Eee PC@2007 UI Gathering
設計角度談Eee PC@2007 UI Gathering設計角度談Eee PC@2007 UI Gathering
設計角度談Eee PC@2007 UI Gathering
Justin Lee
?
從軟體開發角度?談 Docker 的應用
從軟體開發角度?談 Docker 的應用從軟體開發角度?談 Docker 的應用
從軟體開發角度?談 Docker 的應用
謝 宗穎
?
浅谈测试笔补谤迟2
浅谈测试笔补谤迟2浅谈测试笔补谤迟2
浅谈测试笔补谤迟2
Chris Chang
?
等速圓周運動 速率-加速度-數學方程
等速圓周運動 速率-加速度-數學方程等速圓周運動 速率-加速度-數學方程
等速圓周運動 速率-加速度-數學方程
阿厂补尘苍的物理课本
?
等速圓周運動 角位移角速度數學方程
等速圓周運動 角位移角速度數學方程等速圓周運動 角位移角速度數學方程
等速圓周運動 角位移角速度數學方程
阿厂补尘苍的物理课本
?
怎麼看電影Day2 筆記整理 230116
怎麼看電影Day2  筆記整理 230116怎麼看電影Day2  筆記整理 230116
怎麼看電影Day2 筆記整理 230116
gaowenwen
?
從技術角度看 RWD - Technical Approaches to RWD
從技術角度看 RWD - Technical Approaches to RWD從技術角度看 RWD - Technical Approaches to RWD
從技術角度看 RWD - Technical Approaches to RWD
Chris Wu
?
由点、线至面:从影像分析角度探讨漫画的组成与风格-朱威达
由点、线至面:从影像分析角度探讨漫画的组成与风格-朱威达由点、线至面:从影像分析角度探讨漫画的组成与风格-朱威达
由点、线至面:从影像分析角度探讨漫画的组成与风格-朱威达
台湾资料科学年会
?
邏輯性簡報建構法課程簡介 / 商業簡報網-韓明文講師
邏輯性簡報建構法課程簡介 / 商業簡報網-韓明文講師邏輯性簡報建構法課程簡介 / 商業簡報網-韓明文講師
邏輯性簡報建構法課程簡介 / 商業簡報網-韓明文講師
明文 韓
?
功夫微讲堂第四卷
功夫微讲堂第四卷功夫微讲堂第四卷
功夫微讲堂第四卷
美棻Nancy 魏Wei
?
從open data角度談網站api應用
從open data角度談網站api應用從open data角度談網站api應用
從open data角度談網站api應用
Yu Shu Huang
?
Epidemiologia cáncer (1)Epidemiologia cáncer (1)
Epidemiologia cáncer (1)
Samuel Hernandez Lira
?
Understanding cancer
Understanding cancerUnderstanding cancer
Understanding cancer
budiagungnugraha
?
Hormonal treatment of breast cancer
Hormonal treatment of breast cancerHormonal treatment of breast cancer
Hormonal treatment of breast cancer
Santam Chakraborty
?
Cervical Cancer Educational Presentation
Cervical Cancer Educational PresentationCervical Cancer Educational Presentation
Cervical Cancer Educational Presentation
rinki singh
?
Pancreas Cancer
Pancreas CancerPancreas Cancer
Pancreas Cancer
Robert J Miller MD
?
Cancer PPT (From Mrs. Brenda Lee)
Cancer PPT (From Mrs. Brenda Lee)Cancer PPT (From Mrs. Brenda Lee)
Cancer PPT (From Mrs. Brenda Lee)
Carla
?
What Is Cancer
What  Is CancerWhat  Is Cancer
What Is Cancer
Phil Mayor
?
從App developer角度來介紹BLE
從App developer角度來介紹BLE從App developer角度來介紹BLE
從App developer角度來介紹BLE
Sam Lee
?
LWC18 編目館員看RDA的各種角度 報告人:國立臺灣大學圖書館書目服務組李明錦組長
LWC18 編目館員看RDA的各種角度 報告人:國立臺灣大學圖書館書目服務組李明錦組長LWC18 編目館員看RDA的各種角度 報告人:國立臺灣大學圖書館書目服務組李明錦組長
LWC18 編目館員看RDA的各種角度 報告人:國立臺灣大學圖書館書目服務組李明錦組長
International Federation for information integration
?
設計角度談Eee PC@2007 UI Gathering
設計角度談Eee PC@2007 UI Gathering設計角度談Eee PC@2007 UI Gathering
設計角度談Eee PC@2007 UI Gathering
Justin Lee
?
從軟體開發角度?談 Docker 的應用
從軟體開發角度?談 Docker 的應用從軟體開發角度?談 Docker 的應用
從軟體開發角度?談 Docker 的應用
謝 宗穎
?
浅谈测试笔补谤迟2
浅谈测试笔补谤迟2浅谈测试笔补谤迟2
浅谈测试笔补谤迟2
Chris Chang
?
怎麼看電影Day2 筆記整理 230116
怎麼看電影Day2  筆記整理 230116怎麼看電影Day2  筆記整理 230116
怎麼看電影Day2 筆記整理 230116
gaowenwen
?
從技術角度看 RWD - Technical Approaches to RWD
從技術角度看 RWD - Technical Approaches to RWD從技術角度看 RWD - Technical Approaches to RWD
從技術角度看 RWD - Technical Approaches to RWD
Chris Wu
?
由点、线至面:从影像分析角度探讨漫画的组成与风格-朱威达
由点、线至面:从影像分析角度探讨漫画的组成与风格-朱威达由点、线至面:从影像分析角度探讨漫画的组成与风格-朱威达
由点、线至面:从影像分析角度探讨漫画的组成与风格-朱威达
台湾资料科学年会
?
邏輯性簡報建構法課程簡介 / 商業簡報網-韓明文講師
邏輯性簡報建構法課程簡介 / 商業簡報網-韓明文講師邏輯性簡報建構法課程簡介 / 商業簡報網-韓明文講師
邏輯性簡報建構法課程簡介 / 商業簡報網-韓明文講師
明文 韓
?
從open data角度談網站api應用
從open data角度談網站api應用從open data角度談網站api應用
從open data角度談網站api應用
Yu Shu Huang
?
Epidemiologia cáncer (1)Epidemiologia cáncer (1)
Epidemiologia cáncer (1)
Samuel Hernandez Lira
?
Hormonal treatment of breast cancer
Hormonal treatment of breast cancerHormonal treatment of breast cancer
Hormonal treatment of breast cancer
Santam Chakraborty
?
Cervical Cancer Educational Presentation
Cervical Cancer Educational PresentationCervical Cancer Educational Presentation
Cervical Cancer Educational Presentation
rinki singh
?
Cancer PPT (From Mrs. Brenda Lee)
Cancer PPT (From Mrs. Brenda Lee)Cancer PPT (From Mrs. Brenda Lee)
Cancer PPT (From Mrs. Brenda Lee)
Carla
?

Similar to 我的叠顿顿实践 (20)

产物经理交流
产物经理交流产物经理交流
产物经理交流
clarles
?
人机协作迎向础颈+世代
人机协作迎向础颈+世代人机协作迎向础颈+世代
人机协作迎向础颈+世代
Steven Tseng
?
Behavior Driven Development on C.C.Agile
Behavior Driven Development on C.C.AgileBehavior Driven Development on C.C.Agile
Behavior Driven Development on C.C.Agile
Sam Huang
?
HPX Talk42 - 筆記分享
HPX Talk42 - 筆記分享HPX Talk42 - 筆記分享
HPX Talk42 - 筆記分享
Daniel Wu
?
Blue Ocean Strategy
Blue Ocean StrategyBlue Ocean Strategy
Blue Ocean Strategy
nextlib
?
产物管理与设计分享
产物管理与设计分享产物管理与设计分享
产物管理与设计分享
aakaike
?
敏捷简报
敏捷简报敏捷简报
敏捷简报
Shiang-Yun Yang
?
Baidu pm心得分享
Baidu pm心得分享Baidu pm心得分享
Baidu pm心得分享
磊 张
?
设计文献研讨冲如何建立具设计管理思维的组织
设计文献研讨冲如何建立具设计管理思维的组织 设计文献研讨冲如何建立具设计管理思维的组织
设计文献研讨冲如何建立具设计管理思维的组织
Eliot Zhang
?
CCDM 網路行銷人才認證班 說明會講義
CCDM 網路行銷人才認證班 說明會講義CCDM 網路行銷人才認證班 說明會講義
CCDM 網路行銷人才認證班 說明會講義
Yusun Chen
?
專案管理計畫 記帳 楊信德
專案管理計畫 記帳 楊信德專案管理計畫 記帳 楊信德
專案管理計畫 記帳 楊信德
vincent su
?
Finding Boundaries with Domain Storytelling
Finding Boundaries with Domain StorytellingFinding Boundaries with Domain Storytelling
Finding Boundaries with Domain Storytelling
sandy30716
?
产物经理的视角 Chrissyuan V1 0
产物经理的视角 Chrissyuan V1 0产物经理的视角 Chrissyuan V1 0
产物经理的视角 Chrissyuan V1 0
kidleecn
?
《产物经理的视角》
《产物经理的视角》《产物经理的视角》
《产物经理的视角》
Zhou Pengzhen
?
产物经理的视角
产物经理的视角产物经理的视角
产物经理的视角
envong
?
产物经理的视角 战略发展部
产物经理的视角 战略发展部产物经理的视角 战略发展部
产物经理的视角 战略发展部
wangshuangfei
?
产物经理的视角
产物经理的视角产物经理的视角
产物经理的视角
mofeng
?
Product manager-chrissyuan v1.0
Product manager-chrissyuan v1.0Product manager-chrissyuan v1.0
Product manager-chrissyuan v1.0
xlight
?
产物经理的视角 Chrissyuan V1 0
产物经理的视角 Chrissyuan V1 0产物经理的视角 Chrissyuan V1 0
产物经理的视角 Chrissyuan V1 0
bosir
?
产物经理交流
产物经理交流产物经理交流
产物经理交流
clarles
?
人机协作迎向础颈+世代
人机协作迎向础颈+世代人机协作迎向础颈+世代
人机协作迎向础颈+世代
Steven Tseng
?
Behavior Driven Development on C.C.Agile
Behavior Driven Development on C.C.AgileBehavior Driven Development on C.C.Agile
Behavior Driven Development on C.C.Agile
Sam Huang
?
HPX Talk42 - 筆記分享
HPX Talk42 - 筆記分享HPX Talk42 - 筆記分享
HPX Talk42 - 筆記分享
Daniel Wu
?
Blue Ocean Strategy
Blue Ocean StrategyBlue Ocean Strategy
Blue Ocean Strategy
nextlib
?
产物管理与设计分享
产物管理与设计分享产物管理与设计分享
产物管理与设计分享
aakaike
?
Baidu pm心得分享
Baidu pm心得分享Baidu pm心得分享
Baidu pm心得分享
磊 张
?
设计文献研讨冲如何建立具设计管理思维的组织
设计文献研讨冲如何建立具设计管理思维的组织 设计文献研讨冲如何建立具设计管理思维的组织
设计文献研讨冲如何建立具设计管理思维的组织
Eliot Zhang
?
CCDM 網路行銷人才認證班 說明會講義
CCDM 網路行銷人才認證班 說明會講義CCDM 網路行銷人才認證班 說明會講義
CCDM 網路行銷人才認證班 說明會講義
Yusun Chen
?
專案管理計畫 記帳 楊信德
專案管理計畫 記帳 楊信德專案管理計畫 記帳 楊信德
專案管理計畫 記帳 楊信德
vincent su
?
Finding Boundaries with Domain Storytelling
Finding Boundaries with Domain StorytellingFinding Boundaries with Domain Storytelling
Finding Boundaries with Domain Storytelling
sandy30716
?
产物经理的视角 Chrissyuan V1 0
产物经理的视角 Chrissyuan V1 0产物经理的视角 Chrissyuan V1 0
产物经理的视角 Chrissyuan V1 0
kidleecn
?
《产物经理的视角》
《产物经理的视角》《产物经理的视角》
《产物经理的视角》
Zhou Pengzhen
?
产物经理的视角
产物经理的视角产物经理的视角
产物经理的视角
envong
?
产物经理的视角 战略发展部
产物经理的视角 战略发展部产物经理的视角 战略发展部
产物经理的视角 战略发展部
wangshuangfei
?
产物经理的视角
产物经理的视角产物经理的视角
产物经理的视角
mofeng
?
Product manager-chrissyuan v1.0
Product manager-chrissyuan v1.0Product manager-chrissyuan v1.0
Product manager-chrissyuan v1.0
xlight
?
产物经理的视角 Chrissyuan V1 0
产物经理的视角 Chrissyuan V1 0产物经理的视角 Chrissyuan V1 0
产物经理的视角 Chrissyuan V1 0
bosir
?

More from Huang Bruce (6)

2. auto deploy to tomcat on jenkins
2. auto deploy to tomcat on jenkins2. auto deploy to tomcat on jenkins
2. auto deploy to tomcat on jenkins
Huang Bruce
?
1. Quick sartup a jenkins server on OpenShift
1. Quick sartup a jenkins server on OpenShift1. Quick sartup a jenkins server on OpenShift
1. Quick sartup a jenkins server on OpenShift
Huang Bruce
?
初探闯别苍办颈苍蝉
初探闯别苍办颈苍蝉初探闯别苍办颈苍蝉
初探闯别苍办颈苍蝉
Huang Bruce
?
從Eclipse部屬java webapp 到本地端tomcat
從Eclipse部屬java webapp 到本地端tomcat從Eclipse部屬java webapp 到本地端tomcat
從Eclipse部屬java webapp 到本地端tomcat
Huang Bruce
?
用惭补惫别苍管理专案的依赖关係
用惭补惫别苍管理专案的依赖关係用惭补惫别苍管理专案的依赖关係
用惭补惫别苍管理专案的依赖关係
Huang Bruce
?
初探Maven 3
初探Maven 3初探Maven 3
初探Maven 3
Huang Bruce
?
2. auto deploy to tomcat on jenkins
2. auto deploy to tomcat on jenkins2. auto deploy to tomcat on jenkins
2. auto deploy to tomcat on jenkins
Huang Bruce
?
1. Quick sartup a jenkins server on OpenShift
1. Quick sartup a jenkins server on OpenShift1. Quick sartup a jenkins server on OpenShift
1. Quick sartup a jenkins server on OpenShift
Huang Bruce
?
初探闯别苍办颈苍蝉
初探闯别苍办颈苍蝉初探闯别苍办颈苍蝉
初探闯别苍办颈苍蝉
Huang Bruce
?
從Eclipse部屬java webapp 到本地端tomcat
從Eclipse部屬java webapp 到本地端tomcat從Eclipse部屬java webapp 到本地端tomcat
從Eclipse部屬java webapp 到本地端tomcat
Huang Bruce
?
用惭补惫别苍管理专案的依赖关係
用惭补惫别苍管理专案的依赖关係用惭补惫别苍管理专案的依赖关係
用惭补惫别苍管理专案的依赖关係
Huang Bruce
?

我的叠顿顿实践

Editor's Notes

  • #2: 會講到這個主題 ,最初是因為 專案的文件很難反映到系統現況 ,有很多模糊地帶 ; 要開發修改的功能做不完 ,總被老闆追著跑 ,於是就想看別人是怎麼做的
  • #3: 如何分析出要实作的使用案例
  • #7: 方式 ,包含討論的行為 ,文件的紀錄方法
  • #9: 我女朋友是個美髮設計師, 平時就有記帳的需求 ,所以做了個記帳工具 ,使用mind map ,簡單發想了要實作的內容.
  • #11: 剛好我在前些日子看了某大師的blog,BDD in action這本書也有提到, 用impact mapping從根本問題找出一些解決方案 (developer我只能幫忙做統計表)
  • #12: 我们只要找到真正有价值,值得去做的事就行
  • #15: 我們可以想像到這不侷限特定角色 ,讓與這專案有相關或有興趣的人加入,進行討論 , 像是透過統計表得到最近賣最好的產品 ,在現場的業務預期可以進行進一步的推銷活動 ,或是負責採買的人需要將進貨量增加 ,這些環環相扣的事項都可以一併進行討論
  • #16: 這概念很簡單 ,把想法用可看見的方式, 拿出來討論(溝通) ,然後達到共識
  • #17: userstory mapping是一種組織userstory並排定優先順序的方法
  • #19: 有了故事, 可以再更深入得討論每個使用場景 , 需使用give when then格式來記錄 ,就像unit test ,定義初始狀態 , 行為 ,結果 . 作為驗收测试的規格. 在specification by example一書中提及 , 使用"協同制定規格"的說法 ,比制定使用場景或驗收测试案例來得更讓人容易接收.
  • #21: 從準備需求到定義產品的scope, 然後就能進行開發了
  • #22: BDD就是一種测试导向开发的方式 ,透過BDD TOOL 工具, 將驗收規格變成可執行的测试案例 userstory -> Scenario -> a executable specification
  • #23: 從使用者的角度描述系統應有的功能 ,所以测试結果要直接反應系統現況, 這邊簡單區分成UI测试和非UI测试
  • #25: Demo後,產生的報表除了反映系統現況 ,也可以做為說明文件作為產品交付的內容 . Living Document