diff --git a/controller/api/user_test.go b/controller/api/user_test.go
index 93e37da6c5d8ec84204c1ecf49f49e002c182c20..edfb703d39db2473093139264eca102191283097 100644
--- a/controller/api/user_test.go
+++ b/controller/api/user_test.go
@@ -6,6 +6,7 @@ import (
 	"testing"
 
 	apb "code.fbi.h-da.de/danet/gosdn/api/go/gosdn/rbac"
+	"github.com/google/uuid"
 )
 
 func TestCreateUsers(t *testing.T) {
@@ -86,7 +87,7 @@ func TestGetUser(t *testing.T) {
 			args: args{
 				ctx:  context.TODO(),
 				addr: testAPIEndpoint,
-				name: "foo",
+				name: "foos",
 			},
 			want:    nil,
 			wantErr: true,
@@ -100,6 +101,7 @@ func TestGetUser(t *testing.T) {
 				t.Errorf("GetUser() error = %v, wantErr %v", err, tt.wantErr)
 				return
 			}
+
 			if got != nil && got.Status == tt.want.Status {
 				if got.User.Name != tt.want.User.Name || got.User.Id != tt.want.User.Id {
 					t.Errorf("GetUser() = %v, want %v", got, tt.want)
@@ -114,6 +116,11 @@ func TestGetUser(t *testing.T) {
 }
 
 func TestGetAllUsers(t *testing.T) {
+	err := clearAndCreateAuthTestSetup()
+	if err != nil {
+		t.Fatalf("%v", err)
+	}
+
 	type args struct {
 		ctx  context.Context
 		addr string
@@ -122,10 +129,27 @@ func TestGetAllUsers(t *testing.T) {
 		name    string
 		args    args
 		want    *apb.GetUsersResponse
+		wantLen int
 		wantErr bool
 	}{
-		// TODO: Add test cases.
+		{
+			name: "default get users",
+			args: args{
+				ctx:  context.TODO(),
+				addr: testAPIEndpoint,
+			},
+			want: &apb.GetUsersResponse{
+				Status: apb.Status_STATUS_OK,
+				User: []*apb.User{
+					{Name: "testAdmin"},
+					{Name: "testUser"},
+					{Name: "testRandom"}},
+			},
+			wantLen: 3,
+			wantErr: false,
+		},
 	}
+
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
 			got, err := GetAllUsers(tt.args.ctx, tt.args.addr)
@@ -133,8 +157,24 @@ func TestGetAllUsers(t *testing.T) {
 				t.Errorf("GetAllUsers() error = %v, wantErr %v", err, tt.wantErr)
 				return
 			}
-			if !reflect.DeepEqual(got, tt.want) {
-				t.Errorf("GetAllUsers() = %v, want %v", got, tt.want)
+
+			if got != nil && got.Status == apb.Status_STATUS_OK {
+				if len(got.User) != tt.wantLen {
+					t.Errorf("User.GetUsers() = %v, want %v", got, tt.want)
+				}
+
+				for _, gotU := range got.User {
+					containsExpected := false
+					for _, wantU := range tt.want.User {
+						if gotU.Name == wantU.Name {
+							containsExpected = true
+							break
+						}
+					}
+					if !containsExpected {
+						t.Errorf("User.GetUsers() = %v, want %v", got, tt.want)
+					}
+				}
 			}
 		})
 	}
@@ -152,8 +192,40 @@ func TestUpdateUsers(t *testing.T) {
 		want    *apb.UpdateUsersResponse
 		wantErr bool
 	}{
-		// TODO: Add test cases.
+		{
+			name: "default update user",
+			args: args{
+				ctx:  context.TODO(),
+				addr: testAPIEndpoint,
+				users: []*apb.User{
+					{
+						Id:   adminID,
+						Name: "sth Else",
+					},
+				},
+			},
+			want: &apb.UpdateUsersResponse{
+				Status: apb.Status_STATUS_OK,
+			},
+			wantErr: false,
+		},
+		{
+			name: "error update user",
+			args: args{
+				ctx:  context.TODO(),
+				addr: testAPIEndpoint,
+				users: []*apb.User{
+					{
+						Id:   uuid.NewString(),
+						Name: "not a User",
+					},
+				},
+			},
+			want:    nil,
+			wantErr: true,
+		},
 	}
+
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
 			got, err := UpdateUsers(tt.args.ctx, tt.args.addr, tt.args.users)
@@ -161,7 +233,7 @@ func TestUpdateUsers(t *testing.T) {
 				t.Errorf("UpdateUsers() error = %v, wantErr %v", err, tt.wantErr)
 				return
 			}
-			if !reflect.DeepEqual(got, tt.want) {
+			if got != nil && got.Status != tt.want.Status {
 				t.Errorf("UpdateUsers() = %v, want %v", got, tt.want)
 			}
 		})
@@ -180,7 +252,28 @@ func TestDeleteUsers(t *testing.T) {
 		want    *apb.DeleteUsersResponse
 		wantErr bool
 	}{
-		// TODO: Add test cases.
+		{
+			name: "default delete users",
+			args: args{
+				ctx:       context.TODO(),
+				addr:      testAPIEndpoint,
+				userNames: []string{"testUser", "testAdmin"},
+			},
+			want: &apb.DeleteUsersResponse{
+				Status: apb.Status_STATUS_OK,
+			},
+			wantErr: false,
+		},
+		{
+			name: "error delete users",
+			args: args{
+				ctx:       context.TODO(),
+				addr:      testAPIEndpoint,
+				userNames: []string{"no User"},
+			},
+			want:    nil,
+			wantErr: true,
+		},
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
@@ -189,8 +282,9 @@ func TestDeleteUsers(t *testing.T) {
 				t.Errorf("DeleteUsers() error = %v, wantErr %v", err, tt.wantErr)
 				return
 			}
-			if !reflect.DeepEqual(got, tt.want) {
-				t.Errorf("DeleteUsers() = %v, want %v", got, tt.want)
+
+			if got != nil && got.Status != tt.want.Status {
+				t.Errorf("User.DeleteUsers() = %v, want %v", got, tt.want)
 			}
 		})
 	}
diff --git a/controller/northbound/server/user_test.go b/controller/northbound/server/user_test.go
index d0c23a8366b4d3e22652e8d9d41ac0257fd4a56f..6611486e18eab780b319b4c10db8f0d8645d838d 100644
--- a/controller/northbound/server/user_test.go
+++ b/controller/northbound/server/user_test.go
@@ -167,6 +167,7 @@ func TestUser_GetUsers(t *testing.T) {
 							break
 						}
 					}
+
 					if !containsExpected {
 						t.Errorf("User.GetUsers() = %v, want %v", got, tt.want)
 					}
@@ -222,6 +223,7 @@ func TestUser_UpdateUsers(t *testing.T) {
 				t.Errorf("User.UpdateUsers() error = %v, wantErr %v", err, tt.wantErr)
 				return
 			}
+
 			if got != nil && got.Status != tt.want.Status {
 				t.Errorf("User.UpdateUsers() = %v, want %v", got, tt.want)
 			}
@@ -265,6 +267,7 @@ func TestUser_DeleteUsers(t *testing.T) {
 				t.Errorf("User.DeleteUsers() error = %v, wantErr %v", err, tt.wantErr)
 				return
 			}
+
 			if got != nil && got.Status != tt.want.Status {
 				t.Errorf("User.DeleteUsers() = %v, want %v", got, tt.want)
 			}