您的位置:軟件測(cè)試 > 開(kāi)源軟件測(cè)試 > 開(kāi)源單元測(cè)試工具 > PHPUnit
PHPUnit袖珍指南
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2013/7/2 11:10:12 ] 推薦標(biāo)簽:

phpunit UnitTest UnitTest.php

  運(yùn)行類UnitTest提供的測(cè)試,該類要定義在命令指定的源文件(UnitTest.php)中。

--coverage-data, --coverage-html, and --coverage-text

  控制運(yùn)行測(cè)試的代碼覆蓋信息的分析和集合(參見(jiàn)本書(shū)后代碼覆蓋分析一節(jié))

--testdox-html and --testdox-text

  以HTML或普通文本格式生成運(yùn)行測(cè)試的敏捷文檔(參見(jiàn)本書(shū)后的“測(cè)試的其他用途”一章)

--log-xml

  生成運(yùn)行測(cè)試的XML格式的日志文件。

  下一個(gè)例子顯示為ArrayTest中的測(cè)試生成的XML日志文件。

<?xml version="1.0" encoding="UTF-8"?>
<testsuites>
。紅estsuite name="ArrayTest" tests="2" failures="0" errors="0" time="0.020026">
。紅estcase name="testNewArrayIsEmpty" class="ArrayTest" time="0.014449"/>
。紅estcase name="testArrayContainsAnElement" class="ArrayTest" time="0.005577"/>
</testsuite>
</testsuites>

  下面的XML日志文件是為名為FailureErrorTest的測(cè)試類兩個(gè)測(cè)試生成的,一個(gè)是testFailure,一個(gè)是testError。這顯示了失敗和錯(cuò)誤是如何分別表示的。

<?xml version="1.0" encoding="UTF-8"?>
<testsuites>
。紅estsuite name="FailureErrorTest" tests="2" failures="1" errors="1" time="0.013603">
 <testcase name="testFailure" class="FailureErrorTest" time="0.011872">
。糵ailure message="" type="PHPUnit2_Framework_AssertionFailedError"></failure>
</testcase>
<testcase name="testError" class="FailureErrorTest" time="0.001731">
。糴rror message="" type="Exception"></error>
</testcase>
</testsuite>
</testsuites>
--loader

  指定將要使用的測(cè)試套件加載器。

  標(biāo)準(zhǔn)測(cè)試套件加載器會(huì)在當(dāng)前工作目錄和PHP的include_path configuration指令定義的路徑中尋找源文件。按照PEAR的命名規(guī)則,形如Project_Package_Class的類名會(huì)映射到的源文件為Project/Package/Class.php。

  --skeleton

  為類Unit(在文件Unit.php中)生成一個(gè)名為UnitTest(在文件UnitTest.php中)的測(cè)試用例類的框架。對(duì)原始類的每個(gè)方法,在生成的測(cè)試用例類中提供了一個(gè)未完成的測(cè)試用例(見(jiàn)本書(shū)后的“未完成測(cè)試”部分)。

  下面的例子顯示了如何為一個(gè)名為Sample的類生成一個(gè)測(cè)試類的框架。

phpunit --skeleton Sample
PHPUnit 2.3.0 by Sebastian Bergmann.
Wrote test class skeleton for Sample to
SampleTest.php.
phpunit SampleTest
PHPUnit 2.3.0 by Sebastian Bergmann.
I
Time: 0.007268
There was 1 incomplete test case:
1) testSampleMethod(SampleTest)
OK, but incomplete test cases!!!
Tests run: 1, incomplete test cases: 1.

  當(dāng)你為現(xiàn)有代碼書(shū)寫(xiě)測(cè)試時(shí),你不得不重復(fù)很多相同的代碼片斷,如:

public function testSampleMethod( ) {}

  PHPUnit能幫助你分析現(xiàn)有代碼,生成測(cè)試用例類的框架。

--wait

  每個(gè)測(cè)試結(jié)束時(shí),等待一次擊鍵。這很有用,特別是你在一個(gè)只有測(cè)試一直運(yùn)行在打開(kāi)的窗口中運(yùn)行測(cè)試時(shí)。

  提示 當(dāng)被測(cè)試代碼中有PHP語(yǔ)法錯(cuò)誤時(shí),文本界面的測(cè)試會(huì)直接退出,不輸出任何錯(cuò)誤信息。標(biāo)準(zhǔn)的測(cè)試套件加載器會(huì)檢查測(cè)試套件的源文件的PHP語(yǔ)法錯(cuò)誤,但是,它不會(huì)檢查測(cè)試套件包含的源文件的語(yǔ)法錯(cuò)誤。PHPUnit的未來(lái)版本會(huì)用在砂箱中PHP解釋器類解決這個(gè)問(wèn)題。

上一頁(yè)12下一頁(yè)
軟件測(cè)試工具 | 聯(lián)系我們 | 投訴建議 | 誠(chéng)聘英才 | 申請(qǐng)使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd