Posts with the tag testing:
This article will cover how to get visibility of your test coverage in Go. If you’re not comfortable with the basics of testing in Go, please checkout my earlier article aimed at beginners.
Test coverage Test coverage gives you a high-level overview you how much of your production code was invoked in your tests (e.g. as a percentage), but it can also give you a lower-level view of exactly which lines are invoked or missed.
This past week I’ve had the privilege of having a Hack Week where I work, where we can work on whatever we wanted. I ended up building Mokku – a mocking framework for Go that gets out of your way.
Key features Invisible: No hard (import) or soft (//go:generate) dependencies to add to your codebase. Unintrusive: Can be included in any developer’s workflow. Doesn’t dictate or enforce how you use it after it’s written.
Let’s have a go at writing tests in Go. Puns aside, testing in Go is baked into the language. Assuming you’re comfortable with the Go basics, let’s get started with writing tests. First of all, the way you run all tests in the current package is:
$ go test However, unless you’ve got tests in your project nothing is going to execute. Go tests have to follow these three rules:
Today I released v1.0.0 of a Go package called jsonassert. It is my first self-motivated open source contribution that I think has a chance of being useful to someone other than just myself. Okay, that’s not quite true but it’s the first one I’ve written in Go.
I realised the need for this package when attempting to increase the test confidence of a relatively untested package that sends JSON to a server.
Spring developers will be familiar with its powerful Dependency Injection API. It allows you to declare @Beans that Spring then instantiates and manages. Any dependencies between these beans is then resolved by Spring and injected automagically.
Three Annotation-based Injection Patterns There are three ways Spring lets you declare the dependencies of your class using annotations:
Field injection (The bad)
import org.springframework.beans.factory.annotation.Autowired; public class MyBean { @Autowired private AnotherBean anotherBean; //Business logic.