qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請訪問 http://qaseven.github.io/

          為你的應(yīng)用準(zhǔn)備最佳負載測試的9個技巧

            你已經(jīng)努力開發(fā)你的 Web 應(yīng)用,也許這沒有什么偉大的,但它是眾多維持我們每日生活的方法中的一員,并且,或許它會改變世界。

            無論怎樣,你知道它需要做一些測試,而且不止一次。測試工作應(yīng)該貫穿于軟件開發(fā)過程的每一個階段,乃至軟件發(fā)布之后。認識到測試者的工作永遠不會停止有點讓人頭疼,令人欣慰的是每一輪測試和矯正都會提高軟件質(zhì)量。

            應(yīng)用故障有兩個原因:開發(fā)人員沒有做負載測試,或者更糟糕的是,他們花了時間來做負載測試,但是沒有做好充分的準(zhǔn)備。沒有充足的預(yù)備工作,負載測試不可能發(fā)現(xiàn)它應(yīng)該發(fā)現(xiàn)的所有問題。

            那么,怎么才能準(zhǔn)備一次最佳的負載測試呢?

            好吧,這里給出一些建議,一旦你準(zhǔn)備開始負載測試,我們也給你提供了一個易用的高級測試工具來進行它——當(dāng)然,它是可以免費下載的。

            1、什么是你真正需要了解的?

            確定你想了解你的應(yīng)用或系統(tǒng)的哪些方面。每種類型的測試的運行方式都不同,且著眼于應(yīng)用的不同方面。因此,基于不同的需求,你需要運行不同的測試。例如:

            ● 如果希望找到你的應(yīng)用程序在很少或根本沒有負載情況下的執(zhí)行基準(zhǔn),你將運行單用戶測試。

            ● 如果想確定系統(tǒng)在正常負載下的執(zhí)行情況,你將運行負載測試。

            ● 如果想確定你的應(yīng)用程序停止響應(yīng)或響應(yīng)緩慢導(dǎo)致不能正常工作的臨界點,你需要運行負載測試。

            ● 如果想了解你的應(yīng)用程序是否有內(nèi)存泄露問題,你要運行耐力測試。

            2、確定用戶數(shù)量

            如果要加載測試,你會模擬多少虛擬用戶呢?要回答這個問題,你要估計大概多少并發(fā)用戶可能訪問你的網(wǎng)站,這取決于一天中的時間。很多測試者只是猜測,相反,你需要跟你的設(shè)計師和營銷人員談?wù)劜⒖纯葱阅苷f明。你甚至可能要問他們設(shè)計的應(yīng)用程序支持多少并發(fā)用戶,然后設(shè)計這么多用戶及比這更多用戶的測試。

            ● 注意:你還要安排當(dāng)實際用戶減少或消除時的測試。

            3、研究你的分析

            不要假裝知道客戶如何用你的應(yīng)用程序。真正了解用戶的唯一途徑是研究歷史(如分析)。通過研究你的分析,你可以創(chuàng)建實際上代表用戶的測試--而不是你認為的代表用戶的測試。在這方面,分析是測試人員最好的朋友!

            4、組建你的團隊

            你需要許多人參與到測試中來:開發(fā)人員,網(wǎng)絡(luò)工程師,數(shù)據(jù)庫管理員,企業(yè)主-舉例來說。所有這些人都有著特定的權(quán)利來使應(yīng)用變完美,每個人將從不同的角度定位問題。正確的解決方案將不會直接從眾多中的一個里直接獲得,而將從兩個或多個綜合得出。確保團隊中的每個成員都是對測試有用的:

            ● 確保他們在特定領(lǐng)域的專業(yè)程度

            ● 提供穩(wěn)定的反饋

            ● 產(chǎn)生對應(yīng)用質(zhì)量和性能的歸屬感

          5、準(zhǔn)備你的瀏覽器

            使用測試軟件使你盡可能地接近你的真實用戶的體驗。你應(yīng)該能夠在你選擇的瀏覽器中記錄你的測試場景,但你也需要預(yù)估你的用戶將會使用的其它瀏覽器。考慮你的產(chǎn)品使用率高的國家和地區(qū),調(diào)查那里使用率最高的瀏覽器。你將安裝這些瀏覽器在你開始測試時。然后你需要確保你的負載測試軟件盡可能真實地模擬用戶的行為。這包括:

            ● 多線程處理

            ● 思考時間

            ● 混合并發(fā)場景

            ● 復(fù)雜場景

            ● 參數(shù)化

            ● 從多個代理進程產(chǎn)生負載(網(wǎng)絡(luò)/云)

            6、準(zhǔn)備測試你的應(yīng)用

            雖然在分階段環(huán)境中測試你的應(yīng)用很有價值,由于很多原因,它也會在你的測試中留下一些漏洞。

            ● 分階段環(huán)境并不總是產(chǎn)品的真正副本

            ● 分階段環(huán)境只能從內(nèi)部防火墻訪問

            ● 可能有一些針對你正在收集信息的相同系統(tǒng)的測試

            7、預(yù)留時間分析結(jié)果

            你應(yīng)該準(zhǔn)備花些時間以組為單位分析測試結(jié)果(記得在測試過程中存在的所有的那些人嗎?)。要仔細看結(jié)果,確保真正理解瓶頸、錯誤、弱點且有有效的補救措施,確保涉及每個人并安排足夠的時間。

            8、預(yù)留時間修改

            在計劃表中也要留一定的時間去實現(xiàn)那些確定需要修改的測試!從時間方面考慮,不同的補救成本也不一樣。在時間和金錢方面,像實現(xiàn)緩存策略、重構(gòu)代碼、數(shù)據(jù)庫優(yōu)化以及硬件升級等這樣的補救措施需要更大的實現(xiàn)成本。舉個例子,添加額外的硬件需要花時間下訂單、收貨、測試硬件、安裝軟件和數(shù)據(jù)、測試、加到網(wǎng)絡(luò)中并做更多測試。這可能花費數(shù)周或幾個月。

            9、計劃一個敏捷測試方法

            一旦糾正,又是再次測試的時候了。俗話說得好,測試是一個過程,而不是目的。每次發(fā)現(xiàn)并糾正一個瓶頸,另一個問題又出現(xiàn)了。所以計劃一個敏捷測試方法是很重要的,從而可以使性能測試貫穿開發(fā)周期的每一步。附加測試應(yīng)按以下執(zhí)行:

            ● 代碼何時被修改或更新

            ● 新硬件何時被引入

            ● 修改何時被添加到應(yīng)用服務(wù)器或 DB 服務(wù)器

            ● 流量峰值預(yù)計在何時

            深呼吸一下,然后放松!你已經(jīng)完成了絕大部分艱苦的工作。現(xiàn)在你已花時間作了準(zhǔn)備,對你的應(yīng)用作負載測試將有助于你持續(xù)改進你的產(chǎn)品和業(yè)務(wù)。

            原文鏈接:http://www.oschina.net/translate/9-tips-to-prepare-your-app-for-optimal-load-testing

          posted on 2013-05-06 09:34 順其自然EVO 閱讀(156) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          <2013年5月>
          2829301234
          567891011
          12131415161718
          19202122232425
          2627282930311
          2345678

          導(dǎo)航

          統(tǒng)計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 昌平区| 建始县| 儋州市| 临洮县| 霍林郭勒市| 陈巴尔虎旗| 阿巴嘎旗| 米脂县| 奉节县| 双鸭山市| 兴义市| 铜梁县| 元朗区| 宜昌市| 巧家县| 武平县| 惠州市| 昌吉市| 手机| 策勒县| 巴林左旗| 周宁县| 读书| 安顺市| 凤山县| 南城县| 新余市| 巍山| 塔城市| 开封县| 兴化市| 澎湖县| 长宁县| 肇东市| 吐鲁番市| 江门市| 海门市| 拉萨市| 密云县| 上虞市| 湖口县|