电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

PHPUnit袖珍指南之命令行測試工具

瀏覽:82日期:2024-02-08 15:40:41

PHPUnit命令行測試工具是通過phpunit命令調用的。如下代碼顯示如何通過PHPUnit命令行測試工具運行測試。

phpunit ArrayTestPHPUnit 2.3.0 by Sebastian Bergmann.

Time: 0.067288

OK (2 tests)

對每個測試,PHPUnit命令行測試工具打印一個字符表示進程:

·測試成功打印“.”。

·運行測試方法是發生了斷言失敗打印“F”。

·運行測試方法是發生了錯誤打印“E”。

·測試沒有完成或測試沒有實現打印“I”(見本書后“未完成的測試”一章)。

PHPUnit可以區分失敗和錯誤。一個失敗是PHPUnit的斷言違例,錯誤是一個意料外的異常或一個PHP錯誤。有時候這種差別是有用的,因為錯誤相比失敗更容易修正。如果你有一大串問題列表,最好先解決所有錯誤,然后看看有沒有失敗遺留下來。

讓我們看看如下一些代碼命令行測試工具的選項:

phpunit --helpPHPUnit 2.3.0 by Sebastian Bergmann.

Usage: phpunit [switches] UnitTest [UnitTest.php]--coverage-data <file> Write code-coverage data in raw format to file.--coverage-html <file> Write code-coverage data in HTML format to file.--coverage-text <file> Write code-coverage data in text format to file.--testdox-html <file> Write agile documentation in HTML format to file.--testdox-text <file> Write agile documentation in Text format to file.--log-xml <file> Log test progress in XML format to file.--loader <loader> TestSuiteLoader implementation to use.--skeleton Generate skeleton UnitTest class for Unit in Unit.php.--wait Waits for a keystroke after each test.--help Prints this usage information.--version Prints the version and exits.

phpunit UnitTest

運行類UnitTest提供的測試,該類應該定義在源文件UnitTest.php中。

類UnitTest必須繼承PHPUnit2_Framework_TestCase類,或是提供了公有靜態方法suite,并返回PHPUnit2_ Framework_Test對象的類(例如,類PHPUnit2_Framework_TestSuite的一個實例)

phpunit UnitTest UnitTest.php

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

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

控制運行測試的代碼覆蓋信息的分析和集合(參見本書后代碼覆蓋分析一節)

--testdox-html and --testdox-text

以HTML或普通文本格式生成運行測試的敏捷文檔(參見本書后的“測試的其他用途”一章)

--log-xml

生成運行測試的XML格式的日志文件。

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

<?xml version='1.0' encoding='UTF-8'?> <testsuites>  <testsuite name='ArrayTest' tests='2' failures='0' errors='0' time='0.020026'>  <testcase name='testNewArrayIsEmpty' time='0.014449'/> <testcase name='testArrayContainsAnElement' time='0.005577'/> </testsuite> </testsuites>

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

<?xml version='1.0' encoding='UTF-8'?> <testsuites>  <testsuite name='FailureErrorTest' tests='2' failures='1' errors='1' time='0.013603'>  <testcase name='testFailure' time='0.011872'> <failure message='' type='PHPUnit2_Framework_AssertionFailedError'></failure></testcase><testcase name='testError' time='0.001731'>  <error message='' type='Exception'></error> </testcase></testsuite></testsuites>--loader

指定將要使用的測試套件加載器。

標準測試套件加載器會在當前工作目錄和PHP的include_path configuration指令定義的路徑中尋找源文件。按照PEAR的命名規則,形如Project_Package_Class的類名會映射到的源文件為Project/Package/Class.php。

--skeleton

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

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

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

當你為現有代碼書寫測試時,你不得不重復很多相同的代碼片斷,如:

public function testSampleMethod( ) {}

PHPUnit能幫助你分析現有代碼,生成測試用例類的框架。

--wait

每個測試結束時,等待一次擊鍵。這很有用,特別是你在一個只有測試一直運行在打開的窗口中運行測試時。

提示 當被測試代碼中有PHP語法錯誤時,文本界面的測試會直接退出,不輸出任何錯誤信息。標準的測試套件加載器會檢查測試套件的源文件的PHP語法錯誤,但是,它不會檢查測試套件包含的源文件的語法錯誤。PHPUnit的未來版本會用在砂箱中PHP解釋器類解決這個問題。

