開始使用自動測試-連續測試

發表于:2014-11-25來源:未知作者:娃娃點擊數: 標簽:自動測試
為什么手動運行測試時,計算機可以為你做!自動測試是一個偉大的工具,以加快測試驅動用Ruby或Ruby on Rails的發展。

  為什么手動運行測試時,計算機可以為你做!自動測試是一個偉大的工具,以加快測試驅動用Ruby或Ruby on Rails的發展。

  自動測試,甚至使你的編碼會話更有效率,因為它會自動運行您的測試套件,每次更改一個文件的一個子集。自動測試是智能-數字的子集上運行你修改過的文件的基礎。把它看成是連續測試。

  自動測試的源代碼是記錄良好(RDOC),但找到一個高層次的概述在線是一個更具挑戰性的一點。本文將幫助你在任何時間運行,使您可以集中精力編寫代碼。讓我們開始吧!

  1。為什么自動測試?

  1.1連續測試。

  關于自動測試很酷的事情是,你有你的代碼的即時反饋(在一秒鐘內運行測試)。更妙的是,測試發生在自己的,所以你再也不用來回切換了從編碼方面的測試內容(既明智的認知,從UI的角度來看)。這對你的代碼,以及自動化和無人值守的測試運行的輕松和即時反饋Martin Fowler的傳奇介紹球隊的水平在持續集成的特點非常相似。然而,持續集成,專注于提高集成在一個團隊水平而自動測試集中于促進發展為一個單一的開發者(或編程)對之前的代碼被集成-因此長期連續測試。

  由于這是高度可視化,在Nuby看看Rails的自動測試截屏。

  1.2更快的測試運行

  自動測試還可以提供更快的測試運行,比標準的公約,因為它智能監控的變化和運行測試,這些變化的影響。在實踐中,這是有關經典的Rails應用程序,因為 :

  Rails約定提供了良好的啟發式自動測試,以決定運行哪些測試文件變化時。如果您的應用程序不拘泥于經典的Rails布局和命名約定的魔力不那么好了工作 。在這種情況下,它可能是更好的自動測試所有更改運行整個測試套件。

  值子集運行整個測試套件運行不僅是因為經典的Rails單元測試可能會很慢。這主要是因為Rails的單元測試方法是相當標新立異,并涉及到數據庫訪問 。這種做法違背一般的敏捷的智慧,你應該確保你的單元測試快速運行,并沒有任何外部系統的依賴。另外請注意,有記錄的方式有你的Rails單元測試不依賴于數據庫和,讓他們運行速度極快!

  1.3彌補缺乏一個適當的Ruby IDE

  自動測試可以派上用場,如果您喜歡的IDE Ruby的支持有限,或者如果你喜歡一個更輕量級的開發環境(文本編輯器+終端+自動測試):它給你一個簡單和自動化的方式來運行測試。

  2,安裝自動測試

  2.1。確保您已經有RubyGem安裝

  安裝自動測試最簡單的方法是使用ZenTest的寶石 。如果您有沒有一個“紅寶石寶石”是什么想法,或者你還沒有安裝RubyGem包裝系統,請有在看RubyGem官方網站。

  相信我,如果你對Ruby開發嚴重,這將是很難不使用RubyGem。

  2.2 OS X和Linux

  在OS X或任何其他的UNIX系統,你通常用下面的命令安裝ZenTest:

  sudo的創業板安裝ZenTest

  如果你打算做任何的Ruby on Rails開發,你還需要安裝自動測試的Rails插件:

  sudo的創業板安裝自動測試導軌

  3,運行自動測試

  3.1Ruby on Rails項目。

  與Rails的原則,自動測試,不需要任何配置來運行 。只要你遵守約定經典的Rails,自動測試將圖事情本身。只需啟動你的Ruby on Rails項目的基本目錄的自動測試。

  你的Ruby on Rails的項目> $ CD

  $自動測試

  自動測試將運行所有的測試(第一次),并等待你修改一些代碼:

  $自動測試

  / usr/bin/ruby1.8我:LIB:測試-rtest/unit - E“%W [測試/功能/ tasks_controller_test.rb測試/單位/ quarter_test.rb測試/單位/ task_test.rb]每個{ | F |求購信息F}“| unit_diff - U

  加載套件- E

  入門

  在0.672928秒完成。

  ** 23的測試,60斷言,0失敗,0個錯誤**

  繼續前進,一些項目中的代碼修改,使測試失敗。修改后的文件保存到磁盤和自動測試會自動重新運行一些測試 :

  / usr/bin/ruby1.8我:LIB:測試-rtest/unit - E“%W [測試/功能/ tasks_controller_test.rb測試/單位/ task_test.rb]每個{| F |要求F}” | unit_diff - U

  加載套件- E

  入門

  ... ...樓.......

  在0.42272秒完成。

  故障原因:1)

  (TaskTest)test_should_be_found [**./測試/單位/ task_test.rb:22 **]:

原文轉自:http://www.uml.org.cn/Test/201112301.asp

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97