見出し画像

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も楽しみですね。




この記事が気に入ったらサポートをしてみませんか?