68: test && commit || revert (TCR) - Thomas Deniffel




Test & Code - Software Testing, Development, Python show

Summary: <p>With conventional TDD, you write a failing test, get it to pass, then refactor.<br> Then run the tests again to make sure your refactoring didn't break anything.<br> But what if it did break something? <br> Kent Beck has been recommending to commit your code to revision control after every green test run.<br> Oddmund Strømme suggested a symmetrical idea to go ahead and revert the code when a test fails.<br> Kent writes that he hated the idea, but had to try it.<br> Then wrote about it last September.<br> And now we have TCR, "(test &amp;&amp; commit) || revert".</p> <p>What's it feel like to actually do this?<br> Well, Thomas Deniffel has been using it since about a month after that article came out.<br> In this episode, we'll hear from Thomas about his experience with it.</p> <p>It's a fascinating idea. Have a listen and let me know what you think.</p><p>Special Guest: Thomas Deniffel.</p><p>Sponsored By:</p><ul><li> <a rel="nofollow" href="http://testandcode.com/pycharm">PyCharm Professional</a>: <a rel="nofollow" href="http://testandcode.com/pycharm">Try PyCharm Pro for an extended 4 month trial before deciding which version you need. If you value your time, you owe it to yourself to try PyCharm.</a> Promo Code: TESTNCODE2019</li></ul><p><a rel="payment" href="https://www.patreon.com/testpodcast">Support Test &amp; Code - Software Testing, Development, Python</a></p><p>Links:</p><ul> <li> <a title="test &amp;&amp; commit || revert" rel="nofollow" href="https://medium.com/@kentbeck_7670/test-commit-revert-870bbd756864">test &amp;&amp; commit || revert</a> — Kent Beck's original article</li> <li> <a title="TCR: (test &amp;&amp; commit || revert). How to use? Alternative to TDD?" rel="nofollow" href="https://medium.com/@tdeniffel/tcr-test-commit-revert-a-test-alternative-to-tdd-6e6b03c22bec">TCR: (test &amp;&amp; commit || revert). How to use? Alternative to TDD?</a> — Thomas Deniffel's article</li> <li><a title="TCR Variants (test &amp;&amp; commit || revert)" rel="nofollow" href="https://medium.com/@tdeniffel/tcr-variants-test-commit-revert-bf6bd84b17d3">TCR Variants (test &amp;&amp; commit || revert)</a></li> <li> <a title="TCR: A pulverizer for coding tasks" rel="nofollow" href="https://flexport.engineering/tcr-a-pulverizer-for-coding-tasks-f059786451d6">TCR: A pulverizer for coding tasks</a> — Another interesting opinion from someone else trying TCR - Jason Crawford</li> <li> <a title="(test &amp;&amp; commit || revert) Questions Answered" rel="nofollow" href="https://medium.com/@tdeniffel/test-commit-revert-questions-answered-ddf012a1af97">(test &amp;&amp; commit || revert) Questions Answered</a> — Written after this interview.</li> </ul>