首页 > 后端开发 > php教程 > phpunit + guzzle 真实单元测试线上接口

phpunit + guzzle 真实单元测试线上接口

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
发布: 2016-07-29 08:58:18
原创
1413 人浏览过

引子

之前想利用js单元测试框架测试接口, 但找了半天都是模拟ajax请求方式测试的.(jest框架).所以想到了利用php来实现.

正题

phpunit 地址:https://phpunit.de/manual/current/zh_cn/installation.html#installation.optional-packages

guzzle 地址:https://github.com/guzzle/guzzle

安装出现的问题:

1.phpunit需要php5.6环境才行.

2.guzzle 解压时需要 zlib. 用brew安装.

以下时测试代码:
a.php

<code>
require 'vendor/autoload.php';

class LoginTest extends PHPUnit_Framework_TestCase {
    
        //只是试试phpunit功能
       public function testNormal() {

           $expected = 1;
           $actual = 1;

           $this->assertEquals($expected,$actual);
       }
        
        //测试api
       public function testSend(){
           $client = new GuzzleHttp\Client();

           $res = $client->request('GET', 'https://developer.github.com/v3/', [

            ]);
            echo $res->getStatusCode();
            // 200
            echo $res->getHeaderLine('content-type');
            // 'application/json; charset=utf8'
            echo $res->getBody();

            $this->assertEquals(200, $res->getStatusCode());
       }
   }

   ?>
</code>
登录后复制

然后在当前目录 运行

<code>$ phpunit a.php</code>
登录后复制

说明: guzzle安装必须和测试代码在同目录中

测试结果

<code>Time: 7.14 seconds, Memory: 11.75Mb

OK (2 tests, 2 assertions)
antztekiMacBook-Pro:php_test antz$ </code>
登录后复制

以上就介绍了phpunit + guzzle 真实单元测试线上接口,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

相关标签:
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板