{"record":{"id":"6cd77357255877a3","repo":"dotnet/maui","slug":"ui-test-application-path-not-specified-6cd773","errorCode":null,"errorMessage":"UI Test application path not specified.","messagePattern":"UI Test application path not specified\\.","errorType":"exception","errorClass":"Exception","httpStatus":null,"severity":"error","filePath":"eng/devices/ios.cake","lineNumber":226,"sourceCode":"\t\t\t}\n\t\t};\n\t});\n}\n\nvoid ExecutePrepareUITests(string project, string app, string device, string resultsDir, string binDir, string config, string tfm, string rid, string ver, string toolPath, bool headless)\n{\n\tInformation(\"Preparing UI Tests...\");\n\tInformation($\"Testing Device: {device}\");\n\tInformation($\"Testing App Project: {app}\");\n\tInformation($\"USE_NATIVE_AOT: {USE_NATIVE_AOT}\");\n\t\n\tvar testApp = GetTestApplications(app, device, config, tfm, rid).FirstOrDefault();\n\n\tInformation($\"Testing App found: {testApp}\");\n\t\n\tif (string.IsNullOrEmpty(testApp))\n\t{\n\t\tthrow new Exception(\"UI Test application path not specified.\");\n\t}\n\n\tInstallIpa(testApp, \"\", device, resultsDir, ver, toolPath, headless);\n}\n\nvoid ExecuteUITests(string project, string app, string device, string resultsDir, string binDir, string config, string tfm, string rid, string ver, string toolPath)\n{\n\tInformation($\"Results Directory: {resultsDir}\");\n\n\tInformation(\"Build UITests project {0}\", project);\n\n\tvar name = System.IO.Path.GetFileNameWithoutExtension(project);\n\tvar binlog = $\"{binDir}/{name}-{config}-ios.binlog\";\n\tvar resultsFileName = SanitizeTestResultsFilename($\"{name}-{config}-ios-{testFilter}\");\n\tvar appiumLog = $\"{binDir}/appium_ios_{resultsFileName}.log\";\n\n\tDotNetBuild(project, new DotNetBuildSettings\n\t{","sourceCodeStart":208,"sourceCodeEnd":244,"githubUrl":"https://github.com/dotnet/maui/blob/f377ff1c5ee04d334d8a925f50c83a6b7afddf03/eng/devices/ios.cake#L208-L244","documentation":"Thrown in ExecutePrepareUITests when GetTestApplications returns no candidates — the UI test app build (the .app/.ipa for the iOS test host) produced nothing matching the requested config/tfm/rid. This is a build-output discovery failure, not a test failure.","triggerScenarios":"Calling the uitest-prepare target before building the app; building the app project with a different configuration/tfm/rid than passed here; the app build failed silently upstream; GetTestApplications glob not matching the produced bundle extension.","commonSituations":"Configuration mismatch (Debug vs Release) between the build and prepare steps; switching runtime identifiers so output lands under a different rid folder; the app project not set to produce an IPA; a clean wiping the bin dir between build and prepare.","solutions":["Run the app build target before uitest-prepare, using the same --configuration, --tfm, and --rid values.","Inspect the Information line 'Testing App found:' which prints the resolved testApp — if it prints empty, GetTestApplications found nothing.","Verify the app project produces an iOS bundle (.app for simulator, .ipa for device) and that BuildIpa=true where needed.","If USE_NATIVE_AOT is on, confirm configuration is Release (see error 24) since NativeAOT Debug builds are rejected earlier."],"exampleFix":null,"handlingStrategy":"validation","validationCode":"// Verify app output exists before preparing UI tests\nvar testApp = GetTestApplications(app, device, config, tfm, rid).FirstOrDefault();\nif (string.IsNullOrEmpty(testApp))\n    throw new Exception($\"No built app found for {app} ({config}/{tfm}/{rid}). Build the app project first.\");","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Keep configuration/tfm/rid identical between the app build and uitest-prepare.","Confirm the app project emits an iOS bundle (.app/.ipa) for the target.","Run the build target before uitest-prepare in CI."],"tags":["cake","ios","build-artifacts","uitests","configuration"],"backgroundTag":null,"analyzedSha":"f377ff1c5ee04d334d8a925f50c83a6b7afddf03","analyzedAt":"2026-08-13T14:26:18.069Z","schemaVersion":2},"datasetVersion":"2026-08-13T19:17:28.613Z"}