RxSwfitを採用したプロジェクトにおけるテストパターン #iosdcrc #b

https://fortee.jp/iosdc-japan-2018/proposal/cf9c964e-c1a5-4c70-8a89-02f1a10b0bfe RxSwiftを採用したプロジェクトでは、多くの関数をObservableを返す関数として実装します。Observableを返す関数は通常の関数と違い、ユニットテストに少し工夫が必要になります。 このトークでは、日々Observableな関数に対してユニットテストを書いている中で見えてきたテストのパターンについてご紹介します。 続きを読む
1
crea @crea_io

#iosdcrc #b お次はRxSwiftでテストしていく話...!

2018-09-18 20:21:52
🐊𝕏 @alligator_tama

RxSwiftのテストの話ちょっと気になってた。RxSwift弱者なので #iOSDCRC #b

2018-09-18 20:23:58
crea @crea_io

#iosdcrc #b RxTest, RxBlocking → RxSwift入れると勝手に入ってくるやつって認識をこの15分で改めるぞ...

2018-09-18 20:24:47
crea @crea_io

#iosdcrc #b VM、APIクライアントのテストの書き方!

2018-09-18 20:25:37
椎名夏希 @417_72ki

RxBlockingは使うけどRxTestって使った記憶が無いなー🤔 #iosdcrc #b

2018-09-18 20:25:37
crea @crea_io

#iosdcrc #b ログイン画面のVM実装。わかりみ、このコードコピペで弊社のコードで稼働しそう。

2018-09-18 20:26:50
yukin01 @_yukin01

仮想時間で指定した時刻にイベントが流れる #iosdcrc #b

2018-09-18 20:30:41
Kuniwak @orga_chem

これ本当に TestSchedular 必要なのかな。自分なら、ValidationService に切り出してテストする方を選ぶ気がする。状態も含めてテストしたいなら、ValidationService を内部的に使う Model に移してテストする気がする #iosdcrc #b

2018-09-18 20:31:52
佐藤タケシ 【Amazonにて「一冊でマスター!Swift Concurrency入門」発売中】 @hatakenokakashi

結構バリデーションのテスト楽にかけそう。 食わず嫌いだけだったのかも #iosdcrc #b

2018-09-18 20:32:29
Kuniwak @orga_chem

自分の意見では、TestSchedular が本当の意味で必要なのは Virtual Time を扱いたいときとか Operator を自作するときだけだと思っていて、それ以外では Relay 使うだけで大体実現できるんだよな… #iosdcrc #b twitter.com/orga_chem/stat…

2018-09-18 20:32:55
crea @crea_io

#iosdcrc #b リクエストをスタブ化し、正しいURLにリクエストできてるかテストしたい。結果として返るイベントも検証したい

2018-09-18 20:33:14
佐藤タケシ 【Amazonにて「一冊でマスター!Swift Concurrency入門」発売中】 @hatakenokakashi

RxBlockingを使う スレッドをブロックするのでイベントが非同期発行されても同期的な書き方でできる #iosdcrc #b

2018-09-18 20:34:07
椎名夏希 @417_72ki

Mockingjay先週の俺コンでも出てたな #iosdcrc #b

2018-09-18 20:34:42
サ/ (○=×=△=□) @kz56cd

RxBlocking、こういうのReactiveSwift使ってる時にほしかったな、あるのかな #iosdcrc #b 非同期テスト書くの大変だった

2018-09-18 20:34:55
ダンボー田中📦 @ktanaka117

Mockingjayの話してそう。 Mockingjayは好きなのだけど、メンテされてないのがアレで、今日OHHTTPStubs使う方針にしてきた。 #iosdcrc #b

2018-09-18 20:35:13
まつおか @matsuokah_

RxTestはタップ連打(つまり、イベント)とかをエミュレートとかには良さそうだけど、ロジックは切り離して、シンプルなテストにしておきたいなーと自分は思う。最終的にストリームのテストというUnitTestの上位のテストという認識で合ってるのかな? #iOSDCRC #b

2018-09-18 20:36:14
Kuniwak @orga_chem

これは本当にお気持ちなんですが、Mockingjay、設計がよくなくても使えてしまうので、設計改善へのフィードバックが弱くなるという欠点があるので容量にはご注意くださいと言いたい #iosdcrc #b

2018-09-18 20:36:31