zoukankan      html  css  js  c++  java
  • PHPUnit安装

    PHPUnit是一个轻量级的PHP测试框架。它是在PHP5下面对JUnit3系列版本的完整移植,是xUnit测试框架家族的一员(它们都基于模式先锋Kent Beck的设计)。单元测试是几个现代敏捷开发方法的基础,使得PHPUnit成为许多大型PHP项目的关键工具。这个工具也可以被Xdebug扩展用来生成代码覆盖率报告 ,并且可以与phing集成来自动测试,最后它还可以和Selenium整合来完成大型的自动化集成测试。

    Windows平台LAMP环境XAMPP 1.7.3下如何安装PHPUnit呢?

    首先,以管理员身份运行cmd,使用pear添加phpunit频道:

    D:\xampp\php>pear channel-discover pear.phpunit.de
    Channel "pear.phpunit.de" is already initialized

    频道添加好,尝试安装PHPUnit:

    D:\xampp\php>pear install phpunit/PHPUnit
    Unknown remote channel: pear.symfony-project.com
    Unknown remote channel: pear.symfony-project.com
    Unknown remote channel: components.ez.no
    Unknown remote channel: components.ez.no
    phpunit/PHPUnit requires PEAR Installer (version >= 1.9.1), installed version is 1.9.0
    phpunit/PHPUnit requires package "channel://pear.symfony-project.com/YAML" (version >= 1.0.2)
    phpunit/PHPUnit can optionally use PHP extension "dbus"
    phpunit/DbUnit requires PEAR Installer (version >= 1.9.1), installed version is1.9.0
    phpunit/DbUnit requires package "channel://pear.symfony-project.com/YAML" (version >= 1.0.2)
    phpunit/File_Iterator requires PEAR Installer (version >= 1.9.1), installed version is 1.9.0
    phpunit/PHP_CodeCoverage requires PEAR Installer (version >= 1.9.1), installed version is 1.9.0
    phpunit/PHP_CodeCoverage requires package "channel://components.ez.no/ConsoleTools" (version >= 1.6)
    phpunit/PHP_CodeCoverage requires package "phpunit/File_Iterator" (version >= 1.2.2)
    phpunit/PHP_CodeCoverage can optionally use PHP extension "xdebug" (version >= 2.0.5)
    phpunit/PHPUnit_MockObject requires PEAR Installer (version >= 1.9.1), installed version is 1.9.0
    phpunit/PHPUnit_Selenium requires PEAR Installer (version >= 1.9.1), installed version is 1.9.0
    phpunit/PHP_TokenStream requires PEAR Installer (version >= 1.9.1), installed version is 1.9.0
    phpunit/PHP_TokenStream requires package "channel://components.ez.no/ConsoleTools" (version >= 1.6)
    No valid packages found
    install failed

    从提示看出,需要安装PEAR 1.9.1,而当前PEAR是1.9.0,那就要先升级PEAR版本。

    pear list-upgrades可以列出当前可用的更新,
    D:\xampp\php>pear.bat list-upgrades
    WARNING: channel "pear.php.net" has updated its protocols, use "pear channel-update pear.php.net" to
    update

    D:\xampp\php>pear channel-update pear.php.net
    Updating channel "pear.php.net"
    Update of Channel "pear.php.net" succeeded

    D:\xampp\php>pear.bat list-upgrades
    PEAR.PHP.NET AVAILABLE UPGRADES (STABLE):
    =========================================
    CHANNEL     PACKAGE          LOCAL           REMOTE          SIZE
    pear.php.net Archive_Tar     1.3.3 (stable)  1.3.7 (stable)  17.2kB
    pear.php.net Console_Getargs 1.3.4 (stable)  1.3.5 (stable)  17.8kB
    pear.php.net Mail            1.1.14 (stable) 1.2.0 (stable)  23kB
    pear.php.net Mail_Mime       1.5.2 (stable)  1.8.1 (stable)  31kB
    pear.php.net Mail_mimeDecode 1.5.1 (stable)  1.5.5 (stable)  11.4kB
    pear.php.net Net_SMTP        1.3.4 (stable)  1.4.4 (stable)  12.1kB
    pear.php.net Net_Socket      1.0.9 (stable)  1.0.10 (stable) 5.3kB
    pear.php.net PEAR            1.9.0 (stable)  1.9.1 (stable)  287kB
    pear.php.net Structures_Graph 1.0.3 (stable) 1.0.4 (stable)  30kB
    Channel pear.phpunit.de: No upgrades available
    ZEND.GOOGLECODE.COM/SVN AVAILABLE UPGRADES (STABLE):
    ====================================================
    CHANNEL                PACKAGE LOCAL          REMOTE          SIZE
    zend.googlecode.com/svn zend   1.9.6 (stable) 1.11.1 (stable)   -

    更新所有可用更新:
    D:\xampp\php>pear upgrade-all
    Will upgrade channel://pear.php.net/archive_tar
    Will upgrade channel://pear.php.net/console_getargs
    Will upgrade channel://pear.php.net/mail
    Will upgrade channel://pear.php.net/mail_mime
    Will upgrade channel://pear.php.net/mail_mimedecode
    Will upgrade channel://pear.php.net/net_smtp
    Will upgrade channel://pear.php.net/net_socket
    Will upgrade channel://pear.php.net/pear
    Will upgrade channel://pear.php.net/structures_graph
    Will upgrade channel://zend.googlecode.com/svn/zend
    Did not download optional dependencies: pear/Auth_SASL, use --alldeps to download automatically
    pear/Net_SMTP can optionally use package "pear/Auth_SASL"
    downloading Archive_Tar-1.3.7.tgz ...
    Starting to download Archive_Tar-1.3.7.tgz (17,610 bytes)
    ......done: 17,610 bytes
    downloading Console_Getargs-1.3.5.tgz ...
    Starting to download Console_Getargs-1.3.5.tgz (18,207 bytes)
    ...done: 18,207 bytes
    downloading Mail-1.2.0.tgz ...
    Starting to download Mail-1.2.0.tgz (23,214 bytes)
    ...done: 23,214 bytes
    downloading Mail_Mime-1.8.1.tgz ...
    Starting to download Mail_Mime-1.8.1.tgz (31,530 bytes)
    ...done: 31,530 bytes
    downloading Mail_mimeDecode-1.5.5.tgz ...
    Starting to download Mail_mimeDecode-1.5.5.tgz (11,554 bytes)
    ...done: 11,554 bytes
    downloading Net_SMTP-1.4.4.tgz ...
    Starting to download Net_SMTP-1.4.4.tgz (12,264 bytes)
    ...done: 12,264 bytes
    downloading Net_Socket-1.0.10.tgz ...
    Starting to download Net_Socket-1.0.10.tgz (5,429 bytes)
    ...done: 5,429 bytes
    downloading PEAR-1.9.1.tgz ...
    Starting to download PEAR-1.9.1.tgz (293,587 bytes)
    ...done: 293,587 bytes
    downloading Structures_Graph-1.0.4.tgz ...
    Starting to download Structures_Graph-1.0.4.tgz (30,318 bytes)
    ...done: 30,318 bytes
    downloading Zend-1.11.1.tgz ...
    Starting to download Zend-1.11.1.tgz (3,638,888 bytes)
    ...done: 3,638,888 bytes
    upgrade-all ok: channel://pear.php.net/Archive_Tar-1.3.7
    upgrade-all ok: channel://pear.php.net/Console_Getargs-1.3.5
    upgrade-all ok: channel://pear.php.net/Mail-1.2.0
    upgrade-all ok: channel://pear.php.net/Mail_Mime-1.8.1
    upgrade-all ok: channel://pear.php.net/Net_Socket-1.0.10
    upgrade-all ok: channel://pear.php.net/Structures_Graph-1.0.4
    upgrade-all ok: channel://zend.googlecode.com/svn/Zend-1.11.1
    upgrade-all ok: channel://pear.php.net/Mail_mimeDecode-1.5.5
    upgrade-all ok: channel://pear.php.net/Net_SMTP-1.4.4
    upgrade-all ok: channel://pear.php.net/PEAR-1.9.1
    PEAR: Optional feature webinstaller available (PEAR's web-based installer)
    PEAR: Optional feature gtkinstaller available (PEAR's PHP-GTK-based installer)
    PEAR: Optional feature gtk2installer available (PEAR's PHP-GTK2-based installer)
    PEAR: To install optional features use "pear install pear/PEAR#featurename"

    更新成功后,PEAR已经是1.9.1版了,现在可以放心地安装PHPUnit了:

    D:\xampp\php>pear install phpunit/PHPUnit
    Unknown remote channel: pear.symfony-project.com
    Unknown remote channel: pear.symfony-project.com
    Unknown remote channel: components.ez.no
    Unknown remote channel: components.ez.no
    phpunit/PHPUnit requires package "channel://pear.symfony-project.com/YAML" (version >= 1.0.2)
    phpunit/PHPUnit can optionally use PHP extension "dbus"
    phpunit/DbUnit requires package "channel://pear.symfony-project.com/YAML" (version >= 1.0.2)
    phpunit/PHP_CodeCoverage requires package "channel://components.ez.no/ConsoleTools" (version >= 1.6)
    phpunit/PHP_CodeCoverage can optionally use PHP extension "xdebug" (version >= 2.0.5)
    phpunit/PHP_TokenStream requires package "channel://components.ez.no/ConsoleTools" (version >= 1.6)
    downloading File_Iterator-1.2.3.tgz ...
    Starting to download File_Iterator-1.2.3.tgz (3,406 bytes)
    ....done: 3,406 bytes
    downloading PHPUnit_MockObject-1.0.3.tgz ...
    Starting to download PHPUnit_MockObject-1.0.3.tgz (17,333 bytes)
    ...done: 17,333 bytes
    downloading PHPUnit_Selenium-1.0.1.tgz ...
    Starting to download PHPUnit_Selenium-1.0.1.tgz (15,285 bytes)
    ...done: 15,285 bytes
    install ok: channel://pear.phpunit.de/File_Iterator-1.2.3
    install ok: channel://pear.phpunit.de/PHPUnit_MockObject-1.0.3
    install ok: channel://pear.phpunit.de/PHPUnit_Selenium-1.0.1

    上面信息来看,还是没有安装成功,pear.symfony-project.com和components.ez.no两个频道也要添加一下:

    D:\xampp\php>pear channel-discover pear.symfony-project.com
    Adding Channel "pear.symfony-project.com" succeeded
    Discovery of channel "pear.symfony-project.com" succeeded

    D:\xampp\php>pear channel-discover components.ez.no
    Adding Channel "components.ez.no" succeeded
    Discovery of channel "components.ez.no" succeeded

    再次尝试安装PHPUnit:

    D:\xampp\php>pear install phpunit/PHPUnit
    phpunit/PHPUnit can optionally use PHP extension "dbus"
    phpunit/PHP_CodeCoverage can optionally use PHP extension "xdebug" (version >= 2.0.5)
    downloading PHPUnit-3.5.5.tgz ...
    Starting to download PHPUnit-3.5.5.tgz (116,148 bytes)
    ....................done: 116,148 bytes
    downloading DbUnit-1.0.0.tgz ...
    Starting to download DbUnit-1.0.0.tgz (38,183 bytes)
    ...done: 38,183 bytes
    downloading PHP_CodeCoverage-1.0.2.tgz ...
    Starting to download PHP_CodeCoverage-1.0.2.tgz (109,280 bytes)
    ...done: 109,280 bytes
    downloading YAML-1.0.4.tgz ...
    Starting to download YAML-1.0.4.tgz (9,919 bytes)
    ...done: 9,919 bytes
    downloading ConsoleTools-1.6.1.tgz ...
    Starting to download ConsoleTools-1.6.1.tgz (869,994 bytes)
    ...done: 869,994 bytes
    downloading PHP_TokenStream-1.0.1.tgz ...
    Starting to download PHP_TokenStream-1.0.1.tgz (7,250 bytes)
    ...done: 7,250 bytes
    downloading Base-1.8.tgz ...
    Starting to download Base-1.8.tgz (236,357 bytes)
    ...done: 236,357 bytes
    install ok: channel://pear.symfony-project.com/YAML-1.0.4
    install ok: channel://components.ez.no/Base-1.8
    install ok: channel://pear.phpunit.de/DbUnit-1.0.0
    install ok: channel://components.ez.no/ConsoleTools-1.6.1
    install ok: channel://pear.phpunit.de/PHP_TokenStream-1.0.1
    install ok: channel://pear.phpunit.de/PHP_CodeCoverage-1.0.2
    install ok: channel://pear.phpunit.de/PHPUnit-3.5.5

    PHPUnit安装成功!!!
  • 相关阅读:
    第一阶段冲刺(6)--每日立会--个人工作总结
    第一阶段冲刺--每日立会(5)--个人工作总结
    第一阶段冲刺--每日立会(4)--个人工作总结
    第十一周学习记录表
    第一阶段冲刺--每日立会(3)个人工作总结
    第一阶段冲刺--每日立会(2)--个人工作总结
    第一阶段冲刺--每日立会(1)--个人工作总结
    第十周学习记录表
    第九周学习进度表
    输入法
  • 原文地址:https://www.cnblogs.com/liuguanghuiyes/p/1992556.html
Copyright © 2011-2022 走看看