Slide 1

Slide 1 text

最近のMagicPodまとめ 2023.4.26

Slide 2

Slide 2 text

About me • 伊藤 望 (Ito Nozomi) • MagicPod CEO • ⾃動テストツール歴:約13年 • Seleniumコミュニティ主宰 • Twitter:@ito_nozomi

Slide 3

Slide 3 text

MagicPod • Web & モバイルアプリのE2Eテスト⾃動化SasS • ノーコードで簡単にテスト作成 • 豊富なコマンドと柔軟性とメンテナンス性が強み @MagicPodJP

Slide 4

Slide 4 text

エキスパートが作ったテストツール 著者 翻訳者 コミッター

Slide 5

Slide 5 text

ユーザー様のブログ記事‧発表 MagicPod実⾏後の本番デプロイを ⾃動化するための⾃作GitHub Actions みてねのE2E⾃動テスト導⼊戦略 アプリのテストに MagicPodを導⼊している話 【インターンレポート】⾃動テストを 実装したら衝撃を受けた学⽣の話 Ubieのアプリ開発を⽀える MagicPodを使った⾃動テスト テスト⾃動化初⼼者がノーコードツール 「MagicPod」でテスト⾃動化に挑戦してみた

Slide 6

Slide 6 text

1. 最近の開発まとめ 2. 今後の展望 Agenda

Slide 7

Slide 7 text

1. 最近の開発まとめ 2. 今後の展望

Slide 8

Slide 8 text

編集履歴のサポート(2⽉) • テストケース & 共有ステップの編集履歴が⾒られるように 1. 最近の開発まとめ

Slide 9

Slide 9 text

編集履歴のサポート(2⽉) • テスト中のUI要素のロケーター変更も追跡 1. 最近の開発まとめ

Slide 10

Slide 10 text

編集履歴のサポート(2⽉) • ⾃動保存 & コメントを付けて保存 - 基本はリアルタイム⾃動保存 - 履歴が増えすぎないよう、近い時間のものは⾃動でおまとめ - 意味のある作業単位でコメントをつけて保存も可能 1. 最近の開発まとめ

Slide 11

Slide 11 text

編集履歴 ‒ 制限事項 • 履歴はテストケース‧共有ステップごとに保持 • 共有変数の値など、履歴保存未対応のデータも 1. 最近の開発まとめ

Slide 12

Slide 12 text

クリック操作で要素選択(1⽉) • ドラッグ&ドロップよりもテスト作成が⼿軽に 1. 最近の開発まとめ

Slide 13

Slide 13 text

「失敗時の動作」オプション(4⽉) • 「確認」コマンドが失敗してもテストを続け、 最後にエラーをまとめて確認可能に 1. 最近の開発まとめ

Slide 14

Slide 14 text

「失敗時の動作」オプション(4⽉) 1. 最近の開発まとめ

Slide 15

Slide 15 text

ステップのコメントアウト(11⽉) • 不具合のある部分を⼀時的にスキップ、などの⽤途に 1. 最近の開発まとめ

Slide 16

Slide 16 text

コマンドの⾃動修復(2⽉) • 要素ロケーターだけでなくコマンドの修復も提案 1. 最近の開発まとめ

Slide 17

Slide 17 text

コマンド⾃動修復 ‒ 発動タイミング 他の要素に隠れていて 「クリック」するとエラーになるWeb要素 1. 最近の開発まとめ エラーが出ない 「指定クリック」を提案

Slide 18

Slide 18 text

コマンド⾃動修復 ‒ 発動タイミング Xcode(?)の不具合で 「タップ」するとエラーになるモバイル要素 1. 最近の開発まとめ エラーが出ない 「指定タップ」を提案

Slide 19

Slide 19 text

コマンド⾃動修復 ‒ 今後の可能性 1. 最近の開発まとめ 仕組みを流⽤し、 将来的にもっと⾊々な⾃動修復ができるはず!

Slide 20

Slide 20 text

1. 最近の開発まとめ 例えば突然現れたダイアログ 「YES」をタップ ダイアログがあれば 「YES」をタップ とか コマンド追加して 修復する提案 https://www.geeksforgeeks.org/how-to-close-alert-dialog-box-in-android-programmatically/

