Heim > Backend-Entwicklung > PHP-Tutorial > phpunit + guzzle 真实单元测试线上接口

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

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Freigeben: 2016-07-29 08:58:18
Original
1413 Leute haben es durchsucht

引子

之前想利用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>
Nach dem Login kopieren

然后在当前目录 运行

<code>$ phpunit a.php</code>
Nach dem Login kopieren

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

测试结果

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

OK (2 tests, 2 assertions)
antztekiMacBook-Pro:php_test antz$ </code>
Nach dem Login kopieren

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

Verwandte Etiketten:
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage