If you’re like most Go developers, you probably haven’t given much thought to what happens when you run go test in a project. You just take for granted that it works and your tests run (irrespective of whether they pass or not — though hopefully passing). But it turns out that a lot of things happen in the time between invoking go test and a single line of your tests start running. Let’s dive in and see how go test works.