Michael Kutz's Avatar

Michael Kutz

@mkutz

Software quality enthusiast, regular conference speaker, interested in psychology and society, drinker of good beer and whisky, vegetarian...

426
Followers
182
Following
89
Posts
21.12.2023
Joined
Posts Following

Latest posts by Michael Kutz @mkutz

@emilybache.com do you know a specific tool that would help to do that pre-analysis of failed approval test for you to avoid the approve-all anti-pattern (or LGTM as I’d call it)?

I’m open for suggestions for new features in ApproveJ, you know 😉

23.02.2026 16:57 👍 0 🔁 0 💬 1 📌 0
Approval Tests vs Acceptance Tests: What's the Difference?
Approval Tests vs Acceptance Tests: What's the Difference? YouTube video by Modern Software Engineering

❓ Approval Tests vs Acceptance Tests: What's the Difference? ❓

One Big Question with @kentbeck.com & @emilybache.com | AVAILABLE NOW 📽️

Watch HERE ➡️ youtu.be/n5vzuQAToZE

23.02.2026 09:50 👍 8 🔁 4 💬 1 📌 0
Release banner for v1.3.1

Release banner for v1.3.1

🚀 ApproveJ v1.3.1 is done!

📋 inventory & cleanup mechanism
ApproveJ now keeps all created approved files in an inventory and allows to remove all that no longer have a corresponding test case

Note that the Gradle plugin's release is pending approval by Gradle.

github.com/mkutz/Approv...

23.02.2026 15:58 👍 0 🔁 0 💬 0 📌 0

I just re-read what Claude and me put into our `CLAUDE.md` (or `AGENTS.md`) in ApproveJ's source repo. It makes so much sense! So many implicit rules finally explicit.

Why did we/I only start to do that when I started working with agents?! This is gold for human coders, isn't it?!

23.02.2026 14:21 👍 1 🔁 0 💬 0 📌 0

There’s a brand new printable cheat sheet 📋👀 for #ApproveJ!

Put it on your desktop to get a quick overview on the API for your #approvaltesting/#snapshottesting on the #jvm.

approvej.org/pdf/cheat-sh...

08.02.2026 17:19 👍 0 🔁 0 💬 0 📌 0
Release banner for v1.2

Release banner for v1.2

🚀 #ApproveJ 1.2 got released!

🆕 http module can be used to approve HTTP requests done by your code!

🆕 json-/yaml-jackson3 modules support Jackson 3

⚠️ all jackson modules now require Jackson dependencies declared by you

#approvaltesting #snapshottesting #java #jvm

github.com/mkutz/Approv...

04.02.2026 07:48 👍 3 🔁 1 💬 0 📌 0
Release banner for v1.1

Release banner for v1.1

🚀 #ApproveJ v.1.1 was released

🦾 New automatic file reviewer

🎛️ Short aliases for in configuration
All configuration values can now also be overwritten via environment variables

github.com/mkutz/Approv...

#approvaltesting #snapshottesting #java #jdk

28.01.2026 17:49 👍 3 🔁 2 💬 0 📌 0
Preview
With Great Trust Comes Great Responsibility | EuroSTAR Conference Check out this video from Michael Kutz to hear more about his talk on With Great Trust Comes Great Responsibility. We look forward to welcoming you to EuroSTAR 2026. Session Speakers Michael Kutz REWE...

📣 Big news: I'm going to keynote at #EuroSTAR 2026 in Oslo

"With Great Trust Comes Great Responsibility"… a talk about one of my deepest believes: that trust is the ultimate foundation of great quality in software development.

conference.eurostarsoftwaretesting.com/event/2026/w...

09.01.2026 15:39 👍 4 🔁 0 💬 0 📌 0
Release banner for v1.0

Release banner for v1.0

🚀 #ApproveJ v1.0 ("ONE-POINT-ZERO") was just released! 🎉🥳🍾

🧹 all deprecated methods have been removed
🪲 approving by file is now also possible in parameterized tests
📖 minor updates in the manual

github.com/mkutz/Approv...

#approvaltesting #snapshottesting #java #kotlin #unittesting #release

01.12.2025 14:44 👍 4 🔁 2 💬 0 📌 0
Preview
Release Release v1.0-RC1 · mkutz/ApproveJ Changelog core 🏗️ several classes (e.g. built-in Scrubber and Replacement implementations) were transformed into interfaces with record implementations 🏗️ the Scrubber and Replacement interfaces a...

#ApproveJ v1.0-RC1 was just released 🎉

This release concentrates on internal refactoring and removed deprecated methods and classes.

👉 github.com/mkutz/Approv...

#approvaltesting #snapshottesting #jvm #java

28.11.2025 15:47 👍 5 🔁 2 💬 0 📌 0
Preview
WTFM – Where's the F****** Manual Key Learnings: 1. Understand what makes writing documentation so daunting. 2. Acquire some simple guidelines and techniques to detect knowledge that needs to be documented in what way. 3. Learn how to...

Slides are online at slides.com/mkutz/wtfm

26.11.2025 13:06 👍 2 🔁 1 💬 0 📌 0
Me in front of the stage at #AgileTD

Me in front of the stage at #AgileTD

Documentation is often hard to find, outdated, misleading, badly written, or simply doesn’t exist… 😒📖

I just finished my #AgileTD talk on how to manage your team’s documentation to end up in a better place.

I’m really happy how the talk turned out and grateful for the very good questions.

26.11.2025 12:49 👍 8 🔁 1 💬 1 📌 0
João on stage promoting the open space at #AgileTD

João on stage promoting the open space at #AgileTD

If you are at #AgileTD, do feel free to propose a session for this year’s open space with @jrosaproenca.bsky.social and @alexschl.bsky.social.

It doesn’t matter if you want to present something or simply discuss a topic, just post it on Slack 👉
agiletdzone.slack.com/archives/C08...

24.11.2025 16:34 👍 5 🔁 5 💬 0 📌 0
Me on the Train

Me on the Train

On my way to #AgileTD
Looking forward to meeting with old friends, make new ones, and talk about quality software development 😀

24.11.2025 08:29 👍 5 🔁 0 💬 1 📌 0
Preview
Release Release v0.12 · mkutz/ApproveJ ⚠️ This release contains a massive amount of API changes and deprecations as this is likely the last release before 1.0. Migration Guide In your src/test/resources/approvej.properties or ~/.confi...

🚀 ApproveJ v0.12…1 is here!

This release contains quite some deprecations in APIs that prepare for the release of v1.0, so please check the migration guide in the release notes.

👉 github.com/mkutz/Approv...

#approvaltesting #snapshottesting #java #kotlin

13.11.2025 09:35 👍 4 🔁 3 💬 0 📌 0

Hey there #AgileTD fans. I am not able to attend the Agile TD in Potsdam end of November. But I have got an Agile TD ticket and Hotelroom in Potsdam (at the venue direct) and before I cancel it, I want to ask if anyone wants to takeover? Please reach out to me. Thank you.

Price is 3.097 Euros.

05.11.2025 14:30 👍 2 🔁 3 💬 0 📌 0

Thanks Emily, much appreciated 🤗

28.10.2025 09:13 👍 0 🔁 0 💬 0 📌 0

Took me quite some time to figure it out, but I finally understood why `idea diff "my file" "my other file"` won't work on my Mac.

The issue is in the `idea` script as generated by @intellijidea.com Toolbox.

See youtrack.jetbrains.com/issue/TBX-77...

28.10.2025 08:46 👍 0 🔁 0 💬 1 📌 0
Release banner for 0.11

Release banner for 0.11

🚀 ApproveJ v0.11 is here

🖨️ The ObjectPrinter now prints fields in their declared order. Sorted output is still possible.
🖨️ The ObjectPrinter now also prints fields of super classes.
🪲 Approvals in Awaitilities await lambdas now work as expected.

github.com/mkutz/Approv...

06.10.2025 12:42 👍 0 🔁 0 💬 0 📌 0
Me biting my wooden medal

Me biting my wooden medal

Done. Happy. Tired.

#cologne #marathon

05.10.2025 09:03 👍 5 🔁 0 💬 0 📌 0
My running gear laid out for tomorrow's run

My running gear laid out for tomorrow's run

Ready to run 🏃‍♂️

#colognemarathon #marathon #cologne

04.10.2025 18:34 👍 5 🔁 0 💬 0 📌 0
JUnit Release Notes

#JUnit 6.0.0 is released!

✨ Java 17 and Kotlin 2.2 baseline
🌄 JSpecify nullability annotations
🛫 Integrated JFR support
🚟 Kotlin suspend function support
🛑 Support for cancelling test execution
⏭️ New `--fail-fast` mode for ConsoleLauncher
🧹 Removal of deprecated APIs

docs.junit.org/6.0.0/releas...

30.09.2025 08:50 👍 119 🔁 75 💬 2 📌 11
Preview
Release v3.27.5 · assertj/assertj ⚡ Improvements Core ByteBuddy in AssertJ 3.27.4 not compatible with Java 25 #3946 🔨 Dependency Upgrades Core Upgrade to Byte Buddy 1.17.7 #3947 Upgrade to JUnit BOM 5.13.4 #3947 Guava Upgrade ...

📢 AssertJ 3.27.5 has been released!

This 🛠️ upgrades ByteBuddy to its latest version to ensure smooth compatibility with Java 25 ☕

Happy assertions!

github.com/assertj/asse...

19.09.2025 06:56 👍 15 🔁 10 💬 0 📌 0
Java 25 Launch Stream
Java 25 Launch Stream YouTube video by Java

Still more good stuff coming in the #Java 25 Launch live stream!

Tune in now at www.youtube.com/watch?v=duIc...

#Java25

16.09.2025 16:56 👍 8 🔁 5 💬 0 📌 0
Preview
Java 25 LTS and IntelliJ IDEA | The IntelliJ IDEA Blog Full support for Java 25 is available in IntelliJ IDEA!

Java 25 LTS is here! 🚀 Ready to tap into the latest #Java features? #IntelliJIDEA supports Java 25 from day one. Let’s dive into what’s new and how your IDE has you covered! 👇 #Java25IntelliJIDEA jb.gg/r70wns

16.09.2025 15:01 👍 38 🔁 16 💬 0 📌 1
A guy in front of Sans Soucie castle in Potsdam holding a sign saying "THE END IS NIGH".

A guy in front of Sans Soucie castle in Potsdam holding a sign saying "THE END IS NIGH".

The end of the Agile Testing Days | Nov. 24 - 27, 2025 early bird phase is nigh!!! 😱

And if you like to save more, please contact me for a discount code that gives you an additional 15% on top of the Early Bird price, valid on onsite AND online.

12.09.2025 14:20 👍 0 🔁 0 💬 0 📌 0

Oh wow. That looks really nice and useful. Thanks for the hint!

08.09.2025 17:56 👍 1 🔁 0 💬 0 📌 0

Close to Paris, aren't you?

08.09.2025 12:46 👍 0 🔁 0 💬 1 📌 0

Fixt (also a nice name btw) looks indeed close to ApproveJ.
Do you have a concept of removing dynamic stuff (timestamps, generated IDs)?

There's also github.com/approvals/Ap...

My aim however was to create something that can operate on any data objects, not "only" Strings and to have a fluent API.

08.09.2025 07:15 👍 1 🔁 0 💬 0 📌 0