WebフロントエンドE2Eテスト 実践編

自己紹介

E2Eテストとは

(略)

最近やったこと

TravisCI上でProtractorでSauseLabテスト

構成

構成

  1. TravisCI上に仮想環境作成
  2. TravisCIからProtractorでSauseLab呼ぶ
  3. SauseLabからTravisCI上の仮想環境に繋げる
  4. SauseLabはChrome, Firefox, IE, Safariでテスト

感想

意外と行ける

問題点

問題点

  1. TravisCI上のデバッグ辛い
  2. multiCapabilitiesでの動作が怪しい
  3. 設定ファイルのDRY化むずい
  4. IE遅い
  5. Safari謎い
  6. OSに手入れたい

TravisCI上のデバッグ辛い

TravisCI上のデバッグ辛い

  1. ごにょごにょする方法教えてもらった
  2. まだ試してないけどやっぱりつらい方法だった

multiCapabilitiesでの動作が怪しい

multiCapabilitiesでの動作が怪しい

  1. この構成の場合multiCapabilitiesが怪しい
  2. SauceLab上のmultiCapabilitiesが変?
  3. ローカルではうまくいった

設定ファイルのDRY化むずい

設定ファイルのDRY化むずい

  1. ローカルとこの構成で設定ファイルを共通化するのが辛い
  2. multiCapabilitiesやめたのでなおさら辛い
  3. とりあえず一旦設定ファイルの変更を減らす方向で対応
  4. 設定ファイル内で外部ファイル読んだりできるのかな(試してないけどいけそうな気はする)

IE遅い

IE遅い

  1. 実行時間がIE11でも1.5倍くらいかかる
  2. ユーザが操作したほうが早いレベル
  3. 他で聞いてもやっぱり遅いとのこと
  4. 動き自体はそこまで変じゃない

Safari謎い

Safari謎い

  1. Protractorのサンプルコードが動かないレベル
  2. ローカルに環境作るのも辛い(ヘタするとIEより辛い)
  3. 他で聞いたら「そもそもSafariでテストとか必要なの?」とか言われるレベル
  4. multiCapabilitiesで動かないことも多かった
  5. ちゃんとかけば一応安定はする

OSに手入れたい

OSに手入れたい

  1. TLSでProxy使いたくて証明書入れたかったけど断念
  2. 他にもSauceLab上のOSに手入れたいけどできるのかな。。。

ご清聴ありがとうございました