TOPハウツー・学習テクノロジーSoftware Testing Journey🌍#278 Magic PodのAutopilotで、Web APIを使ったアカウント新規登録テストを作ったよ。12:11 2025年9月15日 130再生 問題を報告する 再生する シェアする AI目次Magic Podオートパイロット導入でテスト効率化Web APIテスト自動化の具体例とは30分でWeb APIテスト作成に成功APIテスト作成における課題と解決策まさかのメガネ忘れと新潟駅近くのゾフAI文字起こし(β版) # タイトルコール ようこそ、世界が広がるソフトウェア品質へ。 このチャンネルでは、エンジニアリングマネージャー兼QAリーダーのサミーが、 ソフトウェアテストやソフトウェアの品質保証を中心に、 日々奮闘していることや考えていることをお話しします。 毎日、お昼の12時30分に配信しています。 ゲストの方やリスナーのあなたと、 テストや品質の世界を広げていきます。 # Magic PodのAutopilotで、Web APIを使ったアカウント新規登録テストを作った話 こんにちは、さみぃです。今日もワクワクしてますか? 今回はですね、MagicPotのオートパイロットを使ったよという話をしていきます。 もう少し具体的に言うとですね、Web APIのテストを作ってみました。 まず最初にこのきっかけですね、なんでオートパイロットを作ろう、使おうと思ったのかというところと、 どういうテストを作りたかったのかというところから話をしていきます。 きっかけは何と言ってもですね、先日のMagicPotのユーザーミートアップになります。 MagicPotのCEOの伊藤さんからですね、発表というのかな、お話がありまして、 その中でオートパイロットでこういうことできるよというところの紹介もありました。 ユーザーミートアップ参加する前から存在は認識してたんですけど、後回しになってしまっていたので、 ユーザーミートアップをきっかけに、よしオートパイロットまずは使ってみよう、 何ができるかというのは自分で体感というのかな、しようというところを考えたのがきっかけです。 もう一つ、ユーザーミートアップの中でWeb APIを使えるよとか、こういうふうに活用したよという事例も紹介されていました。 その中で特に気になったのが、新規登録ですね、アカウントの新規登録をWeb APIで、 APIをたたいて直接作る、そういう活用方法があるよって聞いたのがすごい気になっていて、 まさにですね、今自分で作っているテスト、MagicPotで作っているテストだと、 ざっくり三つの構成になっているんですよ、テストの中身というんですかね。 まず最初に新規登録でアカウントを作ります、その後何かテストしたいことのオペレーションをしてアサーションをします。 最後に大会をしてアカウントを削除というか、きれいにするというこの三段階になっているんですよね。 既存のテストだと、その新規登録というのは全部画面上、UI上を操作して新規登録をしているんですね。 その事例の発表を伺っていて、確かになと思ったんですけれど、Web APIを経由して直接APIをたたいて、 新規登録アカウントを作れば当然実行速度も速いと、確かに確かにと思ったわけですね。 これぜひやりたいなと思ったんですけど、具体的にどういうふうな手順というのかな、 テストを書いたらよいのかというところまでは事例の発表がなかったわけです。 どうしたものかなというのを考えていて、ふと閃いたわけなんですね。 これオートパイロットで作れるんじゃないかな、ということでオートパイロットを活用して、 Web API経由でアカウントを新規登録するというテストを作ってみました。 続いてここからは使ってみての初感と、その後もう少し詳細のこういうふうにやってみたいという流れをお話ししていきます。 全体の初感としてなんですけれど、大体30分ぐらいでテストを作れたかなという感じです。 1から0から自分からやってたら多分できなかったと思うので、そういう意味ではすごくサポートになりました。 一方で伊藤さんもお話しされてたんですけど、結構速度が遅いんですよというのは実際に感じたので、 伊藤さんからアドバイスいただいてた通り、コマンドをプロンプト入れて実行する、 その間に別の作業をして3分とか5分とかしたらまた戻ってくるという感じでオートパイロットを使っていました。 オートパイロットのいいなと思ったポイントとしては、やっぱりWeb APIのテストどういうふうに0から自分で変えたらいいかが分からないという状態だったので、 そこをかなりサポートはもらいました。どういう流れでテストを作っていったらよいのかというところがヒントをもらいながら進めることができたので、 結果として、もし自分で0からやったら2時間とかかかってたかもしれないものが30分でできたというのはオートパイロットを使ってよかったなというポイントです。 あともう1個良かったポイントが、普段使わないコマンドっていうんですかね。 例えばログの出力というコマンドがあるとか、変数の活用だったりとか、繰り返しの処理というのはこれまで自分では作ったことなかったので、 オートパイロットが作ったのを見て、こういうコマンドもあるんだなという存在だったり使い方ということを学ぶこともできました。 1本でオートパイロットのまだまだ弱い部分かなというところは、伊藤さんもおっしゃってたんですけれど、時間がめちゃくちゃかかるというところですね。 プロンプトを投げてから帰ってくるというのかな、結構試行中の中身というのは随時表示ばされてたりするんですけど、 一周というのはここまで処理しきりましたというところまでは数分かかるというところなので、結構今後改善されるんじゃないかなというふうに期待しているポイントでもあります。 そしてもう少し具体的なところを最後お話ししていこうと思います。 最初に打ったコマンドというかプロンプトは、先ほどもちらっと言ったんですけど、Web APIを使ってアカウントの新規登録を行うテストを作成してくださいというふうにプロンプトを投げました。 そしたら、Jetpotのオートパイロットのほうでも、まず最初にこんな内容が返ってきました。 まず、現在のテストケースの状態を読み込み、使うコマンドの正確なパラメータ使用を確認します。 続いて、Web APIで新規登録を行うためのステップを押した楽器、楽園ドポンのイントなどはダミー、括弧と字で追加できます。 後で本番の値に差し替えましょうという感じで、何をやっているのかというのと、何がその後自分の作業として必要なのかというところが書かれているのがすごく安心感もありました。 テストケースを読み込んでマウスとかコマンドを検索してマウスみたいなのをやっていることが随時表示をされていて、次のような感じで文字がテキストが表示されています。 ありがとうございます。まずWeb APIで新規登録だけを行う最初の構成のテストを追加しました。 やったことと使い方は書きですということで、作成したテストの流れは一時のメールアドレスを自動生成して、 これこれをこういうふうにして毎回ユニークなメールアドレスを生成しますとか、生成したメールをログに出力してWeb APIをポストで呼び出して新規登録しますよという感じで、 基本ステータス、期待ステータスがこれこれで、ヘッダーとボディーはこれこれですよみたいなところですね。 成功時はこのまま通過、失敗時はステータス不一致でテスト失敗させますみたいなこと。 どういうテストを作成したのかというのがまずテキスト、日本語で書かれています。 その後にこの後に調整していただきたい箇所というところで何がやる必要があるのかというのも書いてあります。 例えば登録APIのURL、今はダミーのこれこれになっているので実際のエンドポイントに書き換えてくださいとか、 あとはリクエストボディの項目名ですね。今はEmailとパスワードでやってるんだけど、必要に応じて書き換えてくださいね、項目を変更してくださいねとか、 あと期待ステータスコードは今201というふうに書いてるんですけど、それ以外回数設計であれば値に合わせて変更してくださいねとか、 そういうことが書いてあります。プラスしてもう1個、もう1個というかまだあと2つぐらい書いてあるんですけど、出力結果ですね。 3つ目が発展、ご希望ならすぐ組み込みますということで、レスポンスからユーザーIDとアクセストークンを変数に保存してログを出力しますよとか、 あと招待コードやメール認証が必要ならそのAPIを呼び出すのを続けて自動化しますよとか、こういうこともやってくれますよというところもしっかり書いています。 最後のセクションがお願いというふうに書いていて、こういうことやってくださいねというところを最後にまとめて書いてあります。 実際の登録APIのエンドポイントのURLとか、必要なヘッダーとか、リクエストの項目名とか、期待されるステータスコード、レスポンス例などがあれば教えてください。 教えていただいたらこちらでテストを具体化しますよというふうに書いてあります。 こんな感じでですね、やったことと追加してくださいねというのがあるので本当にやりやすかったです。 一方でといいますか、私はもともと自分で画面上からの操作でのアカウントの新規登録をやっていたというのもあって、 それをある意味登録のAPIを叩くという部分、画面上からの操作からWeb APIに変えるということをやっていたので、 言いたかったのは、もともとどういう操作をしたら何ができるかというところが分かった上で今回のテストを作ったので、 こういうふうに書き換えたらいいだろうなというのは割とスムーズに操作できたと思います。 もし新規登録を全く作ったことがないとか、そういうテストでWeb APIで作ってみようとなったときに、 何をしたらいいのかとか、そもそもWeb APIのコールがあって、ポストとかあって何をポストしたらいいのかとか、 何をゲットしたらいいのかというところが分からない状態で、 オートパイロットだけで作ったらうまくいったか、30分で作れたかというと、ちょっとそれは難しいんじゃないかなというふうに感じました。 何でこんな話をしたかというと、最初にオートパイロットで作ってもらったテストの中身を見ていくと、 ログを出力したりとか、ログをしておけばいいのかなとか、ちょっと私の目線から見ると序章だなと思うような操作が入っていたんですね。 これじゃなくてもいいかもなって思うもの。それを省くことができたのは、もともと何ができたらよいかというところを、 イメージを持っていた、マジックポッドでどう実現できるかというところが分かっていたから、 ここはいらなさそうだなという判断ができたというふうに感じました。 ということで、今回はマジックポッドのオートパイロットを使ってWeb APIのアカウント新規登録のテストを作ってみたよ、30分でできたよという話をしました。 ユーザーミートアップで得た学びとかやる気みたいなところを活かして、パパッとテストを作るという行動に進めたことも嬉しいですし、 また別のテストでもオートパイロットを引き続き使ってみたいと思います。 # 今日のほっこり話👓 今日のほっこり話です。 メガネの話をします。 先日、ジャスト新潟に参加するために新潟に行ったんですけれど、 まさかのですね、メガネを持っていくのを忘れました。 久しぶりにコンタクトをつけて、その日は家を出て行ったのが良かったんです。 で、あ、メガネ持っていかなきゃなー。 あの、宿泊をする予定だったんで、メガネ持っていかなきゃなーって思ってたんですけど、 その時に、あ、靴下持っていかなきゃって思って、靴下を入れたらですね、メガネを忘れてしまいましてですね。 ジャストの講演中に、あ、メガネ忘れたって突然言ってみますか、思い出しまして。 私ちょっと、ラガンだと日常生活を送れないぐらい悪いのと、 その後、連休なので観光もしようと思ってたんで、 さすがにメガネないと危ないなーっていうところだったんですけど、 で、どうしたと思います? なんとですね、新潟駅のすぐ近くにですね、ゾフがありまして、 ジャストの会場のニーノっていうところでやったんですけど、 会場から徒歩3分ってグーグルマップで出てきたんで、これ行けないってことですね。 講演の合間の休憩時間にですね、メガネを作りに行きました。 まあ30分ぐらいでできますよって話だったんで、また会場戻ってきて次の講演聞いて、 また休憩時間にメガネを取りに行くみたいな感じで、 なんとかですね、メガネを無事に受け取る、作ることができました。 おかげでその後の観光もですね、いろいろ楽しむことができました。 ということで、以上今日のホッコリ話でした。 # 次回予告 今回も最後までお聞きいただきありがとうございました。 次回はVoicyのトークテーマ、学び直したいことということで、 最近読んでいるクリーンアジャイルという本のお話をしようと思います。 今回の放送を聞いて、なるほどな、確かにな、学びになったなと思った方は、 ぜひ画面右下、ハートマークでいいねを押していただけると、とっても励みになります。 また、プレミアム放送の方ではより身近に感じるような放送をしております。 チャンネルチャットの方では、オフ会の作戦会議だったり、 登壇情報をいち早く知ることができます。 プレミアムリスナーについて気になる方は、ぜひチャンネルページのトップに固定してある放送をお聞きください。 それではまた明日お会いしましょう。ごきげんよう。 もっと見る #AI #ソフトウェアテスト #E2E自動テスト #MagicPod Software Testing Journey🌍プレミアム放送配信中!00:201.タイトルコール09:412.Magic PodのAutopilotで、Web APIを使ったアカウント新規登録テストを作った話01:313.今日のほっこり話👓00:404.次回予告コメント感想・質問・応援メッセージを書こう
#652 直近のイベントのお知らせと、カードゲームご予約いただいた方へ 18分・昨日・ 78再生AI目次二つの生放送:仕事とゲーム制作を語るゲームマーケット2026秋、出展への道第5回オフ会:異業種LTが起こす化学反応予約殺到!カードゲーム受け渡し詳細ゲームマーケット当日:入場とブースJ-044
#651 QAとCSの3つの共通点 10分・9月24日・ 76再生AI目次QAとCSに求められるユーザー視点曖昧な問い合わせから問題解決へ情報引き出しに不可欠な質問力CSとQAを繋ぐ共通プロセスとは旅先での温泉スタンプラリーの悔恨
#650 秋の味覚と我が家の事件💍 10分・9月23日・ 58再生AI目次旬の栗ご飯とぶどうで味わう秋の幸せつえたて温泉の蒸し場で体験した感動温泉更衣室でまさかの結婚指輪紛失指輪紛失後の夫の粋な一言とはCS業務で変わるプロダクトの見え方
#649 個人で作るならマニアックなゲームを作りたい 19分・9月22日・ 102再生AI目次個人制作ゲーム『リリースしていいですか』の真意ゲームで体感するソフトウェア品質の深さリスナーと盛り上がる『柿カードゲーム』秘話ゲームマーケット共同出展の個性派作品アナログゲームの祭典、ゲームマーケットJ044へ
#648 祖父母との思い出 20分・9月21日・ 83再生AI目次父方の祖父母 珍しい恋愛結婚の物語埼玉のプールで祖父と過ごした夏休み母方の祖父の厳しさと「蜘蛛の糸」の夜母方の祖母のぬか漬けと食卓の記憶Apple製品からGalaxyへデバイス売却
#647 冷麺はお好きですか?│三大冷麺を制覇 13分・9月20日・ 55再生AI目次冷麺はお好き?日本の三大冷麺とは盛岡冷麺の麺とスープ そのルーツを探る呉・別府冷麺 平打ち麺と和風出汁の魅力三大冷麺制覇!旅路での実食体験談時間の使い方?リスナーコメント返し
#645 『Taking Testing Seriously』 11章より 13分・9月18日・ 69再生AI目次テスタビリティの本質と船上での気づきテスタビリティ推進の鍵は相手の視点実ユーザーとのテストが生む価値『体験・テスティング』のコメントと冬熊本旅行秘話とカードゲームの魅力