博碩士論文 102522055 詳細資訊




以作者查詢圖書館館藏 以作者查詢臺灣博碩士 以作者查詢全國書目 勘誤回報 、線上人數:13 、訪客IP:18.222.200.143
姓名 劉冠吟(Guan-Yin Liu)  查詢紙本館藏   畢業系所 資訊工程學系
論文名稱 建構於JMeter之自動化分散式壓力測試架構
(Automatically Distributed Stress Testing Architecture Based On JMeter)
相關論文
★ 使用PolyTraceAid進行程式文件覆蓋率計算與分群★ Support Visual Debugging in Electronic Design Automation Software by xDIVA
★ 設計與實作視覺化追蹤點以支援xDIVA進行程式動畫★ Combine Internal Test Oracles and Capture/Replay GUI Testing for Precise Replay and Higher Validation Power
★ Dissimilarity of Polymorphic Execution Sequences★ The Analysis of Capturing System Test Cases into Unit Test Cases
★ 動態延遲載入的測試覆蓋率★ 模組化因修改具耦合的程式碼所伴隨的成本漣漪
★ Design a Pluggable Architecture for Layout Algorithms in xDIVA★ 重複性程式碼檢測之外掛模組設計
★ Visual Perception of Realistic Rendering in xDiva 3D Environment★ Why and When GUI Test Automation Fails in Practice and Our Solutions to The Problem
★ Why and When GUI Test Automation Fails in Practice and Our Solutions to The Problem★ Very High Precision Optical Character Recognition For Clean-Fixed-Sized True Type Characters
★ Enhance Korat by Branch Capability in Capture/Replay User Scenario to Industrial Test Case Automation★ implement race detection functionality inXThreadDebugger base on pluggable modulesystem
檔案 [Endnote RIS 格式]    [Bibtex 格式]    [相關文章]   [文章引用]   [完整記錄]   [館藏目錄]   [檢視]  [下載]
  1. 本電子論文使用權限為同意立即開放。
  2. 已達開放權限電子全文僅授權使用者為學術研究之目的,進行個人非營利性質之檢索、閱讀、列印。
  3. 請遵守中華民國著作權法之相關規定,切勿任意重製、散佈、改作、轉貼、播送,以免觸法。

