亚洲好骚综合-亚洲黄色录像-亚洲黄色网址-亚洲黄色网址大全-99久久99久久-99久久99久久精品国产

您的位置:軟件測試 > 開源軟件測試 > 開源單元測試工具 > PHPUnit
PHP單元測試工具PHPUnit初體驗(yàn)
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時間:[ 2013/3/11 17:29:12 ] 推薦標(biāo)簽:

     接到了個任務(wù),需要對數(shù)字進(jìn)行計(jì)算,因?yàn)樯婕暗秸麛?shù),小數(shù),和科學(xué)計(jì)數(shù)法等很多條件,所以人工測試非常麻煩,于是想到了PHP的單元測試工具PHPUnit,所以寫個文檔備查。

看了PHPUnit的文檔之后基本有了一些了解,
http://pear.php.net/manual/en/packages.php.phpunit.intro.php

工作流程如下:
1.設(shè)計(jì)你的class/API
2.創(chuàng)建測試程序集
3.實(shí)現(xiàn)class/API
4.運(yùn)行測試
5.修正測試失敗或錯誤,回到第4步。

我們來舉個例子:
下面是你要測試的class,其中formatn函數(shù)一個取任意數(shù)字的5位有效數(shù)字的函數(shù)。

CODE:
----------format_number.php-----------
class fo {

        function fo() {
        }

        function formatn($num) {
                $num = rtrim($num,"0");
                $pos = strpos($num,".");
                $num = str_replace(".","",$num);
                $count1 = strlen($num);
                $num = ltrim($num,"0");
                $count2 = strlen($num);
                $zeroc = $count1 - $count2;
                $num = substr($num,0,6);
                $num = round($num/10);
                //$num = str_pad($num, 5, "0");
                if ($pos !== false) {
                        $num = str_pad($num, (strlen($num)+$zeroc), "0", STR_PAD_LEFT);
                        $dotl = substr($num,0,$pos);
                        $dotr = substr($num,$pos);
                        $num = $dotl.".".$dotr;
                }
                return $num;
        }

}
接著創(chuàng)建TestCase,繼承自PHPUnit_TestCase

CODE:
----------testcase.php-----------


 

require_once 'format_number.php';
require_once 'PHPUnit.php';

class foTest extends PHPUnit_TestCase {

        //這個成員變量是存放要測試的類引用
        var $abc;

        //構(gòu)造函數(shù)
        function foTest($name) {
                $this->;PHPUnit_TestCase($name);
        }

        //new一個要測試的類為成員變量abc賦值
        function setUp() {
                $this->;abc = new fo;
        }

        //unset要測試的類
        function tearDown() {
                unset($this->;abc);
        }

        //自定義的testcase
        function testFormatn1() {
                //調(diào)用要測試的類的方法,結(jié)果放到$result變量
                $result = $this->;abc->;formatn("100.234");
                //期望結(jié)果
                $expected = "100.23";
                //判斷是否相等,這里使用assertTrue方法來判斷布而值是否為true。
                $this->;assertTrue($result == $expected);
        }

        function testFormatn2() {
                $result = $this->;abc->;formatn("0.100234");
                $expected = "0.10023";
                $this->;assertTrue($result == $expected);
        }

        function testFormatn3() {
                $result = $this->;abc->;formatn("0.100235");
                $expected = "0.10024";
                $this->;assertTrue($result == $expected);
        }

        function testFormatn4() {
                $result = $this->;abc->;formatn("0.000100235");
                $expected = "0.00010024";
                $this->;assertTrue($result == $expected);
        }

        function testFormatn5() {
                $result = $this->;abc->;formatn("0.000100232");
                $expected = "0.00010023";
                $this->;assertTrue($result == $expected);
        }

        function testFormatn6() {
                $result = $this->;abc->;formatn("1343");
                $expected = "1343";
                $this->;assertTrue($result == $expected);
        }

        function testFormatn7() {
                $result = $this->;abc->;formatn("1343.01");
                $expected = "1343";
                $this->;assertTrue($result == $expected);
        }

        function testFormatn8() {
                $result = $this->;abc->;formatn("1343.05");
                $expected = "1343.1";
                $this->;assertTrue($result == $expected);
        }

        function testFormatn9() {
                $result = $this->;abc->;formatn("0");
                $expected = "0";
                $this->;assertTrue($result == $expected);
        }

        function testFormatn10() {
                $result = $this->;abc->;formatn("105.2342");
                $expected = "105.23";
                $this->;assertTrue($result == $expected);
        }

        function testFormatn11() {
                $result = $this->;abc->;formatn("105.2375");
                $expected = "105.24";
                $this->;assertTrue($result == $expected);
        }

        function testFormatn12() {
                $result = $this->;abc->;formatn("0.000523751");
                $expected = "0.00052375";
                $this->;assertTrue($result == $expected);
        }

        function testFormatn13() {
                $result = $this->;abc->;formatn("0.000523755");
                $expected = "0.00052376";
                $this->;assertTrue($result == $expected);
        }

}

上一頁12下一頁
軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 综合 欧美 国产 视频二区 | 99在线精品视频免费观里 | 香蕉超级碰碰碰97视频蜜芽 | 18av黄动漫网站在线观看 | 在线精品国内外视频 | 日本韩国一区二区 | 久久国产精品佐山爱 | 日韩视频免费在线播放 | 免费人成在线蜜桃视频 | 久久精品五月天 | 99视频在线免费看 | 久草综合在线视频 | 欧美成人一区二区三区不卡 | 欧美高清日韩 | 欧美成人精品 | 国产播放啪视频免费视频 | 2021国产精品自在拍在线播放 | 欧美日韩视频在线 | 97欧美在线看欧美视频免费 | 免费高清在线观看a网站 | 国产777| 天天爽天天乐 | 超人碰碰碰人人成碰人 | 国产亚洲精品在天天在线麻豆 | 成人男女网18免费视频 | 成人性欧美丨区二区三区 | 欧美国产小视频 | 国产欧美日韩视频免费61794 | 国产凹凸在线观看一区二区 | 精品一区二区三区波多野结衣 | 国产成人精品永久免费视频 | 国外欧美一区另类中文字幕 | 久久精品影视 | 日本ccc三级 | 亚洲乱码尤物193yw在线播放 | 国产初高中生粉嫩无套第一次 | 漂流教室在线观看 | 日本久久精品免视看国产成人 | 欧美亚洲韩国 | 国产精品一库二库三库 | 啪免费视频 |