首页vns威尼斯城官网登入 › php单元测试工具PHPUnit安装及生成日志文件配置方法vns威尼斯城官网登入,这边我放到D

php单元测试工具PHPUnit安装及生成日志文件配置方法vns威尼斯城官网登入,这边我放到D

由于大家项目涉嫌到php,由此必要对php代码进行单元测量检验。经过一番叩问,决定用PHPUnit来测量检验php。PHPUnit花了多数岁月搜索怎么样铺排PHPUnit,看官网的文书档案也是一把泪。但通晓怎么安顿后,其实依然比异常粗略的。

一、配置PHPUnit

本文实例呈报了Windows下wamp
php单元测量试验工具PHPUnit安装及变化日志文件配置格局。分享给大家供我们参谋,具体如下:

正文实例呈报了PHP单元测验PHPUnit轻巧用法。分享给我们供大家参照他事他说加以考查,具体如下:

  安装并选用PHPunit

  • 系统:Windows 10 专业版
  • PHP版本:PHP 5.5.12
  • 服务器工具:WAMPSECRUISERVEMurano 2.5
  • PHPUnit版本:PHPUnit 4.8
  1. 首先到PHPUnit官网(点此步向)下载相应的版本。php
    5.5及以下版本请使用PHPUnit 4.8。获得 .phar 文件,并把名字改为
    phpunit.phar

  2. 把该公文放到大肆地点。以本身要好为例,小编把它内置大家项目标目录下,即
    D:\repository\CourseManagement\mobile_api_test

  3. 右键 本身的微处理机 ,选择 属性 。点击侧边包车型大巴 高等系统设置
    。那时弹出 系统质量 ,选择 高级 选项卡,点击右下角的
    境遇变量 。 在客户变量里面,双击 PATH ,在 变量值
    前面加多 ;D:\repository\CourseManagement\mobile_api_test
    (注意最前边的分店,路线填存放phpunit.phar的路线)。配置这些是为着在自由地方都能动用PHPUnit,不配备来讲,须要在phpunit.phar的路径下技艺应用PHPUnit。

    官方文书档案里有好几从未关系,就是php的蒙受变量也要设置。例如自个儿的
    php.exeE:\software\wamp\bin\php\php5.5.12 里,那么也要在
    PATH 前边增多 ;E:\software\wamp\bin\php\php5.5.12
    。PS:大概是因为自身从未设置PHP的IDE,所以直接未有安插它,临时之间才想到或者要增进那一个情状变量。

  4. 按快速键 Win + R ,输入cmd并回车。进入存放phpunit.phar的不二法门。输入

    echo @php "%~dp0phpunit.phar" %* > phpunit.cmd
    并回车。接着输入 phpunit --version 并回车。假设获得输出
    PHPUnit x.y.z by Sebastian Bergmann and contributors.
    则表示配置好了(倘诺有误,输入 exit
    并回车,重新来二遍)。如下图:
    vns威尼斯城官网登入 1

phpunit下载网址

windows开辟条件下,PHP使用单元测量检验能够应用PHPUnit。

    Linux 下安装PHPunit

    PHP 档案包
    要拿走 PHPUnit,最简易的格局是下载 PHPUnit 的 PHP 档案包 ,它将
PHPUnit 所要求的全部供给组件捆绑在单个文件中:

    要选用 PHP档案包要求有 phar 扩充。

    要利用 PHATiguan 的 –self-update 效率须求有 openssl 扩展。

    固然启用了 Suhosin 扩充,须要在 php.ini 中允许施行 PHA奇骏:

    suhosin.executor.include.whitelist = phar
    若是要全局安装 PHA凯雷德:

$ 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.
    也足以一向动用下载的 PHAKuga 文件:

$ 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 塞BathTyne 伯格mann and
contributors.)
    注意:PHPunit是有对应版本的新型的版的支撑php7.*
官方提出大家设置新型版php,当然不均等要安装新型的只是借使您的本子是php6.*+最佳下载最新的PHPunit

一、配置PHPUnit

首先到PHPUnit官网(点此踏入)下载相应的本子。我们利用的是php
5.5,于是选拔PHPUnit
4.8。获得 .phar 文件,并把名字改为 phpunit.phar 。

把该文件放到大肆地点。以自家自身为例,笔者把它放到大家项指标目录下,即D:\repository\CourseManagement\mobile_api_test 。

