
About
Tests should tell a story, and not be some complicated array of technical terms that almost nobody understands. This is our focus during the next #RemotePairProgramming session with Bastien David.
We call our tests paragraphs and our test class a story. Because we feel in a flow, we could go on writing tests that tell a story for a few hours and still discover what it an easy to understand story by the end user: the programmer.
Involve concepts of user experience in programming, and consider the programmer to be the user of the program and the tests. Think deeply about how to name your tests, how easy they are to understand, what is the order of the tests so it makes sense. We want the readers to easily immerse themselves into the story and be captivated as easy as possible. Anything that one doesn’t understand is not in it’s place. So we review, improve, revise, improve, review, improve until everything looks fine. And then we review and improve again. There is an iterative process of improvement that happens with tests that tell a story, when you really care about your users.
During this episode we have a balanced pair programming approach, where both of us contribute, as compared to Strong Style Pairing.
Pair programming is a technique in which two programmers work together to solve a task. They work on one computer, ideally each having their own keyboard in front of them.
There are two roles: driver and navigator.
The driver writes the code and takes the short time decisions. The driver should trust the navigator totally for the long term decisions.
Check the full video next week.
Video
Acknowledgements
Many thanks to Bastien for taking the time to record this codecast with me.
What’s Next?
Watch other episodes of Remote Pair Programming: https://www.youtube.com/playlist?list=PLlOmk325wSKLFF3pXOLVjzZHhQhs_2Ds8
Watch Legacy Coderetreat: https://www.youtube.com/playlist?list=PLlOmk325wSKLytvYhnGLR0v3PhWNdGMon
Watch Evolutionary Design: https://www.youtube.com/playlist?list=PLlOmk325wSKLjw_RGzpBV8MIfi4zSlbwM
