![見出し画像](https://assets.st-note.com/production/uploads/images/28913244/rectangle_large_type_2_53ba3d6098154c2bac6c0494c33809c7.png?width=1200)
WWDC 2020におけるTesting周りについて軽く調べてみた - セッション始まる前のはなし -
WWDC 2020がはじまりましたね。
API Diffsに関しては次のとおりです。
Xcode11.0からのAPI DiffsをみるとXCTestも色々と追加、変更があります。
ここから次についてピックアップして紹介してみたいと思います。
- Skipping Tests
- User Interface Tests
- XCTIssue
Skipping Tests
新規のAPIとして「Skipping Tests」がありますが、これはXcode11.4で追加されたものになります。
それ以外にXcode11.4で追加されたものとして「テストの実行時間の制限」があります。
それらについては、次の記事を参考にしてください。
これらについては次のセッションがあります。
User Interface Tests
UIテストでは、swipeやpressに対して速度を指定することができるようになりそうです。
これによって、もう少し細かい操作ができるようになるかもしれません。
UIテストに関するセッションとしては次があるようです。
ただ今回の追加とは関係がないように思えます。
XCTIssue
今回新たに追加され、現時点で用途は細かく分かってないのはこのXCTIssueです。
上記のドキュメントを見ても、用途は想像しかできないのですが、Testingに関するセッションに、このXCTIssueの話があります。
この上記セッションで表示されているコードをみると、XCTestで自前でアサーションを用意した場合、テストが失敗したときにテストケース側で、どこで失敗したのかがわかりづらくなります(上記セッションのコードの実行っ結果のようになります)。
そこで、独自に作ったアサーションにfileやlineを渡すことをよくします。
これについて以下の書籍に書いてあります。
この追加されたAPIのXCTIssueReference.IssueTypeをみると、色々なタイプがあります。
このセッション情報に書かれているように、テストが失敗時のトリアージということで、よりテストの失敗を追いやすくしてくれるものかもしれません。
どういうものかはセッションを確認したいと思います。
さいごに
Testingに関するセッションについては次があります。
これらに書かれている内容やAPIをみると、今回は「よりテストを早くする、失敗したときにより結果をわかりやすくする」といった方面の強化のようにも思えます。
今年のWWDCも楽しみですね。