安裝並使用PHPunit

 安裝並使用PHPunit

    Linux 下安裝PHPunit

    PHP 檔案包 (PHAR) 
    要獲取 PHPUnit,最簡單的方法是下載 PHPUnit 的 PHP 檔案包 (PHAR),它將 PHPUnit 所須要的全部必要組件(以及某些可選組件)捆綁在單個文件中:php

    要使用 PHP檔案包(PHAR)須要有 phar 擴展。html

    要使用 PHAR 的 –self-update 功能須要有 openssl 擴展。linux

    若是啓用了 Suhosin 擴展,須要在 php.ini 中容許執行 PHAR:php7

    suhosin.executor.include.whitelist = phar 
    測試

若是要全局安裝 PHAR:this

$ wget https://phar.phpunit.de/phpunit.phar
$ chmod +x phpunit.phar
$ chmod +x phpunit.phar
$ sudo mv phpunit.phar /usr/local/bin/phpunit
$ phpunit --version

    PHPUnit x.y.z by Sebastian Bergmann and contributors. 
    也能夠直接使用下載的 PHAR 文件:命令行

$ wget https://phar.phpunit.de/phpunit.phar 
$ php phpunit.phar –version 

    PHPUnit x.y.z by Sebastian Bergmann and contributors.(筆者的版本是PHPUnit 5.7.4 by Sebastian Bergmann and contributors.) code

    注意:PHPunit是有對應版本的最新的版的支持php7.* 官方建議咱們安裝最新版php,固然不同要安裝最新的只是若是你的版本是php6.*+最好下載最新的PHPunithtm

 

Windows下安裝PHPunit
  1. 爲 PHP 的二進制可執行文件創建一個目錄,例如 D:\Server\binblog

  2. 將 D:\Server\bin 添加加到 PATH 環境變量中(這樣PHPunit全局生效)

  3. 下載 https://phar.phpunit.de/phpunit.phar 並將文件保存到 C:\bin\phpunit.phar(注意下載下來通常是phpunitx.y.phar,帶版本號的,名字要和下面命令執行的文件一直否則執行命令會找不到文件以致於提示could not open file ….)

  4. 打開命令行(例如,按 Windows+R » 輸入 cmd » ENTER)

     創建外包覆批處理腳本(最後獲得 D:\Server\bin\phpunit.cmd):

C:\Users\username> cd D:Server\bin
C:\bin> echo @php "%~dp0phpunit.phar" %* > phpunit.cmd
C:\bin> exit

      新開一個命令行窗口,確認一下能夠在任意路徑下執行 PHPUnit: 

C:\Users\username> phpunit --version 

      PHPUnit 5.7.4 by Sebastian Bergmann and contributors. 
      注:若是全局下不能運行,那就到以前生成的目錄下運行試試,如:(還不行就是上述步驟出錯了,仔細檢查下)

 C:\Users\username> cd D:Server\bin
 D:\Server\bin phpunit --version

 

編寫測試

        注:這個文件建立上面生成批處理腳本的文件夾下 
        建立文件StackTest.php

<?php
use PHPUnit\Framework\TestCase;
    class StackTest extends TestCase
    {
        public function testPushAndPop()
        {
            $stack = [];
            $this->assertEquals(0, count($stack));

            array_push($stack, 'foo');
            $this->assertEquals('foo', $stack[count($stack)-1]);
            $this->assertEquals(1, count($stack));

            $this->assertEquals('foo', array_pop($stack));
            $this->assertEquals(0, count($stack));
        }
    }
    ?>

 進行測試

D:\Server\bin  phpunit StackTest.php
D:\Server\bin>phpunit login_test.php
    PHPUnit 5.7.4 by Sebastian Bergmann and contributors.

    .                                                                   1 / 1 (100%)

    Time: 134 ms, Memory: 8.00MB

    OK (1 test, 5 assertions)

本文轉載自:https://www.cnblogs.com/IT--Loding/p/6222147.html

相關文章
相關標籤/搜索