rails敏捷開(kāi)發(fā)《3》

rails敏捷開(kāi)發(fā)《3》

ID:21032101

大?。?47.00 KB

頁(yè)數(shù):58頁(yè)

時(shí)間:2018-10-18

rails敏捷開(kāi)發(fā)《3》_第1頁(yè)
rails敏捷開(kāi)發(fā)《3》_第2頁(yè)
rails敏捷開(kāi)發(fā)《3》_第3頁(yè)
rails敏捷開(kāi)發(fā)《3》_第4頁(yè)
rails敏捷開(kāi)發(fā)《3》_第5頁(yè)
資源描述:

《rails敏捷開(kāi)發(fā)《3》》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫(kù)。

1、下載可編輯14.4應(yīng)用程序的集成測(cè)試IntegrationTestingofApplications下一個(gè)層面的測(cè)試是要驗(yàn)證應(yīng)用程序的工作流程。在某種意義上,這就是在測(cè)試客戶交給我們的用戶故事——我們正是根據(jù)這些故事來(lái)開(kāi)發(fā)應(yīng)用程序的。譬如說(shuō),有這樣一個(gè)故事:“用戶進(jìn)入商店首頁(yè)。用戶選擇一件貨品,將其放入購(gòu)物車。用戶結(jié)賬,在表單中填入詳細(xì)信息。用戶提交表單之后,數(shù)據(jù)庫(kù)中創(chuàng)建一份訂單,其中包含用戶詳細(xì)信息,以及與購(gòu)物車中所有貨品對(duì)應(yīng)的訂單項(xiàng)?!边@正是集成測(cè)試的理想材料。集成測(cè)試需要模擬一個(gè)或多個(gè)虛擬用戶與應(yīng)用程序之間的一組連續(xù)的會(huì)

2、話,你可以在其中發(fā)送請(qǐng)求、監(jiān)控應(yīng)答、跟蹤重定向,等等。當(dāng)創(chuàng)建模型,控制器的同時(shí),Rails就會(huì)創(chuàng)建對(duì)應(yīng)的單元測(cè)試/功能測(cè)試。集成測(cè)試卻不是自動(dòng)創(chuàng)建的,你需要自己動(dòng)手來(lái)創(chuàng)建它們。depot>rubyscript/generateintegration_testuser_storiesexiststest/integration/createtest/integration/user_stories_test.rb可以看到,Rails自動(dòng)地給測(cè)試文件的名稱加上了_test后綴?,F(xiàn)在來(lái)看看這個(gè)生成的文件。require"#{File

3、.dirname(__FILE__)}/../test_helper"classUserStoriesTest

4、始處就將其加載進(jìn)來(lái)。fixtures:products跟單元測(cè)試和功能測(cè)試一樣,這里的測(cè)試方法名也應(yīng)該以test一開(kāi)頭。deftest_buying_a_product#...end當(dāng)測(cè)試結(jié)束時(shí),我們期望orders表中新增一份訂單數(shù)據(jù)、line_items表中新增了一份訂單項(xiàng)數(shù)據(jù),因此在測(cè)試開(kāi)始之前應(yīng)首先將它們清除掉。另外,由于會(huì)經(jīng)常使用ruby_book這項(xiàng)夾具數(shù)據(jù),我們首先將它放入一個(gè)局部變量中。depot_r/test/integration/user_stories_test.rbLineItem.delete_al

5、lOrder.delete_allruby_book=products(:ruby_book)我們先來(lái)搞定用戶故事中的第一句話:“用戶進(jìn)入商店首頁(yè)”。depot_r/test/integration/user_stories_test.rbget"/store/index"assert_response:successassert_template"index"專業(yè)資料精心整理下載可編輯14.4應(yīng)用程序的集成測(cè)試IntegrationTestingofApplications下一個(gè)層面的測(cè)試是要驗(yàn)證應(yīng)用程序的工作流程。在某種意

6、義上,這就是在測(cè)試客戶交給我們的用戶故事——我們正是根據(jù)這些故事來(lái)開(kāi)發(fā)應(yīng)用程序的。譬如說(shuō),有這樣一個(gè)故事:“用戶進(jìn)入商店首頁(yè)。用戶選擇一件貨品,將其放入購(gòu)物車。用戶結(jié)賬,在表單中填入詳細(xì)信息。用戶提交表單之后,數(shù)據(jù)庫(kù)中創(chuàng)建一份訂單,其中包含用戶詳細(xì)信息,以及與購(gòu)物車中所有貨品對(duì)應(yīng)的訂單項(xiàng)。”這正是集成測(cè)試的理想材料。集成測(cè)試需要模擬一個(gè)或多個(gè)虛擬用戶與應(yīng)用程序之間的一組連續(xù)的會(huì)話,你可以在其中發(fā)送請(qǐng)求、監(jiān)控應(yīng)答、跟蹤重定向,等等。當(dāng)創(chuàng)建模型,控制器的同時(shí),Rails就會(huì)創(chuàng)建對(duì)應(yīng)的單元測(cè)試/功能測(cè)試。集成測(cè)試卻不是自動(dòng)創(chuàng)建的,你

7、需要自己動(dòng)手來(lái)創(chuàng)建它們。depot>rubyscript/generateintegration_testuser_storiesexiststest/integration/createtest/integration/user_stories_test.rb可以看到,Rails自動(dòng)地給測(cè)試文件的名稱加上了_test后綴?,F(xiàn)在來(lái)看看這個(gè)生成的文件。require"#{File.dirname(__FILE__)}/../test_helper"classUserStoriesTest

8、tegrationTest#fixtures:your,:models#Replacethiswithyourrealtests.deftest_truthasserttrueendend看起來(lái)有些像功能測(cè)試,不過(guò)測(cè)試類繼承了IntegrationTest類。下面就來(lái)動(dòng)手編寫(xiě)

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫(huà)的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。