この投稿では、PHP、PHPunit、およびmockeryを使用してSparkPostクライアントの構築を検討し、テスト駆動型開発(TDD)を強調しています。 SparkPost APIと対話するクライアントを作成して電子メールを送信することでガイドします。
phpunit構成ファイル(
composer require guzzlehttp/guzzle phpunit/phpunit mockery/mockery
phpunit.xml
<?xml version="1.0" encoding="UTF-8"?> <phpunit bootstrap="vendor/autoload.php"> <testsuites> <testsuite name="SparkPost API Client Tests"> <directory suffix="Test.php">./tests</directory> </testsuite> </testsuites> </phpunit>
config.php
.gitignore
投稿は、ミニマルでユーザーフレンドリーなインターフェイスを提唱しています。 最初のテストでは、SparkPost APIへの投稿リクエストを介して電子メールの送信に焦点を当てています。 mockeryは、Guzzleクライアントをock笑するために使用され、実際のAPI呼び出しを行わずにクライアントのパラメーターのフォーマットをテストすることができます。 ベーステストクラス(<?php return [ "key" => "[your SparkPost API key here]", ];
クラスが作成され、APIキー管理、ベースURL、およびリクエスト転送を処理します。
メソッドは、電子メールの送信を簡素化し、賢明なデフォルトを提供します。 AbstractTest
メソッドは、実際のガズル要求をSparkPost APIに処理します。
実行中のテストとコードカバレッジ:
クラスを実装した後、PHPunitを実行してテストの成功を確認します。 コードカバレッジ分析(Client
を使用)は、コードのテストされた部分に関する洞察を提供します。
createTransmission
request
さらなる考慮事項:
この投稿では、入力検証、ガズルからの分離、クライアントの拡張により、より多くのSparkPost APIを処理するなど、改善のための領域を強調しています。
faqs概要:Client
FAQSセクションでは、TDD、PHPUNIT、MOCKERY、エラー処理、セキュリティ、パフォーマンス、スケーラビリティ、統合、メンテナンス、およびコミュニティサポートに関する重要な質問に対する簡潔な回答を提供します。
この書き直された応答は、元の意味と画像の配置を維持し、元の入力のより明確で簡潔な要約を提供します。 また、元の入力で提供されている不完全で誤ってフォーマットされたXMLに対処します。以上がSparkPostクライアントの構築:phpunitとmockeryを使用したTDDの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。