摘要(中) 軟體開發的過程中,為了確保系統的穩定性,我們常常會使用負載測試(Load Testing)來檢驗此系統是否符合規格書中系統所能承受的負載能力;另外再利用壓力測試(Stress Testing)來測試系統所能負荷的工作量超出負荷後系統是否運作正常。這兩種測試都必須模擬大量同時上線人數(concurrent users)。
Software Testing Portal為本團隊所開發的TaaS平台,為一種第三方測試服務。平台主要為利用開源測試工具JMeter來執行負載測試/壓力測試,模擬同時上線人數使用待測系統的情形。而本研究為了模擬大量的同時上線使用者,設計一個自動化壓力測試分散式系統架構,使這個TaaS平台需要支援可以自動同時配置與分配多台伺服器給測試人員,模擬負載/壓力測試所需要的大量concurrent users。但不需要考量系統背後的設計架構,與系統所要設定的某些參數等細節。
在壓力測試過程中,通常會模仿使用者真實使用系統的行為,來找到系統潛在的瓶頸。但是,在對大型系統進行壓力測試時,所要模擬的同時上線人數數量非常龐大,這將會耗費許多測試資源。本研究將提出一個方法,以觀察待測系統資源消耗的方式,經過不斷加重系統的負荷,接著利用統計資源消耗的曲線圖來估計系統可能會使用的系統資源量。期待能用最少的測試設備,來簡單發現系統可能的壓力臨界值,並藉此讓測試團隊找出系統可能會發生瓶頸的原因。
摘要(英) In order to ensure a software system can survive large number of concurrent users, load testing and stress testing are two major approaches to verify such a non-functional requirement. To test such a non-functional requirement, we need to mimic a large number of concurrent users using stress testing tools.
In the past, a TaaS (Test as a Service) portal was built to support 3rd party independent testing service. This portal adopt the open source stress testing tool “JMeter” to build a transparent service which support a large number of concurrent users but hide the setup and implementation details from the testers. To simulate numerous concurrent users, this TaaS portal can automatically assign a lot of testing servers to execute load/stress testing at the same time.
Besides, to find out the scalability problem of a system, emulating a large number of concurrent users that is close to the real scenarios is the ultimate solution. However, this is an expensive approach which may requires a lot of computing resources. In this thesis, we propose an attempt to avoiding such a problem. Instead of simulating the real number of concurrent users, we install different sensors on system under test. Through increasing the workload on system, and inspecting the system’s resource consuming history, we can observe the growth rate of these resource usages to predict what could happen when the expected number of concurrent users are reached.
關鍵字(中) ★ 壓力測試
★ 負載測試
★ JMeter
★ 測試自動化
★ TaaS
關鍵字(英) ★ stress testing
★ load testing
★ JMeter
★ testing automation
★ TaaS
論文目次 第1章、 緒論 1
1-1 研究動機 1
1-2 問題描述 3
1-2-1 模擬大量使用者 3
1-2-2 模擬真實的代價與可能替代方案 4
第2章、 背景與相關研究 5
2-1 TESTING-AS-A-SERVICE(TAAS) 5
2-1-1 TaaS定義 5
2-1-2 傳統測試服務與TaaS的比較 5
2-2 JMETER 7
2-3 負載測試 8
2-3-1 負載測試目的 8
2-3-2 負載測試步驟 9
2-4 壓力測試 9
2-5 D-CLOUD[13] 10
第3章、 SOFTWARE TESTING PORTAL 12
3-1 第三方測試平台 12
3-2 軟體測試工具鍊 13
3-3 雲端測試平台 14
3-4 功能介紹 14
3-4-1 網頁功能測試 14
3-4-2 壓力測試/負載測試 15
3-4-3 迴歸測試(Regression Test)[14] 16
3-5 架構 17
第4章、 分散式壓力測試系統架構 19
4-1 問題 19
4-1-1 手動修改JMeter設定檔 20
4-1-2 管理測試伺服器 23
4-1-3 Remote Testing的限制 23
4-2 分散式壓力測試系統架構設計與實做 23
4-2-1 JMeter remote testing 23
4-2-2 自動分配測試伺服器 24
4-2-3 Distributed Mode與Normal Mode 26
4-2-4 成果 27
第5章、 代價較低的系統瓶頸推估與預測 28
5-1 研究動機 28
5-2 系統瓶頸 29
5-3 模擬真實使用者行為的困難 29
5-4 模擬真實測試環境的代價 30
5-5 低代價的系統瓶頸推估步驟 31
5-6 結論 32
第6章、 研究成果評估 34
6-1 評估案例選擇 34
6-2 評估工具選擇 34
6-3 評估案例一 - MEDIAWIKI 35
6-3-1 實驗環境 35
6-3-2 實驗方法 35
6-3-3 實驗結果 36
6-4 評估案例二 – REDMINE 39
6-4-1 實驗環境 39
6-4-2 實驗方法 40
6-4-3 實驗結果 41
6-5 評估案例結論 43
第7章、 結論與探討 44
參考文獻 1. Lian, Y., et al. Testing as a Service over Cloud. in Service Oriented System Engineering (SOSE), 2010 Fifth IEEE International Symposium on. 2010.
2. Selenium. Available from: http://www.seleniumhq.org/.
3. JMeter. Available from: http://jmeter.apache.org/.
4. Jenkins. Available from: https://jenkins-ci.org/.
5. Zhen Ming, J., et al. Automatic identification of load testing problems. in Software Maintenance, 2008. ICSM 2008. IEEE International Conference on. 2008.
6. Gao, J., et al. Testing as a Service (TaaS) on Clouds. in Service Oriented System Engineering (SOSE), 2013 IEEE 7th International Symposium on. 2013.
7. Khanna, R. Making the Most of Test Automation as a Service. in Cloud Computing in Emerging Markets (CCEM), 2012 IEEE International Conference on. 2012.
8. Minzhi, Y., et al. WS-TaaS: A Testing as a Service Platform for Web Service Load Testing. in Parallel and Distributed Systems (ICPADS), 2012 IEEE 18th International Conference on. 2012.
9. Menasce, D., Load testing of Web sites. Internet Computing, IEEE, 2002. 6(4): p. 70-74.
10. Xingen, W., Z. Bo, and L. Wei. Model Based Load Testing of Web Applications. in Parallel and Distributed Processing with Applications (ISPA), 2010 International Symposium on. 2010.
11. Performance vs. load vs. stress testing. Available from: http://agiletesting.blogspot.tw/2005/02/performance-vs-load-vs-stress-testing.html.
12. 負載測試. Available from: http://baike.baidu.com/view/651437.htm#2.
13. Banzai, T., et al. D-Cloud: Design of a Software Testing Environment for Reliable Distributed Systems Using Cloud Computing Technology. in Cluster, Cloud and Grid Computing (CCGrid), 2010 10th IEEE/ACM International Conference on. 2010.
14. Regression Test. Available from: http://en.wikipedia.org/wiki/Regression_testing.
15. Java Remote Method Invocation. Available from: http://www.oracle.com/technetwork/articles/javaee/index-jsp-136424.html.
16. JMeter Remote Testing.
17. Cristiana Amza, E.C., Anupam Chanda, Alan L. Cox, Sameh Elnikety, Elmootazbellah N. Elnozahy, Romer Gil, Julie Marguerite, Karthick Rajamani and Willy Zwaenepoel. Bottleneck Characterization of Dynamic Web Site Benchmarks Available from: http://www.research.ibm.com/acas/projects/01rajamani.pdf.
18. Manzoor, S. Web applications Performance Symptoms and Bottlenecks Identification. 2012; Available from: http://www.agileload.com/agileload/blog/2012/11/27/web-applications-performance-symptoms-and-bottlenecks-identification.
19. MediaWiki. Available from: http://www.mediawiki.org/wiki/MediaWiki.
20. Redmine. Available from: http://www.redmine.org/.
指導教授 鄭永斌(Yung-Pin Cheng) 審核日期 2015-7-28
推文 facebook   plurk   twitter   funp   google   live   udn   HD   myshare   reddit   netvibes   friend   youpush   delicious   baidu   
網路書籤 Google bookmarks   del.icio.us   hemidemi   myshare   

若有論文相關問題,請聯絡國立中央大學圖書館推廣服務組 TEL:(03)422-7151轉57407,或E-mail聯絡  - 隱私權政策聲明