[Swift]XCUITestにおけるCoverageとScreenshotの在り処

XCUITestでは、自動的にスクリーンショットを取得してくれます。それがどこに保存されるか?というと、以下のように Attachments に保存されました。保存されるファイル名に統一感がないのですが、 plist にテストケースとスクショの結びつけを保存しているのですね。テスト結果をXcode以外からうまいこと見ることできないかなーと思ってたのですが、すんなりホイとはできなさそうな感じです。

/Users/user-name/Library/Developer/Xcode/DerivedData/TestProject-randome-values/Logs/Test/Attachments

あと、スクショのタイミングを任意なタイミングではできないので画像比較のためにそれを使う、というのには使えなさそうな感じです。んー。テスト失敗した時の参考になる以上ではちょっと使いにくい感じです。

ついでに、XCUITestでも、カバレッジを取得できる模様?ちゃんと計測はしていないのですが、うまいこと使えれば使えそうでした。

そのほか

XCUITest、いろいろ調べてみましたが通知のダイアログなどのシステム設定をリセットする手段ないので、ちょっとテストケースの管理に難しさを感じました。
ちなみに、wait/sleepは適度にwaitしてくれるので、さほど気にしすぎなくても良いのですね。 waitUntil のようなメソッドを定義したのですが、それを使うのは限定的になりそう。retryが内包されているのはGUIから操作するテストケースではありですね。Exceptionを出す種類も、 XCTAssert 系以外にもいくつかあったのですが、ここはXCTestの頃からそのまま使っているもののようですね。

このfastlaneのsnapshotも、このXcode7(XCUITest)対応したみたいですね。
https://github.com/fastlane/snapshot

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中