SlideShare une entreprise Scribd logo
1  sur  42
迎接 TDD
Ivan Wei
維持現況
不好嗎
先說結論
什麼是 TDD
Red
Write a test
that fail
Refactor
Green
Work the code
work
好處
一致性
壞處
時間增加
破壞現況
直到…
RiskCost
High
Low
Nothing Too much
Sweet Point
DEMO
使用的套件
名稱 用途 設定檔
Gulp.js 流程總指揮 gulpfile.js
Mocha.js 測試發動機 mocha.opts
Should.js 稽核人員
JSDoc API 文件產生器 jsdoc.json
執行方式
單檔測試
所有測試
撰寫方式
JSDOC 撰寫
SPEED UP
• Sublime、Atom - DocBlockr
• Webstorm - 需要補充
加入 ESLINT
• 開啟 gulpfile.js
• gulp.task('mochaTest', ['lint'], () => {
取代
gulp.task('mochaTest', () => {
• gulp.task('test', ['lint', 'mochaTest',
'build:docs']);
取代
gulp.task('test', ['mochaTest',
'build:docs']);
IDE 服用 Linter
• WebStorm 教學
• Sublime 教學 (看 JSHint 的部分)
• Atom 教學
新增小工具
TRACER
提升 Debug 的效率
Q & A
接下來 CI / CD
需要…
Getting started with TDD

Contenu connexe

Tendances

Vic weekly learning_20160504
Vic weekly learning_20160504Vic weekly learning_20160504
Vic weekly learning_20160504
LearningTech
 
02.python.开发最佳实践
02.python.开发最佳实践02.python.开发最佳实践
02.python.开发最佳实践
Na Lee
 

Tendances (20)

Vic weekly learning_20160504
Vic weekly learning_20160504Vic weekly learning_20160504
Vic weekly learning_20160504
 
Java script 全面逆襲!使用 node.js 打造桌面環境!
Java script 全面逆襲!使用 node.js 打造桌面環境!Java script 全面逆襲!使用 node.js 打造桌面環境!
Java script 全面逆襲!使用 node.js 打造桌面環境!
 
Continuous Delivery Workshop with Ansible x GitLab CI
Continuous Delivery Workshop with Ansible x GitLab CIContinuous Delivery Workshop with Ansible x GitLab CI
Continuous Delivery Workshop with Ansible x GitLab CI
 
CICD Workshop 20180922
CICD Workshop 20180922CICD Workshop 20180922
CICD Workshop 20180922
 
淺談 Groovy 與 Gradle
淺談 Groovy 與 Gradle淺談 Groovy 與 Gradle
淺談 Groovy 與 Gradle
 
20150604 docker 新手入門
20150604 docker 新手入門20150604 docker 新手入門
20150604 docker 新手入門
 
前端工程師一定要知道的 Docker 虛擬化容器技巧
前端工程師一定要知道的 Docker 虛擬化容器技巧前端工程師一定要知道的 Docker 虛擬化容器技巧
前端工程師一定要知道的 Docker 虛擬化容器技巧
 
為瞬間巨量做好準備 20180726
為瞬間巨量做好準備 20180726為瞬間巨量做好準備 20180726
為瞬間巨量做好準備 20180726
 
02.python.开发最佳实践
02.python.开发最佳实践02.python.开发最佳实践
02.python.开发最佳实践
 
Golang 高性能实战
Golang 高性能实战Golang 高性能实战
Golang 高性能实战
 
快速上手 Windows Containers 容器技術 (Docker Taipei)
快速上手 Windows Containers 容器技術 (Docker Taipei)快速上手 Windows Containers 容器技術 (Docker Taipei)
快速上手 Windows Containers 容器技術 (Docker Taipei)
 
快快樂樂學 Angular 2 開發框架
快快樂樂學 Angular 2 開發框架快快樂樂學 Angular 2 開發框架
快快樂樂學 Angular 2 開發框架
 
React.js what do you really mean?
React.js what do you really mean?React.js what do you really mean?
React.js what do you really mean?
 
使用 TypeScript 駕馭 Web 世界的脫韁野馬:以 Angular 2 開發框架為例
使用 TypeScript 駕馭 Web 世界的脫韁野馬:以 Angular 2 開發框架為例使用 TypeScript 駕馭 Web 世界的脫韁野馬:以 Angular 2 開發框架為例
使用 TypeScript 駕馭 Web 世界的脫韁野馬:以 Angular 2 開發框架為例
 
前端框架發展
 前端框架發展 前端框架發展
前端框架發展
 
從開發到上線的華麗大冒險
從開發到上線的華麗大冒險從開發到上線的華麗大冒險
從開發到上線的華麗大冒險
 
認識那條鯨魚 Docker 初探
認識那條鯨魚   Docker 初探認識那條鯨魚   Docker 初探
認識那條鯨魚 Docker 初探
 
Docker應用
Docker應用Docker應用
Docker應用
 
企業導入容器經驗分享與開源技能培養
企業導入容器經驗分享與開源技能培養企業導入容器經驗分享與開源技能培養
企業導入容器經驗分享與開源技能培養
 
容器式軟體開發介紹
容器式軟體開發介紹容器式軟體開發介紹
容器式軟體開發介紹
 

Getting started with TDD