00:00:00当社のチームがアプリを構築する方法は大幅に改善されました。
00:00:03理由は何でしょう?
00:00:03Claude Codeが最近Chrome拡張機能をリリースしました。
00:00:06PlaywrightやPuppeteer MCPを使えば既に可能だと思うかもしれません。
00:00:09しかし、
00:00:10これらのツールには不要に膨大なコンテキストウィンドウ、
00:00:13ランダムなスクリーンショットで散らかったプロジェクトフォルダ、
00:00:16そしてほとんどの場合アプリ上のアクションを完了できないといった深刻な問題がありました。
00:00:20これが、私がAIを使った自動テストの大きな支持者ではなかった理由です。
00:00:24しかし、この新しいClaude拡張機能に本当にワクワクした理由でもあります。
00:00:28チャンネルをフォローしていれば、以前実は動画を作ったことを知っているかもしれません。
00:00:32面白いことに、
00:00:33元々はClaude Code用ではなかったのですが、
00:00:35この拡張機能にはClaude Codeなら遥かに大きな可能性があると明確に述べていました。
00:00:39そしてここにいます。
00:00:39ついに統合されたMCPとしてリリースされ、Claude Codeに必要なすべてのカスタムツールを提供します。
00:00:45しかし、すぐに出た段階では大きな問題がいくつかあります。
00:00:48それに触れる前に、Automataについて少し話す時間をとりましょう。
00:00:52数百万人にAIでの構築方法を教えた後、私たちは自分たちでこれらのワークフローを実装し始めました。
00:00:57かつてないほど速く、より優れた製品が構築できることに気づきました。
00:01:01アプリやウェブサイトであろうと、あなたのアイデアを実現するのを手助けします。
00:01:04私たちの動画を見ながら、
00:01:05「素晴らしいアイデアがあるけど、
00:01:06それを構築するテックチームがない」と思ったことがあるかもしれません。それがまさに私たちの出番です。
00:01:11私たちをあなたの技術的なコパイロットと考えてください。
00:01:13数百万人に教えたのと同じワークフローをあなたのプロジェクトに直接適用し、
00:01:17概念を実際に動作するソリューションに変え、
00:01:20開発チームを雇ったり管理したりする手間なく実現します。
00:01:23あなたのアイデアを現実に加速させる準備はできていますか?
00:01:25hello@automata.devまでお問い合わせください。では問題に戻りましょう。
00:01:29最大の問題は、シンプなテストを行うのに非常に多くの段階的なステップが必要だったことです。
00:01:34Claudeにウェブサイトのランディングページを視覚的にテストするよう求めると、
00:01:38各セクションに対してスクロール操作を実行し、
00:01:40ステップごとにスクリーンショットをキャプチャすることに気づいたかもしれません。
00:01:43その後、すべてのスクリーンショットを合わせてUIをセクションごとに分析します。
00:01:47このアプローチは良いと思うかもしれませんが、そうではありません。
00:01:49代わりに、フルページのスクリーンショットを撮り、すべてのトークンを節約できます。
00:01:53これを解決するために、フルショットを撮るための異なるウェブツールを活用するスクリプトを使用しました。
00:01:57また、プロジェクト内のカスタムスラッシュコマンドでそのスクリプトを使用するための指示を追加しました。
00:02:02これで、
00:02:02このコマンドを使ってランディングページをテストすると、
00:02:05含めた指示に基づいてこれがフルページテストであることを認識し、
00:02:09通常のセクションバイセクション方式の代わりにスクリプトを直接使用します。
00:02:13このため、テストは大幅に高速化され、同じ精度を保っています。
00:02:17次に遭遇した問題は、これらのMCPツールが単純なタスク用に大量のコンテンツを一度にロードしようとしたことです。
00:02:24特定のdivをロードする代わりに、
00:02:26メインタグ内のすべてのHTMLをロードすることが多く、
00:02:29これは不要な場合でも膨大なトークン数を含んでいます。
00:02:32これはコンテキストウィンドウの大部分を消費し、最も単純なタスクでもそれを大幅に膨張させることができます。
00:02:37これを解決するために、
00:02:38Claude.mdファイルにClaude Chrome拡張機能を使用する際のコンテキストの適切な管理方法に関する指示を追加しました。
00:02:44こうすることで、抽出は正確に制限され、不要な情報でコンテキストが膨張することはありません。
00:02:50別の問題は、
00:02:50Claudeがクッキー通知や同様のプロンプトなどの不要なポップアップを含むウェブサイトに遭遇したときに多くの時間を無駄にすることです。
00:02:58それらを削除するために、同じスクリーンショットとスクロールシーケンスを使用します。
00:03:01しかし、これは間違っています。
00:03:02Claudeが不要なトークンと時間を消費することを許すのではなく、
00:03:05これらのポップアップを処理するために他の回避策を使用できます。
00:03:08別の方法として、
00:03:09最も一般的な「閉じる」ボタンセレクタとクッキーバナーを閉じるためのパターンを含むスクリプトを作成しました。
00:03:15コード内のそれらのセレクタを検出し、ポップアップを自動的に閉じるための関数を実行します。
00:03:19また、メインコンテンツに進む前にこのスクリプトを最初に実行するよう、Claude.mdファイルに指示を追加しました。
00:03:25これで、
00:03:26Claudeにウェブサイトにアクセスするよう求めると、
00:03:29まずClaude.mdの指示に従い、
00:03:30このJavaScriptを実行します。
00:03:32これでクッキーバナーが自動的に閉じられ、
00:03:35Claudeはトークンを無駄にしたり、
00:03:37不要なステップを実行することなくメインコンテンツに進むことができます。
00:03:40セキュリティ上の理由から、Claudeはあなたに代わってキャプチャの実行や認証の完了が制限されています。
00:03:46ですから、それらを含むウェブサイトに遭遇した場合、Claudeはこのプロセスを完了できません。
00:03:51これはあなた自身で処理する必要があります。
00:03:53ログインやCAPTCHA認証が必要なウェブサイトで作業するときは、
00:03:56Claudeにタスクを与える前に既に認証しておいてください。
00:04:00こうすることで、ブロックされたり、時間を無駄にすることはありません。
00:04:02これらが解決できた主な問題でした。
00:04:05しかし、テストに適切に使用するには、実は任意のアプリケーションをテストするための適切なワークフローが必要です。
00:04:10その前に、Puppeteerよりも私がClaude Chrome統合を好む理由についてもっと話したいのです。
00:04:16これは主に、
00:04:16Claude Codeの開発者によって構築されたネイティブツールであり、
00:04:20改善されたコントロールと機能を持つはるかに優れた統合を提供しているからです。
00:04:23これらのMCPは専用の分離された環境でのテストに焦点を当てており、セッションを保持しません。
00:04:29インストールが面倒なことが多く、プロジェクトフォルダにすべてのスクリーンショットが散らかります。
00:04:33一方、この新しいChrome統合により、Claudeはサインイン中のアカウントと相互作用できるようになります。
00:04:38Google DocsやGoogle Sheetsなどのサービスと相互作用できます。
00:04:42さらにセッション情報をすべて保持し、それを使用してタスクをより良く実行できます。
00:04:46ワークフローに入る前に、
00:04:47ブラウザ統合は通常のツール呼び出しよりも計算量が多いため、
00:04:51多くのコンテキストを使用することをお伝えしたいです。
00:04:54彼らはブログの1つでそれについて言及しています。
00:04:56ですから、Claude Codeで作業する際は自動圧縮に目を光らせておく必要があります。
00:05:00また、これはChrome統合なので、Chromeでのみ機能します。
00:05:04任意のChromiumブラウザで動作するだろうと予想していましたが、そうではありません。
00:05:07そして実は対応できません。
00:05:08また、
00:05:09複数のChromeプロフィールを使用している私たちのような人々にとっては、
00:05:12継続的に間違ったプロフィールを開くため、
00:05:14少し厄介になります。
00:05:15そして、彼らがこのバグをもっと早く修正することを本当に期待しています。
00:05:17先ほど述べたすべての修正とClaude とChromeの統合により、私の開発ワークフローは大幅に改善されました。
00:05:24ただし、Chrome拡張機能はManifest V3に制限があります。
00:05:27実行時間が長すぎるとブロックされる可能性があります。
00:05:29多くの人がClaude Codeの開発者にこれをそのリポジトリで修正するよう求めています。
00:05:33ウェブアプリケーションのエンドツーエンドテストを開始から終了まで実行している場合、
00:05:37これによってセッションがChromeによってブロックされる可能性があり、
00:05:40Claudeは予期せず停止します。
00:05:41その後、実行を再開するよう再度プロンプトする必要があります。
00:05:44Claudeに長時間実行するタスクを割り当てて、
00:05:47コンピュータから離れ、
00:05:48戻ってくると、
00:05:49タスクが部分的にしか完了していない場合は、
00:05:51特に問題になる可能性があります。
00:05:53このため、
00:05:53エンドツーエンドテストの代わりに、
00:05:55アプリケーションのさまざまな側面をカバーする複数のテストファイルを作成しました。
00:06:00各ファイルには、優先度レベル、前提条件、テストステップ、および期待される結果に関する詳細情報が含まれています。
00:06:06テスト実施方法に関するテストガイドと、テストドキュメント用のreadmeもあります。
00:06:11ご存知のように、
00:06:12Claudeはコンテキストウィンドウが制限されており、
00:06:14その制限に達すると、
00:06:15指示と進捗が失われる可能性があります。
00:06:16このため、
00:06:17Claude.mdファイルに各ファイルのテスト後、
00:06:20包括的なテストレポート文書を作成するよう指示するための指示を追加しました。
00:06:24こうすることで、
00:06:25ブラウザツールが多くのコンテキストを消費するため圧縮が必要になったとしても、
00:06:28Claudeはこれらの進捗ファイルを参照することで、
00:06:30何がテストされたか、
00:06:31何がまだテストする必要があるかについての認識を保つことができます。
00:06:34テストを進める前に、
00:06:35ベストプラクティスはコンパクトを実行することです。Chromeを使用してアプリケーションをテストするとコンテキストウィンドウを大量に消費するためです。
00:06:42テストプロセスを効率化するために、別のカスタムスラッシュコマンドを作成しました。
00:06:46このコマンドは、
00:06:47ガイド付きの方法でテストし、
00:06:49Claude.mdの指示に従ってテスト後に適切な構造でドキュメントを作成します。
00:06:54また、
00:06:54タスク開始前にコンテキストを監視する指示を追加しました。これにより、
00:06:58テスト中にコンテキストが途中で失われず、
00:07:00作業中にコンパクトを実行できます。
00:07:02この方法で、
00:07:03テストプロセスを開始する際は、
00:07:05スラッシュコマンドを使用してテスト対象のファイルを指定するだけで、
00:07:08Claudeが正確な指示に従ってテストを開始します。
00:07:11それは独自に問題を特定し、ブラウザと必要なすべてのツールを使用してテストを実行します。
00:07:16要素に自動的にインタラクションし、通常は見えないがコンソール出力を読むことで検出できるエラーを見つけることができます。
00:07:23また、指示に従ってテストの最後にドキュメント化します。
00:07:26このようにして、
00:07:27テストプロセス全体が大幅に改善されます。Claudeがコンソールログにアクセスでき、
00:07:31ブラウザで自動化されたテストをこれまで以上に効果的に実行できるからです。
00:07:35これでこのビデオは終わりです。
00:07:37チャンネルをサポートして、このようなビデオの制作を続けるのに役立てたい場合は、下のスーパーサンクスボタンを使用できます。
00:07:43いつもご視聴ありがとうございます。次の動画でお会いしましょう。