phpUnit 安裝,實例和簡單部署

背景:一個小腳本,保證穩定為主;所以試用了下phpunit,快捷方便

phpunit 的安裝

phpunit是一個輕量級的php單元測試框架,通過pear安裝
安裝過程

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

成功之后顯示如下:

cuihuan:~ cuixiaohuan$ phpunit --version
PHPUnit 4.8.6 by Sebastian Bergmann and contributors.

簡單試用

測試類集成框架

class PsCaseTest extends PHPUnit_Framework_TestCase{}

其中phpunit
默認首先執行 setup
默認最后執行 teardown

舉個栗子:


<?php
/***************************************************************************** $Id: PsCaseTest,v 1.0 PsCaseTest cuihuan Exp$***************************************************************************//*** @file PsCaseTest.php* @author cuihuan* @date 2015/09/11 10:09:31* @version $Revision:1.0$* @brief  pscase接口單元測試***/require_once dirname(__FILE__) . ('/PsCase.php');class PsCaseTest extends PHPUnit_Framework_TestCase
{/*** @var object pscase類*/protected $pscase;/*** @brief setup: Sets up the fixture, for example, opens a network connection.** This method is called before a test is executed.  */public function setup(){$this->pscase = new PsCase();}/*** @brief teardown: Tears down the fixture, for example, closes a network connection.* * This method is called after a test is executed.*/public function teardown(){}/*** @brief : 測試config文件的獲取**/public function testGetConfig(){$this->assertEquals(true,$this->pscase->debugText("11"));}
}

運行

運行方式:phpunit —bootstrap [源文件] 測試文件
具體如下:

cuihuande:newcode cuixiaohuan$ phpunit --bootstrap ./PsCase.php ./PsCaseTest.php32015-09-11 02:09:36:11<br>
5Time: 116 ms, Memory: 11.75MbOK (1 test, 1 assertion)  【表示運行成功】

部署

部署就不不贅述了,寫個shell腳本,crontab天極運行,加個報警郵件,簡單的單元測試ok,從此再也不用擔心錯誤和回歸測試了。

個人小站原文鏈接

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/286565.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/286565.shtml
英文地址,請注明出處:http://en.pswp.cn/news/286565.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

1、RN跨平臺開發——環境搭建

了解React NativeReact Native使你能夠在Javascript和React的基礎上獲得完全一致的開發體驗&#xff0c;構建世界一流的原生APP。React Native著力于提高多平臺開發的開發效率 —— 僅需學習一次&#xff0c;編寫任何平臺。(Learn once, write anywhere)。Facebook已經在多項產…

Android之替換App桌面圖標

1、需求 需要動態替換app在桌面的圖標 2、解決辦法 1)、在AndroidManifest.xml里面進行配置多個啟動的alias別名 啟動的activity <activityandroid:name=".ui.SplashActivity"android:launchMode="singleTop"android:screenOrientation="port…

【ArcGIS遇上Python】ArcGIS10.8 Python代碼批量完美實現MODIS NDVI數據格式轉換和投影變換

由于論文的需要,將MODIS NDVI數據進行投影變換和格式轉換,具體操作可以參照:《ArcGIS10.8完美實現MODIS NDVI數據格式轉換和投影變換》,但是該文章中的做法只能一次性實現一景影像的轉換,沒法批量,雖然ArcGIS中提供了Batch的方法但是需要挨個添加數據,確定輸出路徑等等,…

引入 DTM 以支持 ABP 的多租戶多數據庫場景

這篇文章分享了使用 DTM 二階段消息模式解決 issue #10036 的方法。今天我們要使用 EasyAbp 的 Abp.EventBus.Boxes.Dtm 模塊。DTM 事件箱的介紹這個模塊使用了 DTM 的 二階段消息 使得 ABP 的事件箱得以支持 多租戶多數據庫場景。你需要先閱讀 DTM 文檔&#xff0c;它將幫助你…

【前端就業課 第一階段】HTML5 零基礎到實戰(六)表格詳解

注意&#xff1a;手機&#xff08;APP&#xff09;打開&#xff0c;內容顯示更佳&#xff0c;不會的私聊博主即可 想要拿代碼或加入學習計劃&#xff08;** 博主會監督你并且教你寫文章 **&#xff09;的拉到最下面&#xff08;PC端Web打開&#xff09;加博主即可&#xff0c;目…

PHP中file_put_contents()函數的兼容性問題

PHP中file_put_contents()函數的兼容性問題 file_put_contents()函數就相當于依次使用fopen()&#xff0c;fwrite()和fclose()&#xff0c;真是個令人愉快的函數。我的第一個PHP小腳本中用到了這個函數&#xff0c;本地運行很正常&#xff0c;放到服務器上去之后點擊submit按鈕…

Android實戰:手把手實現“捧腹網”APP(一)-----捧腹網網頁分析、數據獲取

“捧腹網”頁面結構分析捧腹網M站地址: http://m.pengfu.com/捧腹網M站部分截圖&#xff1a; 從截圖中&#xff08;可以直接去網站看下&#xff09;&#xff0c;我們可以看出&#xff0c;該網站相對簡單&#xff0c;一共分為四個模塊&#xff1a;最新笑話、捧腹段子、趣圖、神…

專題2-通過按鍵玩中斷\第1課-中斷處理流程深度剖析-lesson1

