laravel测试错误,没有这样的文件或目录

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了laravel测试错误,没有这样的文件或目录相关的知识,希望对你有一定的参考价值。

我正试图在laravel中创建我的第一个测试。

    $random = str_random(12);
    $payload = [
        'name' => $random,
        'email' => $random .'@www.com',
        'password' => '123456',            

    ];

    $this->json('post', '/api/v1/register', $payload)
    ->assertStatus(200);

从这个url /api/v1/register调用的方法包含:

    $rules      = User::rules();
    $validation = Validator::make( $this->input, $rules );

    if ( $validation->fails() ) {

        return true;
}else return true;

当我运行测试时,它给出响应状态500。

当我在这一行上面写(echo 1;)时:if($ validation-> failed()){它输出(1)加上500状态响应

如果我在相同的行下面写echo 1;,则不输出任何内容,因此行生成错误。

我检查laravel日志文件,这是错误:

[2018-03-03 12:55:07] testing.ERROR:SQLSTATE [HY000] [2002]没有这样的文件或目录{“exception”:“[object](PDOException(code:2002):SQLSTATE [HY000] [ 2002年] /opt/lampp/htdocs/ws/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:67中没有这样的文件或目录

注意:从浏览器或从其他客户端调用相同的URL可以正常工作,没有错误。

答案

你有没有对你的phpunit.xml做出任何改变?听起来像你的测试环境正在寻找一个不存在的数据库。

以上是关于laravel测试错误,没有这样的文件或目录的主要内容,如果未能解决你的问题,请参考以下文章

无法打开流:没有这样的文件或目录(Laravel)

将 laravel 部署到 Nginx 中出现错误“无法打开流:没有这样的文件或目录”

Laravel classloader.php 错误打开流失败:没有这样的文件或目录

laravel安装完成后,访问public目录,显示一片空白怎么回事

在 Mac 上设置 Laravel php artisan migrate 错误:没有这样的文件或目录 [重复]

在 Mac 上设置 Laravel php artisan migrate 错误:没有这样的文件或目录 [重复]