右键 自己的Computer ,选择 属性 。点击左边的 高端系统装置 。那时弹出 系统质量 ,选择 高级 选项卡,点击右下角的 情形变量 。
在客户变量里面,双击 PATH ,在 变量值 前边增添;D:\repository\CourseManagement\mobile_api_test (注意最前头的分企业,路线填寄放phpunit.phar的不二秘诀)。配置这么些是为着在随性所欲地方都能动用PHPUnit,不陈设来讲,供给在phpunit.phar的门径下能力使用PHPUnit。

法定文书档案里有几许还没提到,正是php的情况变量也要设置。举个例子自个儿的 php.exe 在E:\software\wamp\bin\php\php5.5.12 里,那么也要在 PATH 前边加多;E:\software\wamp\bin\php\php5.5.12 。PS:恐怕是因为自己没有安装PHP的IDE,所以平昔未曾配置它,偶尔之间才想到大概要丰硕这么些情形变量。

按火速键 Win + R ,输入cmd并回车。进入寄存phpunit.phar的门道。输入 echo @php "%~dp0phpunit.phar" %* > phpunit.cmd 并回车。接着输入 phpunit --version 并回车。假使取得输出 PHPUnit x.y.z by Sebastian Bergmann and contributors. 则表示配置好了(假设有误,输入exit 并回车,重新来贰遍)。如下图:

vns威尼斯城官网登入 2

转自:

一、安装PHPUnit

