ホームページ  >  記事  >  バックエンド開発  >  CakePHP で Mink を使用するにはどうすればよいですか?

CakePHP で Mink を使用するにはどうすればよいですか?

王林
王林オリジナル
2023-06-03 17:00:041147ブラウズ

CakePHP は、Web アプリケーションを開発するためのシンプルかつ柔軟な方法を提供する人気のある PHP Web アプリケーション フレームワークです。ただし、CakePHP アプリケーションのユーザー インターフェイスをテストするために、より高度なツールが必要になる場合があります。 Mink はこの状況で非常に便利なツールです。 Mink は、Web ブラウザーをテストするための拡張可能なドライバーのコレクションを提供する PHP ライブラリです。

この記事では、アプリケーションをより適切にテストできるように、CakePHP で Mink を使用する方法を紹介します。

ステップ 1: Mink をインストールする

まず、CakePHP アプリケーションに Mink をインストールする必要があります。このために、Composer 依存関係マネージャーを使用できます。次のコマンドを使用できます:

composer require behat/mink behat/mink-extension

これにより、Mink ライブラリと Mink 拡張機能がインストールされます。このチュートリアルでは Mink 拡張機能を使用します。

ステップ 2: Mink 構成ファイルを定義する

次に、Mink 構成ファイルを定義する必要があります。 CakePHP プロジェクトに新しい mink.php ファイルを作成し、Mink 構成を定義します。サンプル構成は次のとおりです:

<?php
use BehatMinkSession;
use BehatMinkDriverSelenium2Driver;
use BehatMinkExtensionContextMinkContext;

// Bootstrap Mink for WebDriver and start an instance of a browser
// You can specify Chrome, Safari, Firefox, etc.
$driver = new Selenium2Driver('chrome');
$session = new Session($driver);
$session->start();

// Configure our MinkContext object with the appropriate data
$config = [
    'start_url' => 'http://localhost:8765', // The URL to start browsing at
    'default_session' => 'selenium2', // Use the Selenium 2 (WebDriver) driver
];

$mink = new MinkContext();
$mink->setSession('selenium2', $session);
$mink->setMinkParameters($config);

上記の例では、Selenium 2 ドライバーを使用して Chrome インスタンスを起動し、構成パラメーターを定義しました。

ステップ 3: Mink テスト ケースを作成する

上記の構成を完了したら、Mink テスト ケースを作成できます。 tests/acceptance ディレクトリに、テスト ケースを含む新しいファイル .feature ファイルを作成します。

Feature: Testing the Login Functionality

  Scenario: Login with Correct Credentials
    Given I am on "/login"
    When I fill in "username" with "testUser"
    And I fill in "password" with "pass123"
    And I press "Login"
    Then I should see "Welcome, testUser"

上記のテスト ケースでは、Gherkin 言語を使用してシナリオ、手順、および期待される結果を定義しました。 MinkContext クラスで提供されるメソッドを使用して、これらの手順を実装できます。

ステップ 4: Mink テストを実行する

Mink テストを作成したら、次のコマンドを使用してターミナルでテストを実行できます:

vendor/bin/behat --config mink.php tests/acceptance/login.feature

これにより起動します。 Chrome ブラウザでテスト ケースを実行し、結果をターミナルに出力します。

結論

このチュートリアルでは、CakePHP アプリケーションで Web UI テストに Mink を使用する方法を学びました。 Mink のインストール、Mink 構成ファイルの定義、テスト ケースの作成のプロセスについて学びました。これらの手順により、CakePHP アプリケーションをより適切にテストし、その正確さと信頼性を確認できます。

以上がCakePHP で Mink を使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。