標簽: PHP
主站蜘蛛池模板: 吸音板,隔音板,吸音材料,吸音板价格,声学材料 - 佛山诺声吸音板厂家 | 微信小程序定制,广州app公众号商城网站开发公司-广东锋火 | 厂房出租_厂房出售_产业园区招商_工业地产 - 中工招商网 | 退火炉,燃气退火炉,燃气热处理炉生产厂家-丹阳市丰泰工业炉有限公司 | 防爆电机生产厂家,YBK3电动机,YBX3系列防爆电机,YBX4节防爆电机--河南省南洋防爆电机有限公司 | 天然气分析仪-液化气二甲醚分析仪|传昊仪器 | 山东钢格板|栅格板生产厂家供应商-日照森亿钢格板有限公司 | 直读光谱仪,光谱分析仪,手持式光谱仪,碳硫分析仪,创想仪器官网 | 细砂提取机,隔膜板框泥浆污泥压滤机,螺旋洗砂机设备,轮式洗砂机械,机制砂,圆锥颚式反击式破碎机,振动筛,滚筒筛,喂料机- 上海重睿环保设备有限公司 | 加盟店-品牌招商加盟-创业项目商机平台 | 老城街小面官网_正宗重庆小面加盟技术培训_特色面馆加盟|牛肉拉面|招商加盟代理费用多少钱 | 安平县鑫川金属丝网制品有限公司,声屏障,高速声屏障,百叶孔声屏障,大弧形声屏障,凹凸穿孔声屏障,铁路声屏障,顶部弧形声屏障,玻璃钢吸音板 | 重庆网站建设,重庆网站设计,重庆网站制作,重庆seo,重庆做网站,重庆seo,重庆公众号运营,重庆小程序开发 | 半容积式换热器_北京浮动盘管换热器厂家|北京亿丰上达 | 单柱拉力机-橡胶冲片机-哑铃裁刀-江都轩宇试验机械厂 | 耐酸碱胶管_耐腐蚀软管总成_化学品输送软管_漯河利通液压科技耐油耐磨喷砂软管|耐腐蚀化学软管 | 丹佛斯变频器-丹佛斯压力开关-变送器-广州市风华机电设备有限公司 | 重庆磨床过滤机,重庆纸带过滤机,机床伸缩钣金,重庆机床钣金护罩-重庆达鸿兴精密机械制造有限公司 | 拉力机-万能试验机-材料拉伸试验机-电子拉力机-拉力试验机厂家-冲击试验机-苏州皖仪实验仪器有限公司 | 重庆磨床过滤机,重庆纸带过滤机,机床伸缩钣金,重庆机床钣金护罩-重庆达鸿兴精密机械制造有限公司 | 电线电缆厂家|沈阳电缆厂|电线厂|沈阳英联塑力线缆有限公司 | 气动隔膜泵-电动隔膜泵-循环热水泵-液下排污/螺杆/管道/化工泵「厂家」浙江绿邦 | 仓储货架_南京货架_钢制托盘_仓储笼_隔离网_环球零件盒_诺力液压车_货架-南京一品仓储设备制造公司 | 东莞工厂厂房装修_无尘车间施工_钢结构工程安装-广东集景建筑装饰设计工程有限公司 | 哔咔漫画网页版在线_下载入口访问指引 | 净水器代理,净水器招商,净水器加盟-FineSky德国法兹全屋净水 | 依维柯自动挡房车,自行式国产改装房车,小型房车价格,中国十大房车品牌_南京拓锐斯特房车 - 南京拓锐斯特房车 | 双齿辊破碎机-大型狼牙破碎机视频-对辊破碎机价格/型号图片-金联机械设备生产厂家 | 厦门ISO认证|厦门ISO9001认证|厦门ISO14001认证|厦门ISO45001认证-艾索咨询专注ISO认证行业 | 翅片管散热器价格_钢制暖气片报价_钢制板式散热器厂家「河北冀春暖气片有限公司」 | 精密光学实验平台-红外粉末压片机模具-天津博君 | 吉林污水处理公司,长春工业污水处理设备,净水设备-长春易洁环保科技有限公司 | 吸污车_吸粪车_抽粪车_电动三轮吸粪车_真空吸污车_高压清洗吸污车-远大汽车制造有限公司 | 贝壳粉涂料-内墙腻子-外墙腻子-山东巨野七彩贝壳漆业中心 | 淬火设备-钎焊机-熔炼炉-中频炉-锻造炉-感应加热电源-退火机-热处理设备-优造节能 | SDG吸附剂,SDG酸气吸附剂,干式酸性气体吸收剂生产厂家,超过20年生产使用经验。 - 富莱尔环保设备公司(原名天津市武清县环保设备厂) | 电伴热系统施工_仪表电伴热保温箱厂家_沃安电伴热管缆工业技术(济南)有限公司 | 滑板场地施工_极限运动场地设计_滑板公园建造_盐城天人极限运动场地建设有限公司 | 压缩空气冷冻式干燥机_吸附式干燥机_吸干机_沪盛冷干机 | 选宝石船-陆地水上开采「精选」色选机械设备-青州冠诚重工机械有限公司 | 高防护蠕动泵-多通道灌装系统-高防护蠕动泵-www.bjhuiyufluid.com慧宇伟业(北京)流体设备有限公司 |