簡易檢索 / 詳目顯示

研究生: 董晉宇
Tung, Ching-Yu
論文名稱: 具自動延展能力之跨瀏覽器測試雲平台
Design and Implementation of an Auto-Scaling Cross-Browser Testing Cloud Platform
指導教授: 李信杰
Lee, Shin-Jie
學位類別: 碩士
Master
系所名稱: 電機資訊學院 - 資訊工程學系
Department of Computer Science and Information Engineering
論文出版年: 2022
畢業學年度: 110
語文別: 英文
論文頁數: 43
中文關鍵詞: 網頁自動化測試跨瀏覽器測試具自動延展能力
外文關鍵詞: web automation testing, cross-browser testing, auto-scaling capability
相關次數: 點閱:92下載:0
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 中文摘要 i Abstract ii Acknowledgement iii Table of Contents iv List of Tables vi List of Figures vii List of Listings viii Chapter 1 Introduction 1 1.1 Motivation 1 1.2 Overview 2 1.3 Thesis Organization 3 Chapter 2 Background and Related Work 4 2.1 Selenium Grid 4 2.2 Docker 5 2.3 Kubernetes 6 2.4 KEDA 7 2.5 Summary of Related Work 7 Chapter 3 The Proposed System Architecture 8 3.1 Problem 8 3.2 Building a Stable and Reliable Cross-Browser Testing Platform 9 3.2.1 Overview of Architecture 9 3.2.2 Defining Roles for the Worker Nodes 11 3.2.3 Deploy Selenium Hub on Kubernetes Worker Machines 13 3.2.4 Deploying Selenium Nodes on the Other Kubernetes Worker Machines 17 3.2.5 Kubernetes Cluster Networking 21 3.3 Optimizing System Resources Using KEDA 25 Chapter 4 Experiments 29 4.1 Hardware Specifications 29 4.2 Test Case Design 30 4.3 Finding an Optimal CPU and Memory Limitation for a Pod 31 4.4 Test Case Execution Time with Single Browser Nodes Deployed 34 4.5 Test Case Execution Time with Multiple Browser Nodes Deployed 36 Chapter 5 Conclusion 39 5.1 Conclusion 39 5.2 Future Work 39 References 41

    [1] "Kubernetes." https://kubernetes.io/ (accessed December 30, 2021).
    [2] "Horizontal Pod Autoscaling." https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/ (accessed December 31, 2021).
    [3] "Selenium Grid 4." https://www.selenium.dev/documentation/grid/ (accessed December 31, 2021).
    [4] "Docker images for the Selenium Grid Server." https://github.com/SeleniumHQ/docker-selenium (accessed January 1, 2022).
    [5] "Use containers to Build, Share and Run your applications." https://www.docker.com/resources/what-container (accessed January 1, 2022).
    [6] "The Industry-Leading Container Runtime." https://www.docker.com/products/container-runtime (accessed January 1, 2021).
    [7] "Kubernetes - Configuration Best Practices." https://kubernetes.io/docs/concepts/configuration/overview/ (accessed December 24, 2021).
    [8] "Kubernetes Service." https://kubernetes.io/docs/concepts/services-networking/service/ (accessed January 12, 2022).
    [9] "KEDA: Kubernetes-based event-driven autoscaling." https://azure.microsoft.com/en-us/updates/keda-kubernetes-based-event-driven-autoscaling/ (accessed January 2, 2022).
    [10] О. Abdullaiev and L. Ibrahimova, "Review of testing software. Selenium software," ВНТУ, 2020.
    [11] A. Arjona, P. G. López, J. Sampé, A. Slominski, and L. Villard, "Triggerflow: Trigger-based orchestration of serverless workflows," Future Generation Computer Systems, 2021.
    [12] G. Bar-Gil. "Comparing Docker Images To Docker Containers." https://www.whitesourcesoftware.com/free-developer-tools/blog/docker-images-vs-docker-containers/ (accessed January 1 2022).
    [13] D. Bernstein, "Containers and cloud: From lxc to docker to kubernetes," IEEE Cloud Computing, vol. 1, no. 3, pp. 81-84, 2014.
    [14] C. Boettiger, "An introduction to Docker for reproducible research," ACM SIGOPS Operating Systems Review, vol. 49, no. 1, pp. 71-79, 2015.
    [15] B. Burns. "Partnering with the community to make Kubernetes easier." https://azure.microsoft.com/en-us/blog/partnering-with-the-community-to-make-kubernetes-easier/ (accessed January 2, 2022).
    [16] B. Burns, J. Beda, and K. Hightower, Kubernetes: up and running: dive into the future of infrastructure. O'Reilly Media, 2019.
    [17] B. Burns, B. Grant, D. Oppenheimer, E. Brewer, and J. Wilkes, "Borg, omega, and kubernetes," Communications of the ACM, vol. 59, no. 5, pp. 50-57, 2016.
    [18] S. Doğan, A. Betin-Can, and V. Garousi, "Web application testing: A systematic literature review," Journal of Systems and Software, vol. 91, pp. 174-201, 2014.
    [19] E. Dustin, J. Rashka, and D. McDiarmid, Quality web systems: performance, security, and usability. Addison-Wesley Longman Publishing Co., Inc., 2002.
    [20] W. Felter, A. Ferreira, R. Rajamony, and J. Rubio, "An updated performance comparison of virtual machines and linux containers," in 2015 IEEE international symposium on performance analysis of systems and software (ISPASS), 2015: IEEE, pp. 171-172.
    [21] J. Henschel, "Dimensioning, Performance and Optimization of Cloud-native Applications," 2021.
    [22] J. Hollan. "Announcing KEDA: bringing event-driven containers and functions to Kubernetes." https://cloudblogs.microsoft.com/opensource/2019/05/06/announcing-keda-kubernetes-event-driven-autoscaling-containers/ (accessed December 31, 2021).
    [23] J. F. Kurose, Computer networking: A top-down approach featuring the internet, 3/E. Pearson Education India, 2005.
    [24] Y.-F. Li, P. K. Das, and D. L. Dowe, "Two decades of Web application testing—A survey of recent advances," Information Systems, vol. 43, pp. 20-54, 2014.
    [25] D. Merkel, "Docker: lightweight linux containers for consistent development and deployment," Linux journal, vol. 2014, no. 239, p. 2, 2014.
    [26] S. Microsystem, "Distributed Application Architecture," ed: Retrieved 2009-06-16. 7, 2000.
    [27] F. Minna, A. Blaise, F. Rebecchi, B. Chandrasekaran, and F. Massacci, "Understanding the security implications of kubernetes networking," IEEE Security & Privacy, vol. 19, no. 05, pp. 46-56, 2021.
    [28] V. Moustakis, C. Litos, A. Dalivigas, and L. Tsironis, "Website Quality Assessment Criteria," in ICIQ, 2004, pp. 59-73.
    [29] S. Nathan, R. Ghosh, T. Mukherjee, and K. Narayanan, "Comicon: A co-operative management system for docker container images," in 2017 IEEE International Conference on Cloud Engineering (IC2E), 2017: IEEE, pp. 116-126.
    [30] T.-T. Nguyen, Y.-J. Yeom, T. Kim, D.-H. Park, and S. Kim, "Horizontal pod autoscaling in Kubernetes for elastic container orchestration," Sensors, vol. 20, no. 16, p. 4621, 2020.
    [31] F. Paraiso, S. Challita, Y. Al-Dhuraibi, and P. Merle, "Model-driven management of docker containers," in 2016 IEEE 9th International Conference on cloud Computing (CLOUD), 2016: IEEE, pp. 718-725.
    [32] R. Peinl, F. Holzschuher, and F. Pfitzer, "Docker cluster management for the cloud-survey results and own solution," Journal of Grid Computing, vol. 14, no. 2, pp. 265-282, 2016.
    [33] N. Poulton, The Kubernetes Book. Amazon, 2021.
    [34] L. N. Sabaren, M. A. Mascheroni, C. L. Greiner, and E. Irrazábal, "A systematic literature review in cross-browser testing," Journal of Computer Science & Technology, vol. 18, 2018.
    [35] M. S. I. Shamim, F. A. Bhuiyan, and A. Rahman, "XI Commandments of Kubernetes Security: A Systematization of Knowledge Related to Kubernetes Security Practices," in 2020 IEEE Secure Development (SecDev), 2020: IEEE, pp. 58-64.
    [36] P. Stack, H. Xiong, D. Mersel, M. Makhloufi, G. Terpend, and D. Dong, "Self-healing in a decentralised cloud management system," in Proceedings of the 1st International Workshop on Next generation of Cloud Architectures, 2017, pp. 1-6.
    [37] tgoswami. "Benefits and Limitations of Using Selenium Grid." https://www.programsbuzz.com/article/benefits-and-limitations-using-selenium-grid (accessed December 30, 2021).
    [38] L. A. Vayghan, M. A. Saied, M. Toeroe, and F. Khendek, "Deploying microservice based applications with kubernetes: Experiments and lessons learned," in 2018 IEEE 11th international conference on cloud computing (CLOUD), 2018: IEEE, pp. 970-973.
    [39] F. Wang and W. Du, "A test automation framework based on WEB," in 2012 IEEE/ACIS 11th International Conference on Computer and Information Science, 2012: IEEE, pp. 683-687.
    [40] Z. Zhan, "Remote Control Server," in Selenium WebDriver Recipes in C#: Springer, 2015, pp. 149-154.

    無法下載圖示 校內:不公開
    校外:不公開
    電子論文尚未授權公開,紙本請查館藏目錄
    QR CODE