Slide 21

Slide 21 text

1. 最近の開発まとめ 例えばUI構成の変更 「Language」をタップ の追加を提案

Slide 22

Slide 22 text

テスト終了時Webプッシュ通知(4⽉) • 別ウィンドウで作業していても、テスト実⾏終了を通知 (テスト編集画⾯からの実⾏のみ) • 端末起動時や端末終了前にも通知 1. 最近の開発まとめ

Slide 23

Slide 23 text

プロジェクト間テストコピー(11⽉) • プロジェクトの分割や統合が容易に • 編集‧実⾏履歴はコピーされません 1. 最近の開発まとめ

Slide 24

Slide 24 text

ブラウザテスト 1. 最近の開発まとめ

Slide 25

Slide 25 text

Chrome拡張有効状態でのテスト(1⽉) • Chrome拡張⾃体の操作はできません 1. 最近の開発まとめ ‒ ブラウザテスト

Slide 26

Slide 26 text

ダウンロードファイルの中⾝を取得(1⽉) • ダウンロードしたファイルの中⾝の値チェックなどが可能に • テキストファイル限定 1. 最近の開発まとめ ‒ ブラウザテスト

Slide 27

Slide 27 text

Cookieの値をセット(2⽉) • 裏で保持しているユーザー情報などをテスト時に書き換え可能に 1. 最近の開発まとめ ‒ ブラウザテスト

Slide 28

Slide 28 text

モバイルアプリテスト 1. 最近の開発まとめ

Slide 29

Slide 29 text

位置情報のリアルタイム変更(1⽉) • テスト内で移動する操作の⾃動化が可能に • 地図‧ルート案内‧タクシー‧宅配‧スポーツなどのアプリに 1. 最近の開発まとめ ‒ モバイルアプリテスト

Slide 30

Slide 30 text

キャプチャ不可の画⾯のテスト(3⽉) • ⾦融系のAndroidアプリなどに多い 1. 最近の開発まとめ ‒ モバイルアプリテスト https://sp7pc.com/google/android/42771

Slide 31

Slide 31 text

キャプチャ不可の画⾯のテスト(3⽉) 1. 最近の開発まとめ ‒ モバイルアプリテスト • 画像は真っ暗だが、テストは無理やり作れる

Slide 32

Slide 32 text

iOSとAndroidでテスト共通化(3⽉) • accessbility idを使うことで実現可能 • 両アプリでidが⼀致するよう、綿密なアプリ設計が必要 1. 最近の開発まとめ ‒ モバイルアプリテスト

Slide 33

Slide 33 text

その他の改善 • 削除されたUIを使⽤しているテストに警告マークを表⽰ • さまざまなページのデザイン改善 • テスト結果を複数チャネルに⼀度にSlack通知 • 「表⽰されるまでスクロール」に「⾃動」オプションを追加 • 「クリックしてファイルアップロード」の複数ファイル対応 • 複数の⾃動修復結果の⼀括承認 1. 最近の開発まとめ

Slide 34

Slide 34 text

1. 最近の開発まとめ 2. 今後の展望

Slide 35

Slide 35 text

ロールバック機能 • 過去のある時点のテストの内容を復元 2. 今後の展望

Slide 36

Slide 36 text

⼀括実⾏の画像差分の⼀括確認 • テストケースごとに画像差分を⾒なくてもいいように 2. 今後の展望

Slide 37

Slide 37 text

セキュアトンネル機能 • インターネット⾮公開環境でもクラウドテストを可能に 2. 今後の展望

Slide 38

Slide 38 text

Flutterアプリのサポート • アプリ側がid等をうまく振れば動作しそう • アプリ実装ガイドラインを現在準備中 2. 来年の展望

Slide 39

Slide 39 text

その他 • クラウド端末の利⽤マシンのパワーアップ • 共有ステップから別共有ステップの呼び出し • ブランチ管理機能 2. 来年の展望

Slide 40

Slide 40 text

今後も継続的に 改善を進めていきます!