Jawatan ini meneroka membina klien SparkPost menggunakan PHP, PHPUNIT, dan ejekan, menekankan pembangunan yang didorong oleh ujian (TDD). Ia membimbing anda melalui membuat klien yang berinteraksi dengan API SparkPost untuk menghantar e -mel.
Konsep Utama:
Ujian tdd:Pasang pakej yang diperlukan melalui komposer:
composer require guzzlehttp/guzzle phpunit/phpunit mockery/mockery
phpunit.xml
3
<?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
penyokong pos untuk antara muka yang minimalis dan mesra pengguna. Ujian awal memberi tumpuan kepada menghantar e -mel melalui permintaan pos ke API SparkPost. Penghinaan digunakan untuk mengejek pelanggan Guzzle, yang membolehkan ujian pemformatan parameter klien tanpa membuat panggilan API sebenar. Kelas ujian asas (<?php return [ "key" => "[your SparkPost API key here]", ];
Pelaksanaan klien:
Kelas dicipta, mengendalikan pengurusan kunci API, URL asas, dan permintaan pemajuan. Kaedah AbstractTest
memudahkan penghantaran e -mel, memberikan mungkir yang masuk akal. Kaedah
Ujian Running dan Perlindungan Kod:
Client
Selepas melaksanakan kelas createTransmission
, phpUnit dijalankan untuk mengesahkan kejayaan ujian. Analisis Perlindungan Kod (menggunakan request
) memberikan pandangan ke dalam bahagian yang diuji kod.
Pertimbangan Lanjut:
Client
Ringkasan Soalan Lazim: vendor/bin/phpunit --coverage-html coverage
Seksyen Soalan Lazim memberikan jawapan ringkas kepada soalan -soalan utama mengenai TDD, PHPUnit, ejekan, pengendalian ralat, keselamatan, prestasi, skalabilitas, integrasi, penyelenggaraan, dan sokongan masyarakat dalam konteks membina klien SparkPost.
Respons yang ditulis semula ini memberikan ringkasan yang lebih jelas dan lebih ringkas mengenai input asal, mengekalkan makna asal dan penempatan imej. Ia juga menangani XML yang tidak lengkap dan tidak betul yang disediakan dalam input asal.
Atas ialah kandungan terperinci Membina Pelanggan SparkPost: TDD dengan phpunit dan ejekan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!