【问题标题】:Database Transactions Not Found - Lumen未找到数据库事务 - 流明
【发布时间】:2016-06-29 11:27:18
【问题描述】:

我一直在用流明编写测试,但我需要转移到另一台机器上,所以我一直在尝试设置它。我复制了我的测试,但是当我运行它们时,我都得到了这个错误

 [Symfony\Component\Debug\Exception\FatalErrorException]
 Trait 'Laravel\Lumen\Testing\DatabaseTransactions' not found

我想我已经安装了 lumen,就像我执行命令 composer require "laravel/installer" 一样。有什么我想做的吗?

编辑: 我查看了在旧机器上运行的版本,这段代码位于引导文件夹中 app.php 的顶部

try {
(new Dotenv\Dotenv(__DIR__.'/../'))->load();
} catch (Dotenv\Exception\InvalidPathException $e) {
//
}

我在我的新机器上的 app.php 顶部插入了它,并且该错误停止出现,我现在能够运行测试。不幸的是,当我只有默认示例测试时发生了一个新错误

1) ExampleTest::testBasicExample
   Error: Call to undefined method ExampleTest::visit()

我猜我仍然缺少 lumen/laravel 中的一些东西

【问题讨论】:

    标签: php laravel composer-php lumen lumen-5.2


    【解决方案1】:

    尝试以下方法:

    composer cache clean
    composer update
    composer dump-autoload
    

    【讨论】:

    • 检查引导/缓存或存储目录中是否有任何东西。
    • 据我所知,一切似乎都很好
    【解决方案2】:

    该命令适用于 Laravel 安装程序。 Lumen 安装程序的命令是:

    composer require "laravel/lumen-installer"
    

    但是,即使那样,也只会安装安装程序。您仍然需要运行命令来创建新安装(例如 lumen new my-site)。

    对于您正在尝试做什么以及您已经尝试过什么,存在很多歧义。

    通常在新机器上安装您的网站时,您应该只需要克隆您的存储库(或复制您的代码),然后执行composer install

    【讨论】:

    • 对不起,我试图克隆它的模棱两可。
    • 如果克隆我它并只是做作曲家安装我收到一个错误,作曲家找不到 composer.json 文件,因为供应商文件夹和其他文件似乎在我做某事之前不会生成像 composer 需要 "laravel/lumen-installer"
    • @Niall 您应该将您的composer.lock 文件添加到您的存储库中。如果您正在构建一个库,您可能希望忽略它,但由于这是您的应用程序的存储库,您希望拥有它,以便您可以在任何地方克隆您的代码,执行composer install,并知道完全相同的版本您的依赖项将被删除。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-08-19
    • 2016-04-04
    • 1970-01-01
    • 2015-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多