Laravel 8 可用的斷言方法

2021-07-16 15:55 更新

Laravel 為你的 PHPUnit 功能測試提供了幾個數(shù)據(jù)庫斷言方法:

方法 描述
$this->assertDatabaseCount($table, int $count); 斷言數(shù)據(jù)表包含給定數(shù)量的實體。
$this->assertDatabaseHas($table, array $data); 斷言數(shù)據(jù)表包含給定數(shù)據(jù)。
$this->assertDatabaseMissing($table, array $data); 斷言數(shù)據(jù)表不包含給定數(shù)據(jù)。
$this->assertDeleted($table, array $data); 斷言給定記錄是否被刪除。
$this->assertSoftDeleted($table, array $data); 斷言給定記錄已經被軟刪除。

為方便起見,你可以傳遞一個模型實例到 assertDeletedassertSoftDeleted 函數(shù)來斷言對應數(shù)據(jù)庫記錄是否被刪除或軟刪除,底層依據(jù)的是模型主鍵與數(shù)據(jù)表記錄建立關聯(lián)。

舉個例子,如果你在你的測試中使用了一個模型工廠,你可以傳入這個其中一個模式來幫助測試你的應用是否正確的刪除了數(shù)據(jù)庫的記錄:

public function testDatabase()
{
    $user = User::factory()->create();

    // 調用這個程序...

    $this->assertDeleted($user);
}  


以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號