Repolode
antiwork

antiwork/shortest

自然言語でテストを記述できる、PlaywrightとAnthropic Claudeを基盤としたAI搭載のエンドツーエンドテストフレームワーク。

スター
5,698
フォーク
341
未解決の Issue
2
最終コミット
3 か月前

これは何?

Shortestは、セレクターや手順を細かく記述するスクリプトの代わりに、自然言語でブラウザテストを記述できるエンドツーエンドテストフレームワークです。各テストはshortest()呼び出しに渡す自然言語の文字列で、Anthropic Claude APIを利用するAIモデルが、Playwrightを基盤としたブラウザ上で手順を実行します。

このフレームワークはinitコマンドでインストールでき、パッケージをdev dependencyとして追加し、shortest.config.tsファイルを作成するとともに、.env.localにAnthropic APIキーを設定するためのプレースホルダーを用意します。テストは設定可能なファイルパターンで検出され、コマンドラインから実行できます。ファイルや行番号を指定した実行にも対応し、CIではヘッドレスで実行できます。ブラウザーセッションの終了後にコールバック関数が実行されるため、データベースのチェックなどのアサーションを追加できます。ライフサイクルフック、テストの連結、APIエンドポイントのテストにも対応しています。

GitHubの二要素認証付きログインと、Mailosaurを使ったメール認証のためのヘルパーが組み込まれています。TypeScriptで実装され、Next.jsアプリケーションを対象としており、examplesディレクトリにサンプルが用意されています。

主な機能

  • 01セレクターベースのスクリプトではなく、自然言語でテストを記述できます。
  • 02Anthropic Claude APIを使って、ブラウザー上でテスト手順を実行します。
  • 03Playwrightを基盤とし、ブラウザーコンテキストのオプションを設定できます。
  • 04二要素認証を含むGitHubログインに対応しています。
  • 05Mailosaurを使ってログイン用メールを検証します。
  • 06ライフサイクルフック、テストの連結、APIエンドポイントのテストに対応しています。

ユースケース

  • 壊れやすいセレクターを保守せずに、Next.jsアプリのエンドツーエンドテストを追加する。
  • 二要素認証を使ったGitHubログインを含む、ログインフローをテストする。
  • CI/CDパイプラインでブラウザーテストをヘッドレス実行する。
  • UIチェックとコールバック内のデータベースアサーションを組み合わせる。

クイックスタート

  1. 1

    initコマンドでプロジェクトにShortestを初期化します

    npx @antiwork/shortest init
  2. 2

    .env.localにAnthropic APIキー(ANTHROPIC_API_KEY)を追加します

  3. 3

    app/login.test.tsのような、自然言語で書かれたテストファイルを作成します

  4. 4

    すべてのテストを実行します

    pnpm shortest

使う前に知っておきたいこと

  • テストを実行するたびにAnthropic Claude APIが呼び出されるため、APIキーが必要で、利用料金が発生します。
  • テスト結果はAIの実行に依存するため、実行ごとに結果が異なる場合があります。
  • GitHubの2FAやメールアドレスの検証など、一部の機能では追加のサードパーティサービスが必要です。

収録されている特集

トピック

よくある質問

shortest とは?
自然言語でテストを記述できる、PlaywrightとAnthropic Claudeを基盤としたAI搭載のエンドツーエンドテストフレームワーク。 Shortestは、セレクターや手順を細かく記述するスクリプトの代わりに、自然言語でブラウザテストを記述できるエンドツーエンドテストフレームワークです。各テストはshortest()呼び出しに渡す自然言語の文字列で、Anthropic Claude APIを利用するAIモデルが、Playwrightを基盤としたブラウザ上で手順を実行します。
shortest は無料で使えますか?ライセンスは?
shortest は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
shortest は今もメンテナンスされていますか?
半年以内に更新あり。shortest の最終コミットは 2026年8月6日 です。
shortest は何に使えますか?
壊れやすいセレクターを保守せずに、Next.jsアプリのエンドツーエンドテストを追加する。 二要素認証を使ったGitHubログインを含む、ログインフローをテストする。 CI/CDパイプラインでブラウザーテストをヘッドレス実行する。 UIチェックとコールバック内のデータベースアサーションを組み合わせる。
shortest のインストール方法は?
initコマンドでプロジェクトにShortestを初期化します: npx @antiwork/shortest init .env.localにAnthropic APIキー(ANTHROPIC_API_KEY)を追加します app/login.test.tsのような、自然言語で書かれたテストファイルを作成します すべてのテストを実行します: pnpm shortest
shortest はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/antiwork/shortest

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト