diff --git a/internal/pkg/controller/addflows_test.go b/internal/pkg/controller/addflows_test.go
index aee998f..d544413 100644
--- a/internal/pkg/controller/addflows_test.go
+++ b/internal/pkg/controller/addflows_test.go
@@ -22,7 +22,7 @@
 	"voltha-go-controller/internal/pkg/of"
 	"voltha-go-controller/internal/test/mocks"
 
-	"github.com/golang/mock/gomock"
+	"go.uber.org/mock/gomock"
 )
 
 func Test_isFlowOperSuccess(t *testing.T) {
diff --git a/internal/pkg/controller/auditdevice_test.go b/internal/pkg/controller/auditdevice_test.go
index a6477e3..52d0a17 100644
--- a/internal/pkg/controller/auditdevice_test.go
+++ b/internal/pkg/controller/auditdevice_test.go
@@ -22,7 +22,7 @@
 	"voltha-go-controller/internal/pkg/of"
 	"voltha-go-controller/internal/test/mocks"
 
-	"github.com/golang/mock/gomock"
+	"go.uber.org/mock/gomock"
 	"github.com/opencord/voltha-protos/v5/go/openflow_13"
 	"github.com/opencord/voltha-protos/v5/go/voltha"
 )
diff --git a/internal/pkg/controller/controller_test.go b/internal/pkg/controller/controller_test.go
index e47f727..3608b52 100644
--- a/internal/pkg/controller/controller_test.go
+++ b/internal/pkg/controller/controller_test.go
@@ -27,7 +27,7 @@
 	"voltha-go-controller/internal/pkg/vpagent"
 	"voltha-go-controller/internal/test/mocks"
 
-	"github.com/golang/mock/gomock"
+	"go.uber.org/mock/gomock"
 	"github.com/stretchr/testify/assert"
 )
 
diff --git a/internal/pkg/controller/device_test.go b/internal/pkg/controller/device_test.go
index ab832b7..6751416 100644
--- a/internal/pkg/controller/device_test.go
+++ b/internal/pkg/controller/device_test.go
@@ -23,9 +23,9 @@
 	"voltha-go-controller/internal/pkg/of"
 	"voltha-go-controller/internal/test/mocks"
 
-	"github.com/golang/mock/gomock"
 	ofp "github.com/opencord/voltha-protos/v5/go/openflow_13"
 	"github.com/stretchr/testify/assert"
+	"go.uber.org/mock/gomock"
 )
 
 func TestNewDevicePort(t *testing.T) {
@@ -168,6 +168,9 @@
 			_ = NewController(context.Background(), appMock)
 			dbintf := mocks.NewMockDBIntf(gomock.NewController(t))
 			db = dbintf
+			// Background goroutines can update groups; allow such calls
+			// to prevent gomock from failing after the test completes.
+			dbintf.EXPECT().PutGroup(gomock.Any(), gomock.Any(), gomock.Any(), gomock.Any()).Return(nil).AnyTimes()
 			appMock.EXPECT().ProcessFlowModResultIndication(gomock.Any(), gomock.Any()).Times(1)
 			d.triggerFlowResultNotification(tt.args.cntx, tt.args.cookie, tt.args.flow, tt.args.oper, tt.args.bwDetails, tt.args.err)
 		})
@@ -273,7 +276,12 @@
 			d := &Device{}
 			dbintf := mocks.NewMockDBIntf(gomock.NewController(t))
 			db = dbintf
+			// Expect flow-hash to be written once for this test.
 			dbintf.EXPECT().PutFlowHash(gomock.Any(), gomock.Any(), gomock.Any()).Return(nil).Times(1)
+			// Background goroutines from other tests may update groups;
+			// allow such calls to be no-ops to prevent gomock from failing
+			// after this test completes.
+			dbintf.EXPECT().PutGroup(gomock.Any(), gomock.Any(), gomock.Any(), gomock.Any()).Return(nil).AnyTimes()
 			d.SetFlowHash(tt.args.cntx, tt.args.hash)
 		})
 	}
diff --git a/internal/pkg/controller/modmeter_test.go b/internal/pkg/controller/modmeter_test.go
index fb7df0f..23eb9aa 100644
--- a/internal/pkg/controller/modmeter_test.go
+++ b/internal/pkg/controller/modmeter_test.go
@@ -23,7 +23,8 @@
 	"voltha-go-controller/internal/pkg/of"
 	"voltha-go-controller/internal/test/mocks"
 
-	"github.com/golang/mock/gomock"
+	"go.uber.org/mock/gomock"
+
 	"github.com/stretchr/testify/assert"
 )
 
@@ -66,9 +67,10 @@
 				},
 			}
 			mmt.meter.ID = uint32(2)
-			dbintf := mocks.NewMockDBIntf(gomock.NewController(t))
-			db = dbintf
-			dbintf.EXPECT().DelDeviceMeter(gomock.Any(), gomock.Any(), gomock.Any()).Return(nil).AnyTimes()
+			// Avoid assigning a package-level mock DB here; it can be
+			// invoked by background goroutines from other tests after this
+			// test completes and cause a panic. The ModMeterTask path under
+			// test does not require DB interactions.
 			volthaClientMock.EXPECT().UpdateLogicalDeviceMeterTable(gomock.Any(), gomock.Any()).Return(nil, nil).AnyTimes()
 			err := mmt.Start(tt.args.ctx, tt.args.taskID)
 			assert.Nil(t, err)
diff --git a/internal/pkg/controller/pendingprofiles_test.go b/internal/pkg/controller/pendingprofiles_test.go
index dfb17f6..08df6ab 100644
--- a/internal/pkg/controller/pendingprofiles_test.go
+++ b/internal/pkg/controller/pendingprofiles_test.go
@@ -20,7 +20,7 @@
 	"testing"
 	"voltha-go-controller/internal/test/mocks"
 
-	"github.com/golang/mock/gomock"
+	"go.uber.org/mock/gomock"
 	"github.com/stretchr/testify/assert"
 )
 
