[英]Unit testing in laravel using filesystems
我正在使用文件系統配置進行單元測試。 我想將我的文件系統磁盤 map 放到一個測試目錄中,我將在其中放置我的文件(JSON、Excel、txt)以供應用程序用於測試目的。 我不想使用假目錄,因為我需要將文件放在“導入”位置。
文件系統.php:
'disks' => [
'import' => [
'driver' => 'local',
'root' => '/import/clientname',
'visibility' => 'private'
],
];
在應用程序中,這是我要測試的 function:
public function importFile(){
$filesystem = Storage::disk('import');
...
}
我正在考慮的解決方案是使用此位置進行測試:
有沒有辦法實現這個解決方案?
是的,例如,您可以使用每個磁盤上傳文件,然后斷言該目錄中是否存在文件。
使用表單上傳圖片的單元測試示例:
public function testStorage()
{
$file = UploadedFile::fake()->image('File10.png');
$response = $this->post(route("save.image"), [
'file' => $file,
]);
$response
->assertStatus(200)
->assertSessionHasNoErrors();
Storage::disk('local')->assertExists("/images/" . $file->name);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.