標題: 基於 QEMU 所模擬系統與軟體之回歸測試框架
A Regression Testing Framework for QEMU-based System and Software Development
作者: 林伯謙
Lin, Po-Chien
黃世昆
Huang, Shih-Kun
資訊科學與工程研究所
關鍵字: QEMU 模擬;軟體測試;回歸測試;測試自動化;測試框架;QEMU;QEMU-based system;software testing;regression testing;testing automation;testing framework
公開日期: 2012
摘要: 藉由軟體測試技術,我們可以檢測程式執行路徑,確認是否含有可能之缺陷與問題,以減少程式錯誤的發生率。然而現有的技術,在處理龐大程式上,軟體測試仍有其困難性與軟硬體資源不足的阻礙。其中,一個限制因素是目前的測試操作都還需要人工介入。雖然大部分測試工具的執行過程已經可以自動化,但在其測試前後的系統環境建置、餵送測試資料、判讀實驗結果以進行下一步驟,都尚未做到完全自動化,使得難以進行大規模、完整的測試。回歸測試的概念,是讓相同的測試工作能被重複執行,以幫助程式設計人員能在修改、調整程式細節等相關開發過程後,再次進行測試,以檢驗功能是否正常、或效能是否有所改進。在雲端計算的概念下,我們利用虛擬化資源的管理概念,將測試平台抽離出硬體主機的限制,藉此只要有足夠的硬體資源,我們的平台就能在不更改架構的情形下,進行大量測資的測試。在此論文中,我們藉由回歸測試框架的實作來管理軟體測試的過程。先試驗測試標的為 Linux 與 Windows 的環境,進一步將建立 Android-x86 系統的環境。如此,我們就能夠進行多適應性大規模的回歸測試。
With the help of software testing techniques, we are able to find potential defects along the execution path of programs, and reduce the software quality in the software system. However, to handle test cases for a large scale program using current software testing technique, it still requires much human efforts and manual intervention to operate, manage software and hardware resources. We currently perform testing and experiments by QEMU-based system tools in an automatic way. However, other processes are still in manual way, including the system environment setting up, input data feeding, result analysis and verification. This hinders us from performing large scale and comprehensive testing. The concept of "regression testing" is to perform the same testing repeatedly, which will help programmers test the integrity of functionalities or efficiency improvements after modifying or tuning the programs in the development stage. By the concept of "cloud computing", we can abstract away the testing platform from the hardware resources restriction by virtualization technique. Our platform is therefore able to manage large scale testing without reorganizing the architecture if we have sufficient and available hardware resources. We propose to manage the software regression testing process by the cloud implementation of a testing framework. We have first deployed the testing framework in the environments on Linux and Windows, and then Android-x86. The process of regression testing has been automated by performing several testing benchmarks which originally take several days to complete, needing much human efforts. The results reveal that our framework implementation can carry out an applicable and large scale testing in a cloud environment.
URI: http://140.113.39.130/cdrfb3/record/nctu/#GT079955637
http://hdl.handle.net/11536/72010
顯示於類別:畢業論文


文件中的檔案:

  1. 563701.pdf

若為 zip 檔案,請下載檔案解壓縮後,用瀏覽器開啟資料夾中的 index.html 瀏覽全文。