中斷概念 1、中斷生命周期 串口先產生一個事件&#xff0c;該事件傳送到中斷控制器里面&#xff0c;中斷控制器會進行相應過濾&#xff0c;能通過過濾&#xff0c;那么就交給CPU去處理。 2、中斷源 2440芯片手冊 6410芯片手冊 3、中斷過濾 4、中斷處理 cpu處理方式有兩種&#…

Android之okdownload下載提示奔潰Expected URL scheme ‘http‘ or ‘https‘ but was ‘data‘

1 問題 客戶現場奔潰在firebase上面提示錯誤信息如下 Fatal Exception: java.lang.IllegalArgumentException: Expected URL scheme http or https but was dataat okhttp3.t$a.a(HttpUrl.kt:38)at okhttp3.t$b.b(HttpUrl.kt:8)at okhttp3.y$a.b(Request.kt:5)at com.liulish…

mysql語法學習(一)__Instances__表

2019獨角獸企業重金招聘Python工程師標準>>> ---建表 CREATE TABLE temp( id INT ); ----查詢表 SELECT * FROM temp_t; ---刪表 DROP TABLE temp; ---修改表名 ALTER TABLE temp_tt RENAME temp; ALTER TABLE temp RENAME TO temp_t; ALTER TABLE temp RENAME AS t…

【ArcGIS遇上Python】python批量獲取柵格數據四至(top,bottom,left,right)坐標代碼

上圖所示為ArcGIS自帶的影像數據,存放路徑為C:\Program Files (x86)\ArcGIS\Desktop10.6\ArcGlobeData\wsiearth.tif",在源中可以查看該數據的四至坐標,那么,怎樣用python批量獲取多個柵格數據的四至坐標呢? 參考閱讀:【ArcGIS風暴】ArcGIS求一個矢量圖層中多個圖斑…

使用 C# 讀取 zip 壓縮包解壓文件的方法及注意事項

從 .NET Framework 4.5 版本開始&#xff0c;微軟為 .NET 類庫增加了一個名為 ZipFile 的類型。該類型在 System.IO.Compression 命名空間下&#xff0c;提供創建、解壓縮和打開 zip 存檔的靜態方法。若要在 .NET Framework 應用中使用 ZipFile 類&#xff0c;必須添加對程序集…

CenterOS x64安裝serv-U

1、下載serv-Usu - root cd / cd /src wget http://www.rhinosoft.com.cn/download/14.0.1.0/SU-MFTS-Linux-64bit.zip # 64bit下載地址wget http://www.rhinosoft.com.cn/download/14.0.1.0/SU-MFTS-Linux-32bit.zip # 32bit下載地址2、解壓serv-U安裝包unzip SU-MF…

Android實戰:手把手實現“捧腹網”APP(二)-----捧腹APP原型設計、實現框架選取

APP原型設計在APP的開發過程中&#xff0c;原型設計是必不可少的。用戶界面原型必須在先啟階段的初期或在精化階段一開始建立。整個系統&#xff08;包括它的“實際”用戶界面&#xff09;的分析、設計和實施必須在原型建立后進行。 如何設計“捧腹網”APP呢&#xff1f;我們先…

【前端就業課 第一階段】HTML5 零基礎到實戰(七)文字及圖片詳解

注意&#xff1a;手機&#xff08;APP&#xff09;打開&#xff0c;內容顯示更佳&#xff0c;不會的私聊博主即可 想要拿代碼或加入學習計劃&#xff08;** 博主會監督你并且教你寫文章 **&#xff09;的拉到最下面&#xff08;PC端Web打開&#xff09;加博主即可&#xff0c;目…

自定義桌面右鍵菜單

一 編寫自定義右鍵菜單要執行的程序 只要是在 Windows 平臺上的可執行應用程序即可。 二 修改注冊表添加自定義右鍵菜單 添加位置如下&#xff1a; HKEY_CLASSES_ROOT\Directory\Background\shell 如下圖&#xff1a;轉載于:https://www.cnblogs.com/jRoger/articles/5799664.h…

Android之giide加載失敗提示You can‘t start or clear loads in RequestListener or Target callbacks If you‘re t

1 問題 用glide進行加載視頻數據的時候,加載錯誤了再用glide進行加載一次,代碼如下 var iv = helper.getView<ImageView>(R.id.download_iv)iv?.let {val transform = RoundedCornersTransform(mContext, UnitUtils.dip2px(mContext, 12.toFloat()).toFloat())transf…

本地工程提交github

1. 首先在github上創建一個新的Repository 2. 在本地windows機器上裝上git 3. 建立一個文件夾&#xff0c;以后就用這個文件夾作為與Repository對應的庫文件夾 4. 輸入一下命令&#xff0c;建立文件夾與Repository的連接關系 touch README.md git init git add README.md git c…

【ArcGIS遇上Python】ArcGIS python計算長時間序列多個柵格數據的平均值

通常&#xff0c;我們需要將多個柵格求平均&#xff0c;例如&#xff0c;將一年中每個月的NDVI值加起來除以12&#xff0c;就會等到月均NDVI&#xff0c;該過程雖然在柵格計算器中可以實現&#xff0c;但是當時間序列較長時就比較費事&#xff0c;此時&#xff0c;python代碼是…

統信 Deepin為什么要擺脫Ubuntu和Debian?

文 | 大東出品 | OSC開源社區&#xff08;ID&#xff1a;oschina2013&#xff09;Deepin 出走 Debian 。近日&#xff0c;統信軟件宣布旗下 Linux 社區發行版 Deepin 將脫離上游 Debian&#xff0c;從 Linux Kernel 開始構建的新聞在社區引發了熱議。其實早在 7 年前&#xff0…