Laravel 和 phpunit - 无法进行测试

Posted

技术标签:

【中文标题】Laravel 和 phpunit - 无法进行测试【英文标题】:Laravel and phpunit - can't reach tests 【发布时间】:2019-03-06 17:37:54 【问题描述】:

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

我使用的 Laravel 版本是 5.0。

操作系统是centos7,php 5.6。

所以,我编写的第一个代码是 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 返回。

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

提前致谢。

【问题讨论】:

【参考方案1】:

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

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

【讨论】:

以上是关于Laravel 和 phpunit - 无法进行测试的主要内容,如果未能解决你的问题,请参考以下文章

无法测试事件是不是具有 Laravel 5 和 PHPUnit 的属性

Laravel 5.4 phpunit 与黄昏测试 Env App_Url

laravel 4 无法让 phpunit 测试工作

Laravel:phpunit无法打开文件ExampleTest.php

无法在cpanel上上传phpunit Laravel文件

如何创建仅用于测试的 Laravel 路由(phpunit)?