diff --git a/.github/workflows/build-and-test-windows.yaml b/.github/workflows/build-and-test-windows.yaml
index 8072d1a22dec..293ca7858d97 100644
--- a/.github/workflows/build-and-test-windows.yaml
+++ b/.github/workflows/build-and-test-windows.yaml
@@ -25,5 +25,5 @@ jobs:
             ~\go\pkg\mod
             ~\AppData\Local\go-build
           key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
-      - name: Run Unit tests
-        run: go test ./...
+      - name: Run Unit Tests
+        run: make gotest
diff --git a/Makefile b/Makefile
index 6358b1190bf9..36d3a63b84bb 100644
--- a/Makefile
+++ b/Makefile
@@ -146,13 +146,23 @@ install-tools:
 run: otelcorecol
 	./bin/otelcorecol_$(GOOS)_$(GOARCH) --config ${RUN_CONFIG} ${RUN_ARGS}
 
+# Append root module to all modules
 GOMODULES = $(ALL_MODULES) $(PWD)
+
+# Define a delegation target for each module
 .PHONY: $(GOMODULES)
-MODULEDIRS = $(GOMODULES:%=for-all-target-%)
+$(GOMODULES):
+	@echo "Running target '$(TARGET)' in module '$@'"
+	$(MAKE) -C $@ $(TARGET)
+
+# Triggers each module's delegation target
 .PHONY: for-all-target
-for-all-target: $(MODULEDIRS)
-$(MODULEDIRS):
-	$(MAKE) -C $(@:for-all-target-%=%) $(TARGET)
+for-all-target: $(GOMODULES)
+
+# Debugging target, which helps to quickly determine whether for-all-target is working or not.
+.PHONY: all-pwd
+all-pwd:
+	$(MAKE) for-all-target TARGET="pwd"
 
 .PHONY: check-component
 check-component:
diff --git a/Makefile.Common b/Makefile.Common
index 70cfe2f2a51b..4eaeb391466d 100644
--- a/Makefile.Common
+++ b/Makefile.Common
@@ -3,13 +3,16 @@ ALL_PKGS := $(sort $(shell go list ./...))
 
 # Use a single process (-p 1) on go test to avoid tests clashing on machine
 # wide resources, e.g. ports.
-GOTEST_OPT?= -v -p 1 -race -timeout 60s
+GOTEST_OPT?= -v -p 1 -race -timeout 120s
 GOCMD?= go
 GOTEST=$(GOCMD) test
 GO_ACC=go-acc
 LINT=golangci-lint
 IMPI=impi
 
+pwd:
+	@pwd
+
 .PHONY: test
 test:
 	$(GOTEST) $(GOTEST_OPT) ./...
diff --git a/cmd/builder/internal/builder/config_test.go b/cmd/builder/internal/builder/config_test.go
index a33a72de8240..dc3fcf6f2281 100644
--- a/cmd/builder/internal/builder/config_test.go
+++ b/cmd/builder/internal/builder/config_test.go
@@ -58,7 +58,6 @@ func TestRelativePath(t *testing.T) {
 	// verify
 	cwd, err := os.Getwd()
 	require.NoError(t, err)
-	assert.True(t, strings.HasPrefix(cfg.Extensions[0].Path, "/"))
 	assert.True(t, strings.HasPrefix(cfg.Extensions[0].Path, cwd))
 }
 
diff --git a/cmd/builder/internal/builder/main_test.go b/cmd/builder/internal/builder/main_test.go
index c637438d763c..c5bb59e9c78e 100644
--- a/cmd/builder/internal/builder/main_test.go
+++ b/cmd/builder/internal/builder/main_test.go
@@ -35,16 +35,8 @@ func TestGenerateInvalidCollectorVersion(t *testing.T) {
 	require.NoError(t, err)
 }
 
-func TestGenerateInvalidOutputPath(t *testing.T) {
-	cfg := NewDefaultConfig()
-	cfg.Distribution.OutputPath = "/invalid"
-	err := Generate(cfg)
-	require.Error(t, err)
-	require.Contains(t, err.Error(), "failed to create output path")
-}
-
 func TestGenerateAndCompileDefault(t *testing.T) {
-	dir, err := ioutil.TempDir("/tmp", "default")
+	dir, err := ioutil.TempDir("", "default")
 	if err != nil {
 		log.Fatal(err)
 	}