使用數據提供者,能讓測試更簡潔,因為,可以將測試的斷言與測試數據分開寫。
在EventTest內增加一個testDuplicatedReservationWithException()測試用例,在注釋內標注:
@expectedException \PHPUnitEventDemo\EventException 預期的異常類。
@expectedExceptionMessage 預期的異常消息。
@expectedExceptionCode 預期的異常代碼。
也就是,預期在這個測試用例內會接收到EventException的異常類別,異常消息為預留的值,異常代碼為1。
數據提供者為:
public function eventsDataProvider() {
$eventId = 1;
$eventName = '活動1';
$eventStartDate = '2016-11-01 12:00:00';
$eventEndDate = '2016-11-01 13:00:00';
$eventAttendeeLimitNotFull = 5;
$eventAttendeeFull = 10;
$eventsData = array(
array(
$eventId,
$eventName,
$eventStartDate,
$eventEndDate,
$eventAttendeeLimitNotFull
),
原文轉自:http://www.jianshu.com/p/ba6829a6f3ec