mikezx6r

mikezx6r

From Objects to Functions: Testing Tools query P12-17

@uberto

I’ve only begun reading the book, and like what I see. Doing the first Test portion around addition, and wondering if you’ve ever examined Kotest? A Kotlin specific testing framework.
It has been around awhile, and has excellent support, active devs, and a plugin for IntelliJ.

I like it because it leverages Kotlin throughout, has different testing styles to suit your requirements, and preferences, an excellent assertion library (that can be used in isolation), and solid property-based testing, including shrinking.

I really like its assertion style of (x + y) shouldBe 12, and similar. It has a solid selection of assertions. Very close to AssertJ, and the community/developers are quick to respond to inquiries.

I thought I’d pass it along in case you’d never seen it. Well worth investigating IMO.

Looking forward to the rest of the book.

Most Liked

mikezx6r

mikezx6r

Agreed that a lot comes down to personal preference. I did a fair bit with Groovy, and Spock assertions, and really liked the lack of keywords. Kotest assertions comes closest to that for me, hence my.preference for it.

mikezx6r

mikezx6r

I’ve always found Idea does a very good job of figuring out the right suggestions, and keeps getting better all the time.

But definitely use what makes you happiest, and most productive. There’s no shortage of tools to choose from in our industry. All of them with objective pros/cons, and subjective pros/cons.

Really enjoying the design ideas I’m gaining from the book. Also having ‘fun’ with Kotlin, as unfortunately, I don’t get to use it in my day job anymore :frowning:

Working through the early days of the book ‘forced’ me to dig into the inner workings, and code samples. Nothing like digging in to truly learn, and understand the design, and process.

But constructive feedback. Hopefully the technical reviewers will get the examples, and sample code, better working than it was in the early days, or else it will cause a number of people to give up way too early.

I see the source code as a zip. I searched, but didn’t find a repo on Github. Is there a publicly available repo with the source code? I ask as it makes determining what has changed so much easier, and I like to see the evolution. Completely understand if you don’t want to share it, though.

Thanks again, and keep up the good work. I really appreciate it when people take the time to share their ideas.

Where Next?

Popular Pragmatic Bookshelf topics Top

brianokken
Many tasks_proj/tests directories exist in chapters 2, 3, 5 that have tests that use the custom markers smoke and get, which are not decl...
New
johnp
Hi Brian, Looks like the api for tinydb has changed a little. Noticed while working on chapter 7 that the .purge() call to the db throws...
New
yulkin
your book suggests to use Image.toByteData() to convert image to bytes, however I get the following error: "the getter ‘toByteData’ isn’t...
New
jskubick
I found an issue in Chapter 7 regarding android:backgroundTint vs app:backgroundTint. How to replicate: load chapter-7 from zipfile i...
New
brunogirin
When installing Cards as an editable package, I get the following error: ERROR: File “setup.py” not found. Directory cannot be installe...
New
brunogirin
When running tox for the first time, I got the following error: ERROR: InterpreterNotFound: python3.10 I realised that I was running ...
New
taguniversalmachine
Hi, I am getting an error I cannot figure out on my test. I have what I think is the exact code from the book, other than I changed “us...
New
andreheijstek
After running /bin/setup, the first error was: The foreman' command exists in these Ruby versions: That was easy to fix: gem install fore...
New
redconfetti
Docker-Machine became part of the Docker Toolbox, which was deprecated in 2020, long after Docker Desktop supported Docker Engine nativel...
New
dachristenson
@mfazio23 Android Studio will not accept anything I do when trying to use the Transformations class, as described on pp. 140-141. Googl...
New

Other popular topics Top

PragmaticBookshelf
Ruby, Io, Prolog, Scala, Erlang, Clojure, Haskell. With Seven Languages in Seven Weeks, by Bruce A. Tate, you’ll go beyond the syntax—and...
New
DevotionGeo
I know that these benchmarks might not be the exact picture of real-world scenario, but still I expect a Rust web framework performing a ...
New
siddhant3030
I’m thinking of buying a monitor that I can rotate to use as a vertical monitor? Also, I want to know if someone is using it for program...
New
AstonJ
SpaceVim seems to be gaining in features and popularity and I just wondered how it compares with SpaceMacs in 2020 - anyone have any thou...
New
dimitarvp
Small essay with thoughts on macOS vs. Linux: I know @Exadra37 is just waiting around the corner to scream at me “I TOLD YOU SO!!!” but I...
New
AstonJ
If you are experiencing Rails console using 100% CPU on your dev machine, then updating your development and test gems might fix the issu...
New
AstonJ
Saw this on TikTok of all places! :lol: Anyone heard of them before? Lite:
New
PragmaticBookshelf
Author Spotlight Jamis Buck @jamis This month, we have the pleasure of spotlighting author Jamis Buck, who has written Mazes for Prog...
New
sir.laksmana_wenk
I’m able to do the “artistic” part of game-development; character designing/modeling, music, environment modeling, etc. However, I don’t...
New
AstonJ
If you’re getting errors like this: psql: error: connection to server on socket “/tmp/.s.PGSQL.5432” failed: No such file or directory ...
New

Sub Categories: