Swift

XCUIApplication()でNo target application path specifiedエラー

2024-07-10

iOSアプリの開発を楽しんでいるケンヂまるです。

XCTestのUIテストで"No target application path specified via test configuration: <XCTestConfiguration: 0x10300e270>"というエラーになってしまい数日間悩まされましたが、ようやく解決できました。

解決方法

"No target application path specified via test configuration: <XCTestConfiguration: 0x10300e270>"というエラーは、XCodeのTARGETSからテスト用に作成されているターゲットを選択肢、General > Testing > Target Applicationの選択をNoneではなくテスト対象のターゲットを設定することで解消します。

ここでは例として、Noneに設定されていたのを、UITestSampleにしました。

するとテストでエラーにならなくなりました。

エラー回避方法

そもそもなぜケンヂまるの環境でGeneral > Testing > Target Applicationの選択がNoneになっていたのかというと、UI Testing Bundle作成時に Target to be Testedでテスト対象にしたいターゲットを選択していなかったからでした。

ユニットテストのターゲットにUIテストを追加…これもエラーのもと

他にも、既にあるユニットテストのターゲットの中にUIテストを作ろうとしても、同様にエラーになってしまいます。

ユニットテスト用に作成したターゲットではGeneral > Testing > Host Applicationの設定が選択できるのに対して、UIテストではGeneral > Testing > Target Applicationの設定が選択できるようになっています。

そのためTarget Applicationの設定をしたつもりでも、実はその設定はHost Applicationに対するものであって、Target Applicationはできていなかったり。そんな状態で設定できた気になってUIテストを実行すると、やはりエラーになるわけです。

ユニットテストとUIテストは別のターゲットで作成しましょう。

-Swift

© 2024 ヂまるBlog