PHP WebDriver を使用して自動テストを最初から構築する

王林
リリース: 2023-06-16 06:16:01
オリジナル
1477 人が閲覧しました

PHP WebDriver は自動テストに使用できるツールで、フォームへの入力やボタンのクリックなど、ブラウザ上でのユーザー操作をシミュレートできます。 PHP WebDriver は PHP 言語のライブラリであり、Selenium WebDriver に基づいており、PHP クライアントを介してブラウザと通信して、テスト シナリオの自動実行を実装します。この記事では、PHP WebDriver を使用して自動テスト ケースを最初から構築します。

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

まず、PHP WebDriver をインストールする必要があります。 PHP WebDriver の GitHub アドレスは https://github.com/php-webdriver/php-webdriver です。このライブラリは packageist で公開されているため、composer を使用してインストールできます。

$ composer require facebook/php-webdriver
ログイン後にコピー

これにより、PHP WebDriver のすべての依存関係がインストールされます。

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

次に、テスト ケースを作成する必要があります。テストケースとして簡単なログインページを使用します。コードは次のとおりです。

<!DOCTYPE html>
<html>
<head>
    <title>Login Page</title>
</head>
<body>
    <form action="" method="post">
        <label>Username:</label>
        <input type="text" name="username"/><br/><br/>
        <label>Password:</label>
        <input type="password" name="password"/><br/><br/>
        <input type="submit" value="Login"/>
    </form>
</body>
</html>
ログイン後にコピー

この例には、ユーザー名とパスワードの入力ボックスとログイン ボタンを含む HTML フォームがあります。 PHP WebDriver を使用して、ユーザーがこのフォームにユーザー名とパスワードを入力し、ログイン ボタンをクリックする様子をシミュレートします。

ステップ 3: テスト コードを作成する

次に、ユーザーの操作をシミュレートし、ログイン機能が正常であるかどうかを確認するためのテスト コードを作成します。 PHP WebDriver コードは次のとおりです。

<?php
require_once('vendor/autoload.php');

use FacebookWebDriverRemoteRemoteWebDriver;
use FacebookWebDriverWebDriverBy;

// 配置
$host = 'http://localhost:4444/wd/hub';
$capabilities = ['browserName' => 'chrome'];
$driver = RemoteWebDriver::create($host, $capabilities);

// 访问页面
$driver->get('http://localhost/login.html');

// 填写用户名和密码
$username = $driver->findElement(WebDriverBy::name('username'));
$username->sendKeys('user@example.com');

$password = $driver->findElement(WebDriverBy::name('password'));
$password->sendKeys('password');

// 单击登录按钮
$loginButton = $driver->findElement(WebDriverBy::xpath('//input[@type="submit"]'));
$loginButton->click();

// 验证登录
$welcomeMessage = $driver->findElement(WebDriverBy::tagName('h1'))->getText();
assert($welcomeMessage == 'Welcome to your account');

// 关闭浏览器
$driver->quit();
ログイン後にコピー

まず、PHP WebDriver をテスト コードにインポートする必要があります。次に、リモート WebDriver サービスから要求されたブラウザーの種類とアドレスを構成します。この例では、Chrome ブラウザを使用します。次に、テスト ケース ページにアクセスし、ユーザーがログイン フォームにユーザー名とパスワードを入力し、ログイン ボタンをクリックする様子をシミュレートします。最後に、アサーションを使用してログインが成功したことを確認し、ブラウザを閉じます。

ステップ 4: テストの実行

これで、テスト スクリプトを実行して結果を表示できます。テストを実行するには、PHPUnit テスト フレームワークを使用できます。コマンド ラインで、テスト ファイルがあるディレクトリに移動し、次のコマンドを実行します。

$ vendor/bin/phpunit loginTest.php
ログイン後にコピー

テストが成功すると、PHPUnit が緑色の「OK」結果を出力することがわかります。

自動テストを構築すると、テストの品質と効率が向上し、開発および展開中に潜在的なコードの問題が確実に検出されます。 PHP WebDriver を使用すると、自動テストを簡単に作成し、ユーザーのアクションをシミュレートすることで機能が期待どおりに動作することを検証できます。この記事では、初心者向けの例を紹介しますので、お役に立てれば幸いです。

以上がPHP WebDriver を使用して自動テストを最初から構築するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート