phpunit无法遵循安装过程

时间:2018-05-22 15:12:50

标签: php ubuntu phpunit

我在尝试安装phpunit时遇到很多问题,也许我的知识没有用到或指南非常不完整。

首先,安装,我全局尝试了“直接下载的PHAR文件”或“sudo apt-get install phpunit”,但是当我尝试这样做时:

$phpunit -v
bash: /usr/bin/phpunit: No chuch file or directory

如果我这样做:

$ ll /usr/local/bin (I know, the path is different, other unexplicable event)
-rwxr-xr-x 1 user user 2784899 abr 29 17:09 phpunit*

$ sudo phpunit --version
PHPUnit 7.1.5 by Sebastian Bergmann adn contributors.
好的,看起来更好,所以我试着制作第一个例子

<?php
use PHPUnit\Framework\TestCase;

class StackTest extends TestCase
{
    public function testPushAndPop()
    {
        $stack = [];
        $this->assertSame(0, count($stack));

        array_push($stack, 'foo');
        $this->assertSame('foo', $stack[count($stack)-1]);
        $this->assertSame(1, count($stack));

        $this->assertSame('foo', array_pop($stack));
        $this->assertSame(0, count($stack));
    }
}

但它给了我下一个错误:

PHP Fatal error: Class 'PHPUnit\Framework\Testcase' not found in /var/www/html/phpunit/index.php on line 4

我正在使用Ubuntu 18和php 7.2

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

当您从命令行运行PHPUnit时,您还需要包含一个&#39; bootstrap&#39; file - 它可以像composer autoload.php文件一样简单:

phpunit --bootstrap vendor/autoload.php 

从长远来看,该配置将被放入phpunit.xml文件中,以便读取,并由PHPunit自动运行。

<!-- file: phpunit.xml
     src/autoload.php would also include the ./vendor/autoload.php file
     and do any other locally required setup -->
<phpunit bootstrap="src/autoload.php">
  <testsuites>
    <testsuite name="money">
      <directory>tests</directory>
    </testsuite>
  </testsuites>
</phpunit>

答案 1 :(得分:0)

好的,我开始了解一些事情。 首先,@ Sebastian Bergmann给我提供线索,以this为例,它有效。

但是如果你从documentation开始,你就没有找到它。我认为这是一个错误,可能会让像我这样的乞丐混淆。

但是我不能用PHAR或全局安装phpunit,也许它可能是未来的新帖子。

全部谢谢