@expectedExceptionMessage

2018-02-24 15:42 更新

@expectedExceptionMessage

@expectedExceptionMessage 標注的運作方式類似于 @expectedExceptionCode ,用它可以對異常的錯誤訊息作出斷言。

class MyTest extends PHPUnit_Framework_TestCase
{
    /**
     * @expectedException        MyException
     * @expectedExceptionMessage Some Message
     */
    public function testExceptionHasRightMessage()
    {
        throw new MyException('Some Message', 20);
    }
}

預期訊息可以是異常訊息的子串。在只需要斷言傳入的特定名稱或參數(shù)確實出現(xiàn)于異常中時這個特性很有用,這樣就無需在測試中關注完整的異常訊息。

class MyTest extends PHPUnit_Framework_TestCase
{
     /**
      * @expectedException        MyException
      * @expectedExceptionMessage broken
      */
     public function testExceptionHasRightMessage()
     {
         $param = "broken";
         throw new MyException('Invalid parameter "'.$param.'".', 20);
     }
}

為了方便測試同時減少冗余,可以用"@expectedExceptionMessage ClassName::CONST"這樣的語法將指定類常量作為 @expectedExceptionMessage。在the section called “@expectedExceptionCode”中可以看到范例。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號