Essential TDD for Pythoners@ PyConTW 2016
• Joe • Aka
• Tainan.py •
Code
• TDD
• *DD
• TDD
• Essential TDD for Pythoners
Test-Driven Development
function
•
• 1, 5, 10
•
• 23
•
Test
pytest style
• Push
• Test Case
• API
•
•
• Production Code
Acceptance Test-Driven Development
Acceptance Test-Driven Development
Behavior-Driven Development
RailsConf 2014 - Keynote: Writing Software by David Heinemeier Hansson
• DHH
• Kent Beck
• Martin Fowler
• Uncle Bob
• Matt Wynne
• Jim Weirich
• Jim Okelly
• Gary Bernhardt
• Tom Stuart
• … and more
• Martin Fowler
• DHH
• Kent Beck
• Uncle Bob
• Matt Wynne
• Jim Weirich
• Jim Okelly
• Gary Bernhardt
DeadNot Dead
• Tom Stuart
Essential TDD for Pythoners
Part 4
• Mindset • Environment • Form • Tools
Decision <=> feedback
Tools• Testing Framework
• unittest, nose, pytest …
• Editor (code refactoring)
• Vim + Plugin, PyCharm …
• Note
• Evernote, paper …
Recap
• TDD / ATDD / BDD
•
• TDD
•
• K-12
• /
• /
• /
•
• GAE (python)
• backbone.js / react.js
• AWS
• SCRUM