国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

使用phpunit進行接口自動化測試

這篇具有很好參考價值的文章主要介紹了使用phpunit進行接口自動化測試。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

年初一個偶然的機會接觸到了phpunit,一個用PHP編程語言開發(fā)的開源軟件,也是一個單元測試框架,有效利用的話可以大大提高接口遍歷的效率。廢話不多說,直接干貨。

1.安裝

在php的目錄下

1

2

pear channel-discover pear;

pear install phpunit/PHPUnit

2.配置

首先新建一個lib文件夾存放的配置文件,然后再新建一個transfer.php的文件

<?php

function do_Post($url, $fields, $extraheader = array()){

  $ch = curl_init();

  curl_setopt($ch, CURLOPT_URL, $url);

  curl_setopt($ch, CURLOPT_POST, true);

  curl_setopt($ch, CURLOPT_POSTFIELDS, $fields );

  curl_setopt($ch, CURLOPT_HTTPHEADER, $extraheader);

  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // 獲取數據返回

  $output = curl_exec($ch);

  curl_close($ch);

  return $output;

}

function do_Get($url, $extraheader = array()){

  $ch = curl_init();

  curl_setopt($ch, CURLOPT_URL, $url);

  curl_setopt($ch, CURLOPT_HTTPHEADER, $extraheader);

  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // 獲取數據返回:

  //curl_setopt($ch, CURLOPT_VERBOSE, true);

  $output = curl_exec($ch) ;

  curl_close($ch);

  return $output;

}

function do_Put($url, $fields, $extraheader = array()){

  $ch = curl_init();

  curl_setopt($ch, CURLOPT_URL, $url ) ;

  curl_setopt($ch, CURLOPT_POST, true) ;

  curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT');

  curl_setopt($ch, CURLOPT_POSTFIELDS, $fields );

  curl_setopt($ch, CURLOPT_HTTPHEADER, $extraheader);

  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // 獲取數據返回

  //curl_setopt($ch, CURLOPT_ENCODING, '');

  $output = curl_exec($ch);

  curl_close($ch);

  return $output;

}

function do_Delete($url, $fields, $extraheader = array()){

  $ch = curl_init();

  curl_setopt($ch, CURLOPT_URL, $url ) ;

  curl_setopt($ch, CURLOPT_POST, true);

  curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'DELETE');

  curl_setopt($ch, CURLOPT_POSTFIELDS, $fields);

  curl_setopt($ch, CURLOPT_HTTPHEADER, $extraheader);

  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // 獲取數據返回

  //curl_setopt($ch, CURLOPT_ENCODING, '');

  $output = curl_exec($ch);

  curl_close($ch);

  return $output;

}

最后新建一個basetest.php文件

<?php

require_once("transfer.php");

define("PREFIX", "http://xxx");

define("HTTPSPREFIX", "https://xxx");

  

function build_get_param($param) {

    return http_build_query($param);

}

到此接口測試環(huán)境搭建完成。

3.編寫測試用例

<?php

$basedir = dirname(__FILE__);

require_once($basedir . '/lib/basetestdev.php');

define("PHONE", "xxx");

define("PWD", "xxx");

define("POSTURL","xxx");

class TestAPI extends PHPUnit_Framework_TestCase {

    private function call_http($path, $param, $expect = 'ok') {

        $_param = build_get_param($param);

        $url = PREFIX . "$path?" . $_param;

        $buf = do_Get($url);

        $obj = json_decode($buf, True);

        $this->assertEquals($obj['retval'], $expect);

        return $obj;

    }

    private function call_https($path, $param, $expect = 'ok') {

        $_param = build_get_param($param);

        $url = HTTPSPREFIX . "$path?" . $_param;

        $buf = do_Get($url);

        $obj = json_decode($buf, True);

        $this->assertEquals($obj['retval'], $expect);

        return $obj;

    }

  public function testLogin(){

    $param = array(

      'type' => 'phone'

      ,'token' => PHONE

      ,'password' => PWD

    );

    $url = 'login';

    return $this->call_http($url, $param);

  }

  /**

   * @depends testLogin

   */

  public function testInfo(array $user){

    $session = $user['retinfo']['session'];

    $param = array(

      'session' => $session

    );

    $url ='info';

    return $this->call_http($url, $param);

  }

如果為post請求

public function testPost(){

    $session = $user['retinfo']['sessionid'];

    $param = array(

      ,'data' => '111'

    );

    $url = POSTURL.'posturl';

    return do_POST($url,$param);

  }
總結:

感謝每一個認真閱讀我文章的人?。。?/strong>

作為一位過來人也是希望大家少走一些彎路,如果你不想再體驗一次學習時找不到資料,沒人解答問題,堅持幾天便放棄的感受的話,在這里我給大家分享一些自動化測試的學習資源,希望能給你前進的路上帶來幫助。

使用phpunit進行接口自動化測試,技術分享,軟件測試,android,log4j

這份文檔,對于想從事【軟件測試】的朋友來說應該是最全面最完整的備戰(zhàn)倉庫,這個倉庫也陪伴我走過了最艱難的路程,希望也能幫助到你!

以上均可以分享,只需要你搜索vx公眾號:程序員雨果,即可免費領取文章來源地址http://www.zghlxwxcb.cn/news/detail-807951.html

到了這里,關于使用phpunit進行接口自動化測試的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯(lián)網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 如何通過python寫接口自動化腳本對一個需要調用第三方支付的報名流程進行測試?

