• ubuntu 12.04 安装phpUnit


    Ubuntu上安装

    sudo apt-get install phpunit

    验证PHPUnit安装成功,命令行输入phpunit

    $ phpunit

    安装成功打印:

    PHPUnit 3.6.11 by Sebastian Bergmann.

    Usage: phpunit [switches] UnitTest [UnitTest.php]

    phpunit [switches] <directory>

    如果出现如下的错误。

    PHP Warning: require_once(PHP/CodeCoverage/Filter.php): failed to open stream: No such file or directory in /usr/bin/phpunit on line 39

    PHP Fatal error: require_once(): Failed opening required 'PHP/CodeCoverage/Filter.php' (include_path='.:/usr/share/php:/usr/share/pear') in /usr/bin/phpunit on line 39

    更新 chanel 和 pear,来自 Debian 和 ubuntu 社区的方法。测试可用

    sudo apt-get remove phpunit
    apt-get autoremove
    apt-get autoclean

    root@ubuntu:~# pear channel-discover pear.phpunit.de
    root@ubuntu:~# pear channel-discover pear.symfony-project.com
    root@ubuntu:~# pear channel-discover components.ez.no
    root@ubuntu:~# pear update-channels
    root@ubuntu:sudo pear upgrade-all
    root@ubuntu:sudo pear install --alldeps phpunit/PHPUnit  //这个可以省略

    root@ubuntu:~# sudo pear install --force --alldeps phpunit/PHPUnit

    成功:
    root@ubuntu:~# phpunit
        PHP Deprecated:  Comments starting with '#' are deprecated in /etc/php5/cli/conf.d/ming.ini on l    ine 1 in Unknown on line 0
        PHPUnit 3.7.14 by Sebastian Bergmann.

     测试:

    class DependencyFailureTest extends PHPUnit_Framework_TestCase
    {
        public function testOne()
        {
            $this->assertTrue(FALSE);
        }
     
        /**
         * @depends testOne
         */
        public function testTwo()
        {
        }
    }

    结果:

    root@ubuntu:~# phpunit /home/beyourself/myphp/phpinfo.php 
    PHP Deprecated:  Comments starting with '#' are deprecated in /etc/php5/cli/conf.d/ming.ini on line 1 in Unknown on line 0
    
    PHPUnit 3.7.14 by Sebastian Bergmann.
    
    FS
    
    Time: 0 seconds, Memory: 2.50Mb
    
    There was 1 failure:
    
    1) DependencyFailureTest::testOne
    Failed asserting that false is true.
    
    /home/beyourself/myphp/phpinfo.php:24
    
    FAILURES!
    Tests: 1, Assertions: 1, Failures: 1, Skipped: 1.

     成功的测试例子:

    <?php
    class ExpectedErrorTest extends PHPUnit_Framework_TestCase
    {
        /**
         * @expectedException PHPUnit_Framework_Error
         */
        public function testFailingInclude()
        {
            include 'not_existing_file.php';
        }
    }
    ?>
    结果:
    
    phpunit ExpectedErrorTest
    PHPUnit 3.7.0 by Sebastian Bergmann.
    
    .
    
    Time: 0 seconds, Memory: 5.25Mb
    
    OK (1 test, 1 assertion)

     解释一个函数:

    
    
    1.
    1
    class ArrayHasKeyTest extends PHPUnit_Framework_TestCase 2 { 3 public function testFailure() 4 { 5 $this->assertArrayHasKey('foo', array('ave' => 'baz')); 6 } 7 }
    assertArrayHasKey($key,$array) Reports an error identified by $message if $array does not have the $key.
    
    
    

    1
    root@ubuntu:~# phpunit /home/beyourself/myphp/phpinfo.php 2 PHP Deprecated: Comments starting with '#' are deprecated in /etc/php5/cli/conf.d/ming.ini on line 1 in Unknown on line 0 3 4 PHPUnit 3.7.14 by Sebastian Bergmann. 5 6 F 7 8 Time: 0 seconds, Memory: 2.50Mb 9 10 There was 1 failure: 11 12 1) ArrayHasKeyTest::testFailure 13 Failed asserting that an array has the key 'foo'. 14 15 /home/beyourself/myphp/phpinfo.php:36 16 17 FAILURES! 18 Tests: 1, Assertions: 1, Failures: 1.
    二//
    1
    class ArrayHasKeyTest extends PHPUnit_Framework_TestCase 2 2 { 3 3 public function testFailure() 4 4 { 5 5 $this->assertArrayHasKey('foo', array('foo' => 'baz')); 6 6 } 7 7 }
    19 root@ubuntu:~# phpunit /home/beyourself/myphp/phpinfo.php 
    20 PHP Deprecated:  Comments starting with '#' are deprecated in /etc/php5/cli/conf.d/ming.ini on line 1 in Unknown on line 0
    21 
    22 PHPUnit 3.7.14 by Sebastian Bergmann.
    23 
    24 .
    25 
    26 Time: 0 seconds, Memory: 2.50Mb
    27 
    28 OK (1 test, 1 assertion)



  • 相关阅读:
    【python】Excel从源表提取相应信息到目标表格
    Vue.config.productionTip 关闭生产提示
    [elementui]多行confirm
    [vue]防抖(debounce) 和 节流(throttling)
    C#的面向对象之继承与多态
    C#中接口与抽象类
    为iPhone开发iPad风格的弹出窗口
    新闻资讯APP开发流程(五) MainView.js
    titanium开发实例社交APP一之登录窗口
    titanium开发实例社交APP二之注册窗口
  • 原文地址:https://www.cnblogs.com/zhangjun516/p/2932311.html
Copyright © 2020-2023  润新知