2 min read
Pop quiz: pass or fail?
I'm launching a new live course: **Idiomatic Testing in Go**. The course begins May 5. Early-bird pricing is in effect until April 28. Why Go avoids assert libraries Better alternatives to mocks Make writing tests fun! Today’s post is a taste of what we’ll cover. See pricing & reserve → Pop quiz. Does this testify assertion pass or fail? var x []int y := []int{} require.Equal(t, x, y) If you’re like me, you have no idea.
10 min read
Testify is making your Go tests worse
How your assertion library hides bugs in plain sight, and what to do instead.
10 min read
Simple Go Mocks
Go’s interfaces and “duck typing” makes it very easy to create simple mock or stub implementations of a dependency for testing. This has not dissuaded a number of people from writing generalized mocking libraries such as gomock and testify/mock, among others. Here I want to describe a simple alternative pattern I frequently use when writing tests for an interface, that I think is generally applicable to many use cases. No Silver Bullet Of course neither this approach, nor any other, is a one-size-fits-all solution.