首页 > 解决方案 > Laravel 和 phpunit - 无法进行测试

问题描述

我从 Laravel 中的测试开始,现在我无法使用 phpunit 进行测试。

我使用的 Laravel 版本是 5.0。

操作系统是 php 5.6 的 centos7。

因此,我编写的第一个代码是 ExampleTest.php 文件中现有函数的副本,存储在“tests”文件夹中,如下所示:

<?php

class ExampleTest extends TestCase {

	/**
	 * A basic functional test example.
	 *
	 * @return void
	 */
	public function testBasicExample()
	{
		//1 - verificando se a home devolve codigo 200
		$response = $this->call('GET', '/');
		$this->assertEquals(200, $response->getStatusCode());
	}

	public function testBasicExample2()
	{
		//1 - verificando se a home devolve codigo 200
		$response = $this->call('GET', '/');
		$this->assertEquals(200, $response->getStatusCode());
	}


}

此代码仅用于学习目的,此处的目标是让 phpunit 运行两个函数 testBasicExample 和 testBasicExample2。

下一步是运行 phpunit。就我而言,我必须转到 vendor/phpunit 目录并运行命令“php phpunit”。然后,命令返回错误:Laravel 5 Failed opening required bootstrap/../vendor/autoload.php

所以,我遵循了最佳答案,并在终端中运行了“composer update”。

好的,现在我可以运行“php phpunit”,但它运行其他测试,我看不到我的 exampletest 返回。

在此处输入图像描述

如果需要更多数据,请询问。任何帮助都将不胜感激。

提前致谢。

标签: phplaravel-5

解决方案


您应该从项目根目录运行二进制文件:

cd /path/to/project/root
./vendor/bin/phpunit

这应该会自动获取 laravel 包含的phpunit.xml配置。如果它不起作用,您可以尝试将其运行为:

cd /path/to/project/root
./vendor/bin/phpunit --configuration /path/to/project/root/phpunit.xml

推荐阅读