安装

  Windows下安装PHPunit

    1.   为 PHP 的二进制可试行文件创设一个索引,比如 D:\Server\bin

    2.   将 D:\Server\bin 增多加到
      PATH 意况变量中(那样PHPunit全局生效)

    3.   下载
      C:\bin\phpunit.phar(当心下载下来常常是phpunitx.y.phar,带本子号的,名字要和上边从容不迫实践的公文间接否则试行命令会找不到文件以致于提醒could
      not open file ….)

    4.   展开命令行(举个例子,按 Windows+昂科雷 » 输入 cmd » ENTEGL450卡塔尔(قطر‎

      构建外包覆批管理脚本(最后得到D:\Server\bin\phpunit.cmd):

C:\Users\username> cd D:Server\binC:\bin> echo @php "%~dp0phpunit.phar" %* > phpunit.cmdC:\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

二、使用PHPUnit举办测验

选取PHPUnit,必得选用  。以login.php为例(位置在D:\repository\CourseManagement\mobile_api ),大家的起来版本是这样的(款待嘲笑本博客内的代码):

<?php

    error_reporting(0);

    $workNumber = $_POST["login-user"];
    $password = $_POST["login-password"];
    $tableName = $_POST["ident"];

    $con = mysqli_connect("localhost", "root", "", "teacher_class_system");
    if (!$con) {
        die('Could not connect: ' . mysql_error());
    } else {
        mysqli_query($con, "SET NAMES utf8");

        $result = mysqli_query($con, "SELECT * FROM $tableName where workNumber = $workNumber and password = $password");
        if (mysqli_num_rows($result) < 1) {
                echo "false";
        } else {
                $result_arr = mysqli_fetch_assoc($result);
                echo json_encode($result_arr, JSON_UNESCAPED_UNICODE);
        }
    }

    ?>

如此那般无法测量检验,于是举办一翻改革。首先在 login.php 所在文书夹里创设三个文书夹 classes,并在内部新建 class_login.php ,内容为 login.php 修正后的本子:

 <?php

    class Login {
        // 测试工具PHPUnit要求一定要在这里给变量默认值,于是默认为空。
        public function login($workNumber = "",$password = "",$tableName = "") {        
            $con = mysqli_connect("localhost", "root", "", "teacher_class_system");
            if (!$con) {
                die('Could not connect: ' . mysqli_error());
            } else {
                mysqli_query($con, "SET NAMES utf8");

                $result = mysqli_query($con, "SELECT * FROM $tableName where workNumber = $workNumber and password = $password");
                if (!$result || mysqli_num_rows($result) == 0) {
                    return "false";
                } else {
                    $result_arr = mysqli_fetch_assoc($result);
                    return json_encode($result_arr, JSON_UNESCAPED_UNICODE);
                }
            }
        }
    }

    ?>

除此而外,也要修正原本那几个 login.php 的剧情,更改后如下:

  <?php
    error_reporting(0);

    require_once './classes/class_login.php';

    $workNumber = $_POST["login-user"];
    $password = $_POST["login-password"];
    $tableName = $_POST["ident"];

    $log = new Login;
    $response = $log->login($workNumber,$password,$tableName);

    if($response != "false") {
        session_start();
        $_SESSION['id']=$tableName;
    }

    echo $response;

    ?>

开头写测验文件

自作者把测验文件放在 D:\repository\CourseManagement\mobile_api_test 那么些文件夹内。新建一个文书
`login_test.php’ ,并写入以下代码:

  <?php 
    require_once dirname(__FILE__).'/../mobile_api/classes/class_login.php';

    class LoginTest extends PHPUnit_Framework_TestCase {
        public function testLoginSuccess() {
            $expected = '{"workNumber":"00001","password":"00001","name":"西瓜","sex":"男","birthday":"20151201","department":"计算机","telephone":"110","email":"git@github.com"}';

            $workNumber = '00001';
            $password = '00001';
            $tableName = 'user_teacher';
            $lg = new Login;
            $actual = $lg->login($workNumber,$password,$tableName);

            $this->assertEquals($expected,$actual);
        }

        function testLoginFail() {
            $expected = 'false';

            $workNumber = '11111';
            $password = '11111';
            $tableName = 'user_teacher';

            $lg = new Login;
            $actual = $lg->login($workNumber,$password,$tableName);
            $this->assertEquals($expected,$actual);
        }
    }

    ?>

实施测量检验文件

赶快键 Win + ENCORE,输入cmd并回车。步入该测验文件的目录,输入 phpunit login_test.php 试行测验。

vns威尼斯城官网登入 3

简易的测量检验就成功了。

1.增选版本

率先下载PHPUnit,官方网站:
依据自个儿的PHP版本下载对应的PHPUnit版本,我本地是PHP5.5,所以那边作者下载PHPUnit4.8。下载达成得到phpunit-4.8.35.phar文件,放到任性目录,那边小编放到D:\phpunit下,并把公文名改为:phpunit.phar
。配置景况变量:右击作者的微处理器-》属性-》高等系统安装-》情形变量-》编辑path在终极增多phpunit.phar的不二法门,这里自身是D:\phpunit,所以在最终增加D:\phpunit

  编写测量试验

    
注:
这个文件创建上面生成批处理脚本的文件夹下
     创制文件StackTest.php

<?phpuse 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));        }    }    ?>

三、探究进程

一开端下载PHPUnit,得到 .phar 文件,感到要解压,囧。找了半天才发觉有三个能够解压这种文件的网址(点此步入)。然则并不曾什么样用……

照着官方文书档案来做,运行时出现错误:

‘php’ 不是中间或外界命令,亦不是可运行的主次
或批管理文件。

Google找出,必应寻觅,StackOverFlow寻找,百度搜索,搜到的答案都未曾用。

第一是因为他们都暗中认可你已经布署好了PHP遇到变量……

末尾想着是或不是前边生成的 phpunit.cmd 不通常?于是查看一下那几个文件的剧情。溘然想到是还是不是PHP情状变量没安装的案由?展开cmd,输入 php --version 。得到:

‘php’ 不是里面或外界命令,亦非可运维的次第
或批管理公事。

和地点的不当相符!果然是这里的主题材料。于是把 ;E:\software\wamp\bin\php\php5.5.12 增多随景况变量中。再运营 php --version 得到:

PHP 5.5.12 (cli) (built: Apr 30 2014 11:20:58)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
with Xdebug v2.2.5, Copyright (c) 2002-2014, by Derick Rethans

再进入 phpunit.cmd 所在文书夹,运行 phpunit --version。得到:

PHPUnit 4.8.18 by Sebastian Bergmann and contributors.

标题一蹴而就!

透过此番的探寻,现在境遇”找不到xxx”这种难点的时候,首先会记念境况变量的安装。

譬喻清除那几个主题材料的当天午后,作者想使用Visual Studio
Code的Git作用,然则却收获升迁:

vns威尼斯城官网登入 4

首先个反应是:作者精晓安装了msysgit啊。

第二个反应是:会不会是情状变量没安插?张开情况变量配置,果然未有。于是将 git.exe 所在文书夹的路径加多进去。重启Visual
Studio Code,难题解决!

本身用的是php版本是5.6.25 所以笔者采取的是PHPUnit 5.7

开发命令行win+奥迪Q5输入cmd,进入到D:\phpunit

    进行测验

D:\Server\bin  phpunit StackTest.phpD:\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)

    PHPunit的设置和编排测量试验已经做到了。具体的操作请查看官方手册。
    官方网站手册

    迎接指正交换 QQ:407461375

2.安装进程

cd /d D:\phpunit

转载本站文章请注明出处:vns威尼斯城官网登入 http://www.tiec-ccpittj.com/?p=4669

上一篇:

下一篇:

相关文章