単体テストはいくつかの最新のアジャイル開発手法の基礎であり、PHPUnit は多くの大規模な PHP プロジェクトにとって重要なツールとなっています。このツールは、Xdebug 拡張機能でコード カバレッジ レポートを生成するために使用することもでき、phing と統合してテストを自動化することもでき、最後に、Selenium と統合して大規模な自動統合テストを完了することもできます。
Windows プラットフォームの LAMP 環境で XAMPP 1.7.3 に PHPUnit をインストールするにはどうすればよいですか?
まず、管理者として cmd を実行し、pear を使用して phpunit チャネルを追加します。
D:xamppphp>pear channel-discover pear.phpunit.de
チャネル "pear.phpunit.de" はすでに初期化されています
チャネルが追加された後、次のことを試してくださいPHPUnit のインストール :
D:xamppphp>pear install phpunit/PHPUnit
不明なリモート チャネル: pear.symfony-project.com
不明なリモート チャネル: pear.symfony-project.com
不明なリモート チャネル:components.ez.no
不明なリモートチャンネル:components.ez.no
phpunit/PHPUnit には PEAR インストーラーが必要です (バージョン >= 1.9.1)、インストールされているバージョンは 1.9.0 です
phpunit/PHPUnit にはパッケージ「channel://pear.symfony-project.com/YAML」が必要です" (バージョン >= 1.0.2)
phpunit/PHPUnit はオプションで PHP 拡張機能「dbus」を使用できます
phpunit/DbUnit には PEAR インストーラーが必要です (バージョン >= 1.9.1)、インストールされているバージョンは 1.9.0 です
phpunit/DbUnit にはパッケージが必要です「channel ://pear.symfony-project.com/YAML」 (バージョン >= 1.0.2)
phpunit/File_Iterator には PEAR インストーラーが必要 (バージョン >= 1.9.1)、インストールされているバージョンは 1.9.0 です
phpunit/ PHP_CodeCoverage には PEAR インストーラー (バージョン >= 1.9.1) が必要です。インストールされているバージョンは 1.9.0 です
phpunit/PHP_CodeCoverage にはパッケージ "channel://components.ez.no/ConsoleTools" (バージョン >= 1.6) が必要です
phpunit/PHP_CodeCoverageパッケージ「phpunit/File_Iterator」が必要です (バージョン >= 1.2.2)
phpunit/PHP_CodeCoverage はオプションで PHP 拡張機能「xdebug」を使用できます (バージョン >= 2.0.5)
phpunit/PHPUnit_MockObject は PEAR インストーラーが必要です (バージョン >= 1.9) .1 )、インストールされているバージョンは 1.9.0 です
phpunit/PHPUnit_Selenium には PEAR インストーラーが必要です (バージョン >= 1.9.1)、インストールされているバージョンは 1.9.0 です
phpunit/PHP_TokenStream には PEAR インストーラーが必要です (バージョン >= 1.9.1)、インストールされているバージョンは 1.9.0 です
phpunit/PHP_TokenStream にはパッケージ "channel://components.ez.no/ConsoleTools" が必要です (バージョン >= 1.6)
有効なパッケージが見つかりません
インストールに失敗しました
プロンプトから、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 にはパッケージ "channel://components.ez.no/ConsoleTools" (バージョン >= 1.6) が必要です
phpunit/PHP_CodeCoverage はオプションで PHP 拡張機能 "xdebug" (バージョン >= 2.0.5) を使用できます
phpunit/PHP_TokenStreamパッケージ「channel://components.ez.no/ConsoleTools」が必要です (バージョン >= 1.6)
File_Iterator-1.2.3.tgz をダウンロード中 ...
File_Iterator-1.2.3.tgz (3,406 バイト) のダウンロードを開始しています
....完了: 3,406 バイト
PHPUnit_MockObject-1.0.3.tgz のダウンロード中 ...
PHPUnit_MockObject-1.0.3.tgz のダウンロードを開始しています (17,333 バイト)
...完了: 17,333 バイト
PHPUnit_Selenium-1.0.1 のダウンロード中.tgz ...
PHPUnit_Selenium-1.0.1.tgz (15,285 バイト) のダウンロードを開始します
...完了: 15,285 バイト
インストール OK: channel://pear.phpunit.de/File_Iterator-1.2.3
インストール OK :channel://pear.phpunit.de/PHPUnit_MockObject-1.0.3
インストールOK:channel://pear.phpunit.de/PHPUnit_Selenium-1.0.1
上面情報来看,还是無しインストール成功,pear.symfony- project.com和components.ez.no两个オーディオ道も追加要一下:
D:xamppphp>pear channel-discover pear.symfony-project.com
チャンネル「pear.symfony-project.com」の追加に成功しました
チャンネルの発見「pear.symfony-project.com」は成功しました
D:xamppphp>pear channel-discoverComponents.ez.no
チャンネル「components.ez.no」の追加は成功しました
チャンネル「components.ez.no」の検出は成功しました
再次尝试PHPUnitのインストール:
D:xamppphp>pear install phpunit/PHPUnit
phpunit/PHPUnitはオプションでPHP拡張機能「dbus」を使用できます
phpunit/PHP_CodeCoverageはオプションでPHP拡張機能「xdebug」を使用できます(バージョン>= 2.0.5)
PHPUnitのダウンロード- 3.5.5.tgz ...
PHPUnit-3.5.5.tgz (116,148 バイト) のダウンロードを開始します
..................完了: 116,148 バイト
ダウンロード中DbUnit-1.0.0.tgz ...
DbUnit-1.0.0.tgz のダウンロードを開始しています (38,183 バイト)
...完了: 38,183 バイト
PHP_CodeCoverage-1.0.2.tgz をダウンロードしています ...
PHP_CodeCoverage のダウンロードを開始しています-1.0.2.tgz (109,280 バイト)
...完了: 109,280 バイト
YAML-1.0.4.tgz をダウンロード中 ...
YAML-1.0.4.tgz (9,919 バイト) のダウンロードを開始しています
...完了: 9,919 バイト
ConsoleTools-1.6.1.tgz をダウンロード中 ...
ConsoleTools-1.6.1.tgz のダウンロードを開始しています (869,994 バイト)
...完了: 869,994 バイト
PHP_TokenStream-1.0.1.tgz をダウンロードしています ...
PHP_TokenStream-1.0.1.tgz (7,250 バイト) のダウンロードを開始しています
...完了: 7,250 バイト
Base-1.8.tgz をダウンロード中 ...
Base-1.8.tgz (236,357 バイト) のダウンロードを開始しています
...完了: 236,357 バイト
インストール OK:channel://pear.symfony-project.com/YAML-1.0.4
インストール OK:channel://components.ez.no/Base-1.8
インストール OK:channel:// pear.phpunit.de/DbUnit-1.0.0
インストールOK:channel://components.ez.no/ConsoleTools-1.6.1
インストールOK:channel://pear.phpunit.de/PHP_TokenStream-1.0.1
インストールOK:channel://pear.phpunit.de/PHP_CodeCoverage-1.0.2
インストールOK:channel://pear.phpunit.de/PHPUnit-3.5.5
PHPUnitのインストール成功!!
以上は、宣言されていない識別子 PHPUnit を介した PHP フレームのインストール方法であり、宣言されていない識別子に関する内容が含まれているため、PHP 教則に関心のある友人の助けになることを望みます。