fix some comments
diff --git a/interop/server/server.go b/interop/server/server.go
index 3c611cf..36ebcb6 100644
--- a/interop/server/server.go
+++ b/interop/server/server.go
@@ -68,6 +68,6 @@
 		opts = []grpc.ServerOption{grpc.Creds(creds)}
 	}
 	server := grpc.NewServer(opts...)
-	testpb.RegisterTestServiceServer(server, &interop.TestServer{})
+	testpb.RegisterTestServiceServer(server, interop.NewTestServer())
 	server.Serve(lis)
 }
diff --git a/interop/test_utils.go b/interop/test_utils.go
index 1a49a5e..6a73d6f 100644
--- a/interop/test_utils.go
+++ b/interop/test_utils.go
@@ -242,7 +242,7 @@
 	grpclog.Println("Emptystream done")
 }
 
-// DoTimeoutSleepingServer performs an RPC on a sleep server which causes RPC timeout.
+// DoTimeoutOnSleepingServer performs an RPC on a sleep server which causes RPC timeout.
 func DoTimeoutOnSleepingServer(tc testpb.TestServiceClient) {
 	ctx, _ := context.WithTimeout(context.Background(), 1*time.Millisecond)
 	stream, err := tc.FullDuplexCall(ctx)
@@ -469,10 +469,15 @@
 	grpclog.Println("CancelAfterFirstResponse done")
 }
 
-type TestServer struct {
+type testServer struct {
 }
 
-func (s *TestServer) EmptyCall(ctx context.Context, in *testpb.Empty) (*testpb.Empty, error) {
+// NewTestServer creates a test server for test service.
+func NewTestServer() testpb.TestServiceServer {
+	return &testServer{}
+}
+
+func (s *testServer) EmptyCall(ctx context.Context, in *testpb.Empty) (*testpb.Empty, error) {
 	return new(testpb.Empty), nil
 }
 
@@ -494,7 +499,7 @@
 	}, nil
 }
 
-func (s *TestServer) UnaryCall(ctx context.Context, in *testpb.SimpleRequest) (*testpb.SimpleResponse, error) {
+func (s *testServer) UnaryCall(ctx context.Context, in *testpb.SimpleRequest) (*testpb.SimpleResponse, error) {
 	pl, err := serverNewPayload(in.GetResponseType(), in.GetResponseSize())
 	if err != nil {
 		return nil, err
@@ -504,7 +509,7 @@
 	}, nil
 }
 
-func (s *TestServer) StreamingOutputCall(args *testpb.StreamingOutputCallRequest, stream testpb.TestService_StreamingOutputCallServer) error {
+func (s *testServer) StreamingOutputCall(args *testpb.StreamingOutputCallRequest, stream testpb.TestService_StreamingOutputCallServer) error {
 	cs := args.GetResponseParameters()
 	for _, c := range cs {
 		if us := c.GetIntervalUs(); us > 0 {
@@ -523,7 +528,7 @@
 	return nil
 }
 
-func (s *TestServer) StreamingInputCall(stream testpb.TestService_StreamingInputCallServer) error {
+func (s *testServer) StreamingInputCall(stream testpb.TestService_StreamingInputCallServer) error {
 	var sum int
 	for {
 		in, err := stream.Recv()
@@ -540,7 +545,7 @@
 	}
 }
 
-func (s *TestServer) FullDuplexCall(stream testpb.TestService_FullDuplexCallServer) error {
+func (s *testServer) FullDuplexCall(stream testpb.TestService_FullDuplexCallServer) error {
 	for {
 		in, err := stream.Recv()
 		if err == io.EOF {
@@ -568,7 +573,7 @@
 	}
 }
 
-func (s *TestServer) HalfDuplexCall(stream testpb.TestService_HalfDuplexCallServer) error {
+func (s *testServer) HalfDuplexCall(stream testpb.TestService_HalfDuplexCallServer) error {
 	var msgBuf []*testpb.StreamingOutputCallRequest
 	for {
 		in, err := stream.Recv()