こんにちわ、だいちです。
希望の会社に内定頂き
現在はFlutterの独学勉強を中止し研修に取り組んでおります。
4~5時間格闘したエラーが解決し
関連記事も少なく、Chat-GPTに聞いたり
参考文献を読み漁りと時間がかかったのでこちらに載せておきます。
目次
-開発環境
-1.経緯
-2.原因
-3.SwiftUIテストエラー①_Target_Applicationの確認
-4.SwiftUIテストエラー②_クリーンビルドフォルダの実行とDerived_Dataフォルダのリセット
-5.SwiftUIテストエラー③_IDEPreferLogStreamingの設定
-6.SwiftUIテストエラー④_UITestファイルの作成
-7.全体コード
-参考文献
-最後に
開発環境
・macOS Sonoma 14.5
・Flutter 3.22.2
1.経緯
・テストコードを書くためにTestファイルを取り入れた
・テストを実行したところ下記エラーが発生
testDecrementButton(): No target application path
specified via test configuration〜//以下略
・上記エラーから対策を見つけ試したが
エラーにエラーが重なり複数対策を行った
・調べても対応方法が一致しているものが見つからなかったため
備忘録として残すこととした
・おそらく近道はエラー①と④を行えば解決すると思います。
2.原因
・ターゲットが選択されていない(今回はされていた)
・IDEPreferLogStreamingの設定をしていなかった?
・UITestファイルが作成されていなかった
3.SwiftUIテストエラー①_Target_Applicationの確認
・下記記事を参考に
General > Testing > Target Applicationを確認する
※こちらは問題なく反映されておりました
4.SwiftUIテストエラー②_クリーンビルドフォルダの実行とDerived_Dataフォルダのリセット
・Xcodeメニュー→Product→Clean Build Folderを行う
・再度ビルドする
・Xcodeメニュー→Xcode→Setting→Locations→Derived Dataファイル内から
Your Project Name-bilpftnsyalxpcheydpsonasgusqフォルダを削除
5.SwiftUIテストエラー③_IDEPreferLogStreamingの設定
・上記対応をするとテスト時ではなくビルド時にエラーが発生しました
この辺りからエラーを彷徨います。。。笑
エラー対応②はChat-GPT対応です。たまに悪い仕事しますこいつ笑
Logging Error: Failed to initialize logging system.
Log messages may be missing.
If this issue persists, try setting IDEPreferLogStreaming=YES
in the active scheme actions environment variables.
IDEPreferLogStreamingの環境設定をYESにしろとのこと
・Xcodeメニュー→Xcode→Product→Scheme→Edit Schemeをクリック
・左側のリストからRun→ArgumentsタブからEnvironment Variablesに
Nameに「IDEPreferLogStreaming」、Valueに「YES」を入力する
6.SwiftUIテストエラー④_UITestファイルの作成
・TARGET内のTestsファイルとUITestsファイルを見比べたところ
UITestsファイルのBuild PhasesのCompile Sourceが0になってました。
これによりテストの際にビルドする対象がないというエラーでした。
・Testファイルを右クリック→New File→UI Test Case Class→Next→Next1
・TargetsをUITest(Compile Sourceが0となっていたファイル)にチェック→Create
この処理後にテストすれば成功しました!!!
7.全体コード
今回はありません。
参考文献
ヂまるBlog. 「XCUIApplication()でNo target application path specifiedエラー」. 2024/07,
https://jimaru.blog/programming/swift/no-target-application-path-specified-error/, (参照 2024-07-17)
最後に
・SwiftUIでも日本語のYoutubeや参考文献が少ないイメージがありました
・Chat-GPTだけでも難しい解決があるのも実感しました
・参考にして頂けると幸いです
-
今回はTargetがありファイルがない前提で記事を書いてます。
Targetもファイルもない場合は
XcodeメニューからFile→New→Target→UI Testing Bundleで
作成して下さい ↩