gpt4 book ai didi

laravel - 在 Laravel 中进行模拟时未找到类 'Eloquent'

转载 作者:行者123 更新时间:2023-12-02 12:21:45 25 4
gpt4 key购买 nike

我正在阅读 Jeffrey Way 的 Laravel 测试解码,但遇到了一个似乎无法修复的问题。

我实际上正在完成本教程:http://net.tutsplus.com/tutorials/php/testing-laravel-controllers/这是他的书的摘录。

基本上我有一个这样的测试:

class PostsTest extends TestCase {


public function __construct()
{
$this->mock = Mockery::mock('Eloquent', 'Post');
}

就像 mock Eloquent 和 Post 返回一样:

PHP Fatal error:  Class 'Eloquent' not found

当我运行 phpunit.顺便说一句,如果我使用 Jeffrey 的 Laravel 生成器并生成一些脚手架,例如

php artisan generate:scaffold post --fields="title:string, body:string"

运行 phpunit 我得到同样的错误。他正在使用相同的:

$this->mock = Mockery::mock('Eloquent', 'Post');

模拟类。有人对这个问题有什么建议吗?

<小时/>

我从头开始重新学习本教程,但仍然遇到相同的错误。我已将其推送到公共(public)存储库,以便人们可以看到:https://github.com/RyanHavoc/tdd-laravel

只需将其拉下来,运行composer install/update 和 phpunit。

最佳答案

我找到了问题的解决方案。

//Causes the Class 'Eloquent' not found error
public function __construct()
{
$this->mock = Mockery::mock('Eloquent', 'Post');
}

//Setting the mocks in the setUp() method instead works
public function setUp()
{
parent::setUp();
$this->mock = Mockery::mock('Eloquent', 'Post');
}

关于laravel - 在 Laravel 中进行模拟时未找到类 'Eloquent',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21339252/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com