最小物聯網系統設計——給Laravel新增測試
似乎在ThoughtWorks的幾天之後,對測試有了點認識。於是試著將測試擴充套件到自己所知道和認識的領域,換句話說,需要新增這些測試到自己的這個專案上:
關於
關於專案
原始碼:http://github.com/gmszone/iot
首頁:http://iot.phodal.com
關於測試
說點關於測試的話,這裡只是因為在這幾天的感覺中,覺得新增測試是有必要的。這裡的所謂的必要並不是指你在新增功能的時候,而是指你在後期進行修改的時候。
寫測試並不會提高多少的程式設計能力,但是寫測試的目的是為了保證功能是正解的,如果只是簡單的一次性專案,不需要後期維護,那麼這個時候測試不一定是必需的。我們也不一定要嚴格去按照TDD的流程來辦事,我們所要做的事只是簡單的功能。而如果在長期維護的專案上,測試是有必要的,功能與需求在不斷地增加,我們需要對專案進行不斷地改變。
新增測試雖然會帶來一定的負擔,但是從重構的角度來說,這個是有利的。測試的目的在於保證程式能正確執行。
關於phpunit及Laravel
因為這裡是用Laravel框架來做的RESTful服務,那麼我們也需要對這個進行一個簡單的測試,而且Laravel也提供了測試,那麼可想而知在一個專案裡面測試是有必要的。而且框架也提供了測試,所以我們需要寫個測試不是麼。對於php來說,php是一個,應該也是用得廣泛的一個。
PHPUnit
安裝phpunit
如何安裝可以直接上官網,當然這裡也提供
wget https://phar.phpunit.de/phpunit.phar
php phpunit.phar
測試的程式碼自然就是
php phpunit.phar
具體可見專案程式碼下面的rest
新增測試
Larvel的app/tests有一個CaseTest這裡就暫時不修改了。我們先來建立一個簡單的get,參考官方的示例
public function testGetHomepage()
{
$crawler = $this->client->request('GET', '/');
$this->assertTrue($this->client->getResponse()->isOk());
}
函式名的開頭要用test,這個是獲取首頁的測試。
相關文章
- 物聯網測試
- 系統架構設計筆記(106)—— 物聯網架構筆記
- 5分鐘課程:物聯網的系統設計
- 物聯網智慧家居領域的測試用例設計思路?
- 測試人員如何攻破物聯網測試?
- 物聯網教程Linux系統程式設計——特殊程式之殭屍程式Linux程式設計
- 物聯網教程Linux系統程式設計——特殊程式之守護程式Linux程式設計
- 物聯網學習教程—Linux系統程式設計之程式介紹Linux程式設計
- 水庫雨量、流量實時監測物聯網系統
- 物聯網作業系統列表作業系統
- 物聯網學習教程—Linux系統程式設計之多工實現(二)Linux程式設計
- 安科瑞電能計量管理系統助力電力物聯網建設
- 騰訊物聯網作業系統正式開源,最小體積僅1.8KB作業系統
- 縱論物聯網(六):基於Linux的物聯網作業系統Linux作業系統
- AliOS Things物聯網作業系統iOS作業系統
- 小型水庫監測預警物聯網系統解決方案
- linux系統程式設計CP小測試Linux程式設計
- 物聯網方面的測試,自動化測試怎麼架構?架構
- 01-物聯網專案-物美智慧-系統搭建
- 縱論物聯網(五):除了Linux,還有什麼物聯網作業系統Linux作業系統
- 雨水情自動監測預警物聯網系統解決方案
- 工業物聯網解決方案:露天礦山雨量監測系統
- JMeter 測試元件介紹 - 物聯網大併發測試實戰 02JMeter元件
- 門戶系統測試---測試計劃
- 2023年物聯網預測
- 工業物聯網案例:城市供水管網滲漏監測預警系統
- 物聯網 - 工業物聯 modbus 通訊協議介紹與測試經驗分享協議
- 物聯網作業系統安全性分析作業系統
- 物聯網開發系統有什麼作用?
- 物聯網系統時代:iOS、安卓拜拜?iOS安卓
- 資深測試專家陳永康談物聯網下的測試挑戰
- 數字工廠如何建設物聯網資料採集系統
- 水文監測物聯網系統在加強水土保持工程的作用
- 基於工業物聯網的水庫大壩安全監測系統
- Photon物聯網程式設計從零開始程式設計
- 系統設計面試參考-設計Spotify系統面試
- Ubuntu Core 給物聯網提供更多安全支援Ubuntu
- 當物聯網系統出現故障:使用低質量物聯網資料的風險
- Laravel setting 設定 / 系統設定 / 網站設定Laravel網站