标签: PHPUnit


Laravel 结合数据库做PHP单元测试,并且 migrate 和 seed 只做一次

作者: 我不是鱼 (2018-11-13 13:55) 分类: PHP    

做测试的时候难免要结合数据库来测试,为了不影响现有数据及保持测试数据的完整性,一般是每次测试的时候创建一个新的测试数据库,并把写好的测试数据导入。这里就要用到 Laravel 的 Migrations 和 Seeding,请参考:
https://laravel.com/docs/master/migrations
https://laravel.com/docs/master/seeding

Laravel 已经整合 PHPunit,我们要做的就是建好测试数据库及表,导入测试数据,写测试函数。这里为了测试方便,用 sqlite 代替 MySQL 做测试数据库,避免每次都要启动 MySQL 来测试的麻烦。

首先在 database 目录下创建一个 testing.database.sqlite 文件作为 sqlite 数据库文件

touch database/testing.database.sqlite


然后在 config/database.php 的 connections 中加入测试数据库

  ...

查看原文


[1]