ホームページ > バックエンド開発 > PHPチュートリアル > 再導入phpunit:PHPのTDDを始めます

再導入phpunit:PHPのTDDを始めます

Jennifer Aniston
リリース: 2025-02-09 13:02:15
オリジナル
493 人が閲覧しました

この記事では、現代のPHP開発環境のためのPHPunitの近代的な紹介を提供します。 JSONをPHPアレイに変換するシンプルなコマンドラインツールを構築し、その過程で重要なPHPunitの概念を実証します。

Re-Introducing PHPUnit: Getting Started with TDD in PHP

オブジェクト指向PHP(PHP 7以降)に精通していると仮定します。 合理化されたセットアップの場合、PHP 7をプリインストールしてプロセスを簡素化するHomesteadの改善を使用します。 いくつかのコマンドラインの使用法が関係していますが、それを案内してください。

重要な概念:

    phpunit:
  • テストの作成と実行を簡素化し、コード品質とテスト駆動型開発(TDD)を促進するPHPのテストフレームワーク。 テスト駆動型開発(TDD):
  • コードの前にテストが記述され、開発を導き、予想される動作を確保する方法が記載されています。 アサーションは、予想される結果を確認します
  • のセットアップ:作曲家とのプロジェクトの作成、PHPunitの開発依存関係()、の構成とテストスイートとブートストラップの管理を含みます。
  • 最初のテスト:拡張、アサーション(composer require phpunit/phpunit --devphpunit.xmlデータプロバイダー:
  • テストデータをロジックから分離して、テストをきれいに整理します。 テスト方法を変更せずに新しいテストケースを簡単に追加します
  • コードカバレッジ:レポートでは、テストされていないコードを識別し、包括的なテストとアプリケーションの堅牢性を確保します。 PHPUnitFrameworkTestCase assertEquals
  • テスト駆動型開発説明:
  • TDDには、コード自体を書き込む前に
  • がどのように動作するかを定義するためのテストを作成することが含まれます。 アサーション(
など)コードが期待を満たしているかどうかを確認します。 失敗したテストは、コードの変更が必要であることを示します

phpunitの概要:

phpunitは、テストの書き込みと分析を簡素化するためのツール(クラスと実行可能ファイル)を提供します。 コードの品質、カバレッジなどを示すレポートを生成します の例アプリケーション:jsonからphpアレイコンバーター assertEqualsJSONファイルをPHPアレイに変換するコマンドラインツールを作成します。 作曲家のPHP 7環境を想定してください。 Homesteadを使用する場合、assertTruevm(

プロジェクトのセットアップ:

フロントコントローラー(コンバーター/パブリックのindex.php):sshvagrant ssh

  1. phpunit.xml:

    cd Code
    git clone https://github.com/php-pds/skeleton converter
    cd converter
    composer require phpunit/phpunit --dev
    rm bin/* src/* docs/* tests/*
    ログイン後にコピー
    ログイン後にコピー
  2. tests/autoload.php:

    cd Code
    git clone https://github.com/php-pds/skeleton converter
    cd converter
    composer require phpunit/phpunit --dev
    rm bin/* src/* docs/* tests/*
    ログイン後にコピー
    ログイン後にコピー
  3. composer.json(更新):(テンプレート値をプロジェクトの詳細に置き換えます)

    <?php echo "Hello world";
    ログイン後にコピー
  4. runcomposer dump-autoload

  5. 最初のテスト(Tests/sitepoint/converter/convertertest.php):

    <?xml version="1.0" encoding="UTF-8"?>
    <phpunit bootstrap="tests/autoload.php">
        <testsuites>
            <testsuite name="converter">
                <directory suffix="Test.php">tests</directory>
            </testsuite>
        </testsuites>
    </phpunit>
    ログイン後にコピー
  6. テストを実行する(php vendor/bin/phpunit(最初に障害を予想してください)

  7. コンバータークラス(SRC/SitePoint/converter/converter.php)を実装:

    <?php
    require_once __DIR__ . '/../vendor/autoload.php';
    ログイン後にコピー
  8. 再実行テスト

    チュートリアルの詳細の残りの詳細は、よりクリーンなコードにデータプロバイダーを使用し、Xdebugを使用したコードカバレッジレポートのセットアップを追加するテストを追加します。 最後のセクションには、TDDとPHPunitのベストプラクティスをカバーするFAQが含まれます。 完全なコードはgithub(元のテキストで提供されるリンク)で利用できます。

以上が再導入phpunit:PHPのTDDを始めますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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