2

重複の可能性:
関数が PHP を強制終了することになっている場合、関数をテストするために PHPUnit をどのように使用しますか?

私はいくつかの単体テストを書いています。私が現在テストしているシステムは、MVC フレームワークの Web アプリです。

サイトスキン システムなしでページをレンダリングする場合、従来どおりコードを実行しましたが、「die();」を出力しました。関数の最後にステートメントを追加して、Web サイトの残りの部分がレンダリングされる前に終了します。

さて、単体テストを追加しているので、これは問題のようです。ほら、DIE(); MVC では、同じメッセージを PHPUnit に送信しているようです。

Grrrr...コードは「テスト不可能」にレンダリングされました

それともありますか?

die(); をどのように計画しますか? PHPUnitで?

テストの前にこれを追加することについて知っています:

/**
 * @expectedException PHPUnit_Framework_Error
 */

しかし、「死亡時」の変数をテストすることはできません(少なくとも私はそうは思いません)

誰でも私を啓発することができますか?

ありがとう!:D

4

1 に答える 1

3

この場合、return代わりにdie. IDE ですべてのデスをリターンに置き換えるのは簡単なはずです。

exit本当の問題は、 orによって返されるアプリケーション終了コードを実際にテストする必要がある場合ですdie(edorian の回答を参照)。

于 2010-08-17T18:48:31.580 に答える