Detect issues like logic failures, UI problems, and performance regressions by running tests on your app.

Posts under Testing tag

62 Posts

Post

Replies

Boosts

Views

Activity

Unit tests fails to run on Xcode 16, but works fine on Xcode 15.4 and older Xcodes
Dear Apple & Community, I am encountering an issue while running my Unit tests on Xcode 16. I'm receiving the following error in the debugger area. Error loading /var/containers/Bundle/Application/FF057050-1BCC-49D8-9D3F-A3731E30F354/<Project_name>.app/PlugIns/<Project_name>.xctest/<Project_name>Tests (133): dlopen(/var/containers/Bundle/Application/FF057050-1BCC-49D8-9D3F-A3731E30F354/<Project_name>.app/PlugIns/<Project_name>.xctest/<Project_name>Tests, 0x0109): Symbol not found: _$s5Model11AccountDataV7TestingE4mockACvau Referenced from: <4027FFAF-5C6C-3F8A-9862-648D3D4A1257> /private/var/containers/Bundle/Application/FF057050-1BCC-49D8-9D3F-A3731E30F354/<Project_name>.app/PlugIns/<Project_name>.xctest/<Project_name>Tests Expected in: <406DF294-634D-3D8A-8E59-BEE455BA96AF> /System/Developer/Library/Frameworks/Testing.framework/Testing Failed to load test bundle from file:///private/var/containers/Bundle/Application/FF057050-1BCC-49D8-9D3F-A3731E30F354/<Project_name>.app/PlugIns/<Project_name>.xctest/: Error Domain=NSCocoaErrorDomain Code=3588 .....
2
0
409
Mar ’25
Testing XPC Code With an Anonymous Listener using Low Level C APIs
I have implemented a XPC server using C APIs. I want to write unit tests for it. I came across the following links that use Swift APIs- Testing and Debugging XPC Code With an Anonymous Listener TN3113 I have tried to write anonymous listener code and the client code in the same file, using C APIs- #include <unistd.h> #include <syslog.h> #include <pthread.h> #include <stdio.h> #include <xpc/xpc.h> #include <xpc/connection.h> #include <CoreFoundation/CoreFoundation.h> static void Anon_Client_Connection_Handler(xpc_connection_t connection, xpc_object_t clientMessage) { const char *description = xpc_copy_description(clientMessage); printf("Event received - %s\n", description); free((void *)description); xpc_type_t type = xpc_get_type(clientMessage); if (type == XPC_TYPE_ERROR) { if (clientMessage == XPC_ERROR_CONNECTION_INVALID) printf("Client_Connection_Handler received invalid connection n"); else if (clientMessage == XPC_ERROR_TERMINATION_IMMINENT) printf("Client_Connection_Handler received termination notice n"); } else { const char *clientMsg = xpc_dictionary_get_string(clientMessage, "message"); printf("Received from client: %s ", clientMsg); } } static void Anon_Listener_Connection_Handler(xpc_connection_t connection) { printf("Anon_Listener_Connection_Handler called, setting up event handler \n"); xpc_connection_set_event_handler(connection, ^(xpc_object_t clientMessage) { printf("Processing the connection! \n"); Anon_Client_Connection_Handler(connection, clientMessage); }); xpc_connection_resume(connection); } int main(int argc, const char *argv[]) { xpc_connection_t anon_listener = xpc_connection_create(NULL, NULL); xpc_connection_set_event_handler(anon_listener, ^(xpc_object_t clientConnection) { printf("Client tried to connect \n"); Anon_Listener_Connection_Handler(clientConnection); }); xpc_connection_resume(anon_listener); printf("\nINFO Anonymous connection resumed"); xpc_object_t anon_endpoint = xpc_endpoint_create(anon_listener); xpc_connection_t clientConnection = xpc_connection_create_from_endpoint(anon_endpoint); xpc_object_t message = xpc_dictionary_create(NULL, NULL, 0); xpc_dictionary_set_string(message, "message", "client's message"); xpc_connection_send_message_with_reply(clientConnection, message, dispatch_get_main_queue(), ^(xpc_object_t event) { printf("\nINFO inside reply"); const char *description = xpc_copy_description(event); printf("\nINFO %s",description); free((void *)description); }); xpc_release(message); xpc_release(anon_listener); printf("\nINFO Releasing listener"); xpc_release(anon_endpoint); printf("\nINFO Releasing endpoint"); // dispatch_main(); return 0; } and this is the output I get INFO Anonymous connection resumed INFO Releasing listener INFO Releasing endpoint I am not able to connect to the client and exchange messages. Where am I going wrong?
1
1
462
Mar ’25