Paul Gerrard

What are Software Regressions and How do We Avoid them?

I'm back recording videos for the Testing Glossary Project.

lnkd.in/e6rD93FS

This video explores the anti-regression measures at our disposal.

My leadership in Testing online class: bit.ly/leadintest

The Testing Glossary Project playlist: lnkd.in/eMecDxPM

#softwareregressions #regression #regressiontesting #antiregressionmeasures #teststrategy #testautomation #automatedregressiontesting #testfirst #testalways

Willem Van den Ende - Writing

@arialdo wow. We can do event storming without code, but for everything else, #babysteps and #testfirst . With course clients we now discuss whether we should do a #tdd workshop first, because if ppl are not in the habit of small steps, the end result will not representv the domain nearly as well. And as with all pattens, there is always the risk of forgetting the context and overcomplicating. With #tdd much less.

Jason Yip

It's pretty wacky that a modern presentation titled "Design is Testability" doesn't even mention #TestFirst or #TestDrivenDevelopment

Denis 🌏

look at me, writing failing tests before writing the code 😆 🔴 🟢

#testFirst #testFirstDevelopment #softwareDevelopment

Denis 🌏

1. write failing unit test
2. write code to make unit test green

man, I love #testFirst development

#softwareDevelopment #software #amCoding

Jason Yip

When someone says "#UnitTests make #refactoring harder", my first thoughts are 1. What do you mean when you say "refactoring"? 2. I'm assuming you don't do #TestFirst?

Nat Bennett

@qcoding @jchyip I've started using #TestFirst more, unless I know I'm talking to other practitioners.

I don't know that the rename was a mistake, but what people *think* they know about TDD is so bad and misinformed that I don't think the term is useful for general audiences.

Jason Yip

#TestDriven is easier to misinterpret than #TestFirst. The rename was a mistake.

Christian Hujer

Testing? Test done? What do you mean?
• Test specification
• Test implementation
• Test execution (expectation: fail)
• Test execution (expectation: pass)
These are _not_ the same thing. Conflating them is hurting your process improvements.
#Testing #TDD #BDD #ATDD #TestFirst

Jeko

#UnitTesting consists of adding small/specific tests to a code base.

#TestFirst is coding to satisfy an already established test suite.

#TestDrivenDevelopment is a way of building softwares steadily (you make baby steps, easy to tackle), incrementaly (every steps brings a new feature) with confidence (you know you didn't break what you've made)

#coding #programming #agile #tdd #extremprogramming #xp

La Fée Verte

#tdd #kata #vim #python #testfirst

This is for python, but could be easily tweaked for any other development system.

Your suggestions and opinions are appreciated.

If you like to do code kata and you like to use Vim, here is a script that will create your 2 starter files (<kataname>.py and test_<kataname>.py)

#!/bin/sh
#
# kata, a script for starting up a new kata exercise
#
# Given a name for the kata the script will create 2
# files. One with the same name as the kata with '.py'
# extension added to the end and another named 'test_'
# followed by the kata name and '.py' extension. It will
# be opened in a 3 window layout of Vim with a vertical
# terminal to the left in which you can run 'pytest' or
# 'python -m unittest' or whatever appropriate runner
# you use.
#
# If these files don't alreay exist they will be created
# with an import , and basic docstrings.
#

if [ $# -eq 0 ]; then
printf "Usage:\n\t $0 <kataname>\n"
exit 0
fi

if [ ! -f "$1.py" ]; then
printf '"""%s module."""\n\n' "$1" > "$1.py"
fi

if [ ! -f "test_$1.py" ]; then
printf '"""Unit tests for %s module."""\n\n\n' "$1" > "test_$1.py"
printf 'import %s\n\n' "$1" >> "test_$1.py"
fi

vim -c ':vert topleft term' -c 'wincmd p' -o "$1.py" "test_$1.py"