Sign in

Michael Kutz

@mkutz.bsky.social
442 followers 183 following 105 posts

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

PostsRepliesMedia
Michael Kutz @mkutz.bsky.social · 02/07/2026
🚀 Approvej 1.7.0 has been released! github.com/mkutz/ApproveJ/releases/…
000
Michael Kutz @mkutz.bsky.social · 11/06/2026
Right! Figured that out quite early when I was using a physical German keyboard with US layout. The key above tab is different on the German keyboard, so using that one and a space was the easiest way to reference my home folder on the terminal.
010
Michael Kutz @mkutz.bsky.social · 11/06/2026
Switching from a German to an English keyboard, occasionally typing German and French, here's my cheat sheet: ´: ⌥ + e `: ⌥ + `~ ˆ: ⌥ + i ¨: ⌥ + u ç: ⌥ + c ß: ⌥ + s
110
Michael Kutz @mkutz.bsky.social · 08/06/2026
🚀 Approvej 1.6.2 has been released! github.com/mkutz/ApproveJ/releases/…
000
Michael Kutz @mkutz.bsky.social · 20/04/2026
🚀 Approvej 1.6.1 has been released! github.com/mkutz/ApproveJ/releases/…
000
Michael Kutz @mkutz.bsky.social · 01/04/2026
ApproveJ 1.6.0 is here 🚀 ✨ Inline Value Updates update approved value in your test source 📸 Enhanced Visual Feedback with diff 🤖 AI Assisted Reviews 👉 approvej.org 🔗 Full Changelog: lnkd.in/eyTtdR_3 #ApproveJ #Java #SoftwareTesting #OpenSource #VisualTesting #IntelliJ #DX #CleanCode
ApproveJ's image comparison view in IntelliJ. Received screenshot on the left, difference image in the middle and previously approved screenshot on the right.
032
Michael Kutz @mkutz.bsky.social · 01/04/2026
ApproveJ 1.6.0 is here 🚀 ✨ Inline Value Updates update approved value in your test source 📸 Enhanced Visual Feedback with diff 🤖 AI Assisted Reviews 👉 approvej.org 🔗 Full Changelog: lnkd.in/eyTtdR_3 #ApproveJ #Java #SoftwareTesting #OpenSource #VisualTesting #IntelliJ #DX #CleanCode
approvej.org
ApproveJ
021
Michael Kutz @mkutz.bsky.social · 01/04/2026
🚀 Approvej 1.6.0 has been released! github.com/mkutz/ApproveJ/releases/…
010
Michael Kutz @mkutz.bsky.social · 24/03/2026
🚀 Approvej 1.5.2 has been released! github.com/mkutz/ApproveJ/releases/…
000
Michael Kutz @mkutz.bsky.social · 19/03/2026
🚀 Approvej 1.5.1 has been released! github.com/mkutz/ApproveJ/releases/…
000
Michael Kutz @mkutz.bsky.social · 19/03/2026
ApproveJ 1.5.0 is out! 🚀 Stop writing manual assertions for complex data. The new version of our #JVM approval testing library adds: 📸 Visual Testing: Approve screenshots with pHash. 🗄️ DB Testing: Snapshots as Markdown tables. 🛠️ HTTP: Thread-safe stubbing. 🔗 approvej.org #ApproveJ #Java #Testing
approvej.org
ApproveJ
010
Michael Kutz @mkutz.bsky.social · 19/03/2026
🚀 Approvej 1.5.0 has been released! github.com/mkutz/ApproveJ/releases/…
010
Michael Kutz @mkutz.bsky.social · 17/03/2026
🚀 Approvej 1.4.7 has been released! github.com/mkutz/ApproveJ/releases/…
010
Michael Kutz @mkutz.bsky.social · 16/03/2026
🚀 Approvej 1.4.6 has been released! github.com/mkutz/ApproveJ/releases/…
011
Michael Kutz @mkutz.bsky.social · 12/03/2026
ApproveJ now also provides an IntelliJ plugin. 🧐 directly open the diff view from the test ✅ approve a received file with a single click 🧭 navigate from test to approved/received files an back ⚠️ get hints on missing by… calls and potential overwritten approvals See approvej.org#intellij_plu...
approvej.org
ApproveJ
011
Michael Kutz @mkutz.bsky.social · 12/03/2026
🚀 Approvej 1.4.5 has been released! github.com/mkutz/ApproveJ/releases/…
010
Michael Kutz @mkutz.bsky.social · 23/02/2026
@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 😉
100
Reposted by Michael Kutz
Modern Software Engineering @modernswe.bsky.social · 23/02/2026
❓ Approval Tests vs Acceptance Tests: What's the Difference? ❓ One Big Question with @kentbeck.com & @emilybache.com | AVAILABLE NOW 📽️ Watch HERE ➡️ youtu.be/n5vzuQAToZE
youtu.be
Approval Tests vs Acceptance Tests: What's the Difference?
YouTube video by Modern Software Engineering
184
Michael Kutz @mkutz.bsky.social · 23/02/2026
🚀 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...
Release banner for v1.3.1
000
Michael Kutz @mkutz.bsky.social · 23/02/2026
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?!
010
Michael Kutz @mkutz.bsky.social · 08/02/2026
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...
approvej.org
000
Michael Kutz @mkutz.bsky.social · 04/02/2026
🚀 #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...
Release banner for v1.2
031
Michael Kutz @mkutz.bsky.social · 28/01/2026
🚀 #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
Release banner for v1.1
032
Michael Kutz @mkutz.bsky.social · 09/01/2026
📣 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...
conference.eurostarsoftwaretesting.com
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...
040
Michael Kutz @mkutz.bsky.social · 01/12/2025
🚀 #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
Release banner for v1.0
042
Michael Kutz @mkutz.bsky.social · 28/11/2025
#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
github.com
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...
052
Michael Kutz @mkutz.bsky.social · 26/11/2025
Slides are online at slides.com/mkutz/wtfm
slides.com
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...
021
Michael Kutz @mkutz.bsky.social · 26/11/2025
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.
Me in front of the stage at #AgileTD
181
Michael Kutz @mkutz.bsky.social · 24/11/2025
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...
João on stage promoting the open space at #AgileTD
055
Michael Kutz @mkutz.bsky.social · 24/11/2025
On my way to #AgileTD Looking forward to meeting with old friends, make new ones, and talk about quality software development 😀
Me on the Train
150
Michael Kutz @mkutz.bsky.social · 13/11/2025
🚀 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
github.com
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...
043
Reposted by Michael Kutz
Alex Schnapper 🇩🇪🇦🇺💚🇪🇺 @alexschnapper.com · 05/11/2025
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.
023
Michael Kutz @mkutz.bsky.social · 28/10/2025
Thanks Emily, much appreciated 🤗
000
Michael Kutz @mkutz.bsky.social · 28/10/2025
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...
youtrack.jetbrains.com
100
Michael Kutz @mkutz.bsky.social · 06/10/2025
🚀 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...
Release banner for 0.11
000
Michael Kutz @mkutz.bsky.social · 05/10/2025
Done. Happy. Tired. #cologne #marathon
Me biting my wooden medal
050
Michael Kutz @mkutz.bsky.social · 04/10/2025
Ready to run 🏃‍♂️ #colognemarathon #marathon #cologne
My running gear laid out for tomorrow's run
050
Reposted by Michael Kutz
JUnit Team @junit.org · 30/09/2025
#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...
docs.junit.org
JUnit Release Notes
211674
Reposted by Michael Kutz
AssertJ @assertj.github.io · 19/09/2025
📢 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...
github.com
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 ...
01510
Reposted by Michael Kutz
Ted M. Young (he/him) aka @JitterTed @ted.dev · 16/09/2025
Still more good stuff coming in the #Java 25 Launch live stream! Tune in now at www.youtube.com/watch?v=duIc... #Java25
youtube.com
Java 25 Launch Stream
YouTube video by Java
085
Reposted by Michael Kutz
IntelliJ IDEA, a JetBrains IDE @intellijidea.com · 16/09/2025
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
jb.gg
Java 25 LTS and IntelliJ IDEA | The IntelliJ IDEA Blog
Full support for Java 25 is available in IntelliJ IDEA!
03816
Michael Kutz @mkutz.bsky.social · 12/09/2025
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.
A guy in front of Sans Soucie castle in Potsdam holding a sign saying "THE END IS NIGH".
000
Michael Kutz @mkutz.bsky.social · 08/09/2025
Oh wow. That looks really nice and useful. Thanks for the hint!
010
Michael Kutz @mkutz.bsky.social · 08/09/2025
Close to Paris, aren't you?
100
Michael Kutz @mkutz.bsky.social · 08/09/2025
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.
github.com
010
Michael Kutz @mkutz.bsky.social · 08/09/2025
You're not the first one to mention that term. I like approval a little better as it describes the process. "One approves a snapshot". Also it was the term that under which @emilybache.com introduced it to me.
120
Michael Kutz @mkutz.bsky.social · 07/09/2025
🚀 ApproveJ v0.10 is here 🖨️ revamps the ObjectPrinter especially for Kotlin data classes 🎛️ adds new global configuration file ~/.config/approvej/approvej.properties github.com/mkutz/Approv... #approvaltesting #jvm #kotlin #java #approvej
Release banner for v0.10
163
Michael Kutz @mkutz.bsky.social · 14/08/2025
🚀 ApproveJ v0.9.7 was released 🧽 new strings scrubber allows to scrub known strings 🧽 new masking replacement turns "Whatever74" into "Aaaaaaaa11" 🐞 the approval error now has expected and actual in the right order 👉 github.com/mkutz/Approv... #approvaltesting #snapshottesting #java #jvm
Release banner for v0.9.7
022
Michael Kutz @mkutz.bsky.social · 15/07/2025
🚀 ApproveJ v0.9.5 is out 🔁 New Replacement interface can be implemented and used with any RegexScrubber. ⚠️ Deprecates relativeDates() Scrubber Use DateTimeScrubber.replaceWithRelativeDate() instead. #approvaltesting #snapshottesting #java #kotlin #jvm
Release banner for v0.9.5
023