    如何通過python寫接口自動化腳本對一個需要調用第三方支付的報名流程進行測試?

    對于需要調用第三方支付的報名流程進行接口自動化測試,可以通過以下步驟來編寫Python代碼: 1. 確認API需求 首先,需要確認報名流程的API需求和預期功能。這涉及到對業(yè)務需求的理解和API設計的分析。 2. 安裝依賴庫 在Python程序中,需要安裝requests庫(用于發(fā)送HTTP請求)和

    2024年02月10日
    瀏覽(26)
  • 測試中使用Postman實現接口自動化

    測試中使用Postman實現接口自動化

    1.創(chuàng)建一個工作區(qū) 2.按照自己的需求去命名創(chuàng)建 1按照步驟去創(chuàng)建環(huán)境及表格的【變量】:VARIABLE 和【當前值】:CURRENT VALUE TEST_3 就是剛剛創(chuàng)建的環(huán)境 host就不用多說了都明白 Globals 這個就是來改變我們在請求接口時候賦值 全局變量 通用的 用法就不細說了往下看?。?! 在第一

    2024年02月11日
    瀏覽(23)
  • 如何使用Python自動化測試工具Selenium進行網頁自動化?

    如何使用Python自動化測試工具Selenium進行網頁自動化?

    Selenium 是一個流行的Web自動化測試框架, 它支持多種編程語言和瀏覽器,并提供了豐富的API和工具來模擬用戶在瀏覽器中的行為 。 Selenium可以通過代碼驅動瀏覽器自動化測試流程,包括頁面導航、元素查找、數據填充、點擊操作等。 與PyAutoGUI和AutoIt相比, Selenium更適合于處

    2023年04月09日
    瀏覽(111)
  • 接口自動化測試工具,Postman使用詳解

    接口自動化測試工具,Postman使用詳解

    1、Postman是一款功能強大的網頁調試與發(fā)送網頁HTTP請求的Chrome插件,Postman分為Postman native app和Postman Chrome app兩個版本。目前Chrome app已經停止維護,官方也不推薦使用該版本。 2、官網下載地址:http://www.getpostman.com 3:官方文檔:http://www.getpostman.com/docs 2、第二步:新建接口請

    2024年02月06日
    瀏覽(95)
  • Jmeter接口自動化測試 —— Jmeter變量的使用

    ?在使用jmeter進行接口測試時,我們難免會遇到需要從上下文中獲取測試數據的情況,這個時候就需要引入變量了。 添加-配置元件-用戶自定義的變量 添加-配置元件-CSV 數據文件設置 變量的調用方式:${變量名} 變量的作用范圍:變量可以寫入任何測試組件的任何字段中(除

    2024年02月05日
    瀏覽(25)
  • python接口自動化測試 requests庫的基礎使用

    python接口自動化測試 requests庫的基礎使用

    目錄 簡單介紹 Get請求 Post請求 其他類型請求 自定義headers和cookies SSL 證書驗證 響應內容 獲取header 獲取cookies requests庫簡單易用的HTTP庫 ? 格式: ?requests.get(url)? 注意: 若需要傳請求參數,可直接在?url?最后的???后面,也可以調用?get()?時多加一個參數?params?,傳入請求

    2023年04月26日
    瀏覽(22)
  • Python接口自動化測試:Postman使用-用例執(zhí)行

    Python接口自動化測試:Postman使用-用例執(zhí)行

    一個完整的測試,是必須要有斷言的,沒有斷言就相當于沒有預期結果是不完整的,Postman給我們提供了方便的斷言方式 可以通過JS腳本來編寫Pre-request Script和Tests Script Pre-request?Script :預置腳本,可以用來修改一些默認參數,在請求發(fā)送之前,有點類型unittest里面的setUp()方法

    2024年02月11日
    瀏覽(29)
  • python接口自動化測試 - mock模塊基本使用介紹

    py3已將mock集成到unittest庫中 為的就是更好的進行單元測試 簡單理解, 模擬接口返回參數 通俗易懂, 直接修改接口返回參數的值 官方文檔:unittest.mock --- 模擬對象庫 — Python 3.11.1 文檔 解決依賴問題,達到解耦作用 當我們測試某個 目標接口(模塊) 時,該接口 依賴其他接

    2024年02月02日
    瀏覽(18)
  • 什么是Selenium?使用Selenium進行自動化測試

    什么是Selenium?使用Selenium進行自動化測試

    什么是 Selenium? ??Selenium 是一種開源工具,用于在 Web 瀏覽器上執(zhí)行自動化測試(使用任何 Web 瀏覽器進行 Web 應用程序測試)。 ??等等,先別激動,讓我再次重申一下,Selenium 僅可以測試Web應用程序。我們既不能使用 Selenium 測試任何桌面(軟件)應用程序,也不能測試

    2024年02月13日
    瀏覽(25)
  • 什么是Selenium?如何使用Selenium進行自動化測試?

    什么是Selenium?如何使用Selenium進行自動化測試?

    ??Selenium 是一種開源工具,用于在 Web 瀏覽器上執(zhí)行自動化測試(使用任何 Web 瀏覽器進行 Web 應用程序測試)。 ??等等,先別激動,讓我再次重申一下,Selenium 僅可以測試Web應用程序。我們既不能使用 Selenium 測試任何桌面(軟件)應用程序,也不能測試任何移動應用程

    2024年02月02日
    瀏覽(31)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包