diff --git a/tests/test-server-utils/e-test-server-utils.c b/tests/test-server-utils/e-test-server-utils.c
index 9c5b7d0..9a2d706 100644
--- a/tests/test-server-utils/e-test-server-utils.c
+++ b/tests/test-server-utils/e-test-server-utils.c
@@ -114,13 +114,16 @@ e_test_server_utils_source_added (ESourceRegistry *registry,
 		if (g_strcmp0 (e_source_get_uid (source), ADDRESS_BOOK_SOURCE_UID) != 0)
 			return;
 
-		pair->fixture->service.book_client = e_book_client_new (source, &error);
+		if (g_getenv ("DEBUG_DIRECT") != NULL)
+			pair->fixture->service.book_client = (EBookClient *)
+				e_book_client_connect_direct_sync (pair->fixture->registry, source, NULL, &error);
+		else
+			pair->fixture->service.book_client = (EBookClient *)
+				e_book_client_connect_sync (source, NULL, &error);
+
 		if (!pair->fixture->service.book_client)
 			g_error ("Unable to create the test book: %s", error->message);
 
-		if (!e_client_open_sync (E_CLIENT (pair->fixture->service.book_client), FALSE, NULL, &error))
-			g_error ("Unable to open book client: %s", error->message);
-
 		break;
 
 	case E_TEST_SERVER_DEPRECATED_ADDRESS_BOOK:
@@ -140,15 +143,12 @@ e_test_server_utils_source_added (ESourceRegistry *registry,
 		if (g_strcmp0 (e_source_get_uid (source), CALENDAR_SOURCE_UID) != 0)
 			return;
 
-		pair->fixture->service.calendar_client = e_cal_client_new (source,
-			pair->closure->calendar_source_type,
-			&error);
+		pair->fixture->service.calendar_client = (ECalClient *)
+			e_cal_client_connect_sync (source,
+						   pair->closure->calendar_source_type, NULL, &error);
 		if (!pair->fixture->service.calendar_client)
 			g_error ("Unable to create the test calendar: %s", error->message);
 
-		if (!e_client_open_sync (E_CLIENT (pair->fixture->service.calendar_client), FALSE, NULL, &error))
-			g_error ("Unable to open calendar client: %s", error->message);
-
 		break;
 
 	case E_TEST_SERVER_DEPRECATED_CALENDAR:
