split up C# tests into separate processes
diff --git a/src/csharp/tests.json b/src/csharp/tests.json
new file mode 100644
index 0000000..4aa9366
--- /dev/null
+++ b/src/csharp/tests.json
@@ -0,0 +1,45 @@
+{
+  "assemblies": [
+    "Grpc.Core.Tests",
+    "Grpc.Examples.Tests",
+    "Grpc.HealthCheck.Tests",
+    "Grpc.IntegrationTesting"
+  ],
+  "tests": [
+    "Grpc.Core.Internal.Tests.AsyncCallTest",
+    "Grpc.Core.Internal.Tests.ChannelArgsSafeHandleTest",
+    "Grpc.Core.Internal.Tests.CompletionQueueEventTest",
+    "Grpc.Core.Internal.Tests.CompletionQueueSafeHandleTest",
+    "Grpc.Core.Internal.Tests.MetadataArraySafeHandleTest",
+    "Grpc.Core.Internal.Tests.TimespecTest",
+    "Grpc.Core.Tests.CallCredentialsTest",
+    "Grpc.Core.Tests.CallOptionsTest",
+    "Grpc.Core.Tests.ChannelCredentialsTest",
+    "Grpc.Core.Tests.ChannelOptionsTest",
+    "Grpc.Core.Tests.ChannelTest",
+    "Grpc.Core.Tests.ClientServerTest",
+    "Grpc.Core.Tests.CompressionTest",
+    "Grpc.Core.Tests.ContextPropagationTest",
+    "Grpc.Core.Tests.GrpcEnvironmentTest",
+    "Grpc.Core.Tests.MarshallingErrorsTest",
+    "Grpc.Core.Tests.MetadataTest",
+    "Grpc.Core.Tests.NUnitVersionTest",
+    "Grpc.Core.Tests.PerformanceTest",
+    "Grpc.Core.Tests.PInvokeTest",
+    "Grpc.Core.Tests.ResponseHeadersTest",
+    "Grpc.Core.Tests.SanityTest",
+    "Grpc.Core.Tests.ServerTest",
+    "Grpc.Core.Tests.ShutdownTest",
+    "Grpc.Core.Tests.TimeoutsTest",
+    "Grpc.Core.Tests.UserAgentStringTest",
+    "Math.Tests.MathClientServerTest",
+    "Grpc.HealthCheck.Tests.HealthClientServerTest",
+    "Grpc.HealthCheck.Tests.HealthServiceImplTest",
+    "Grpc.IntegrationTesting.HeaderInterceptorTest",
+    "Grpc.IntegrationTesting.HistogramTest",
+    "Grpc.IntegrationTesting.InteropClientServerTest",
+    "Grpc.IntegrationTesting.MetadataCredentialsTest",
+    "Grpc.IntegrationTesting.RunnerClientServerTest",
+    "Grpc.IntegrationTesting.SslCredentialsTest"
+  ]
+}
\ No newline at end of file