Font Size: a A A

Design And Implementation Of Automated Testing System For Portability Of Java Web Application

Posted on:2022-05-28Degree:MasterType:Thesis
Country:ChinaCandidate:X B XueFull Text:PDF
GTID:2518306725484774Subject:Master of Engineering
Abstract/Summary:PDF Full Text Request
With the rapid development of Internet software technology,java web application has become an important part of daily life and industrial production.Due to the diversification of market demand and the development of software and hardware technologies,the deployment environment and deployment methods of java web applications are constantly changing,and higher requirements are placed on portability.Therefore,how to test the portability of java web applications has become an issue of increasing concern for software vendors and developers.The current mainstream portability testing methods rely on manually setting up multiple test environments,and performing verification tests after deploying applications.Although this method is effective,it has the problems of large workload,high test cost,and low efficiency.Based on the above background,this paper designs and implements an automated testing system for the portability of Java Web application,which includes five core modules: test environment generation,node control,scheduling execution,automated test and automated analysis.Testers can upload applications to be tested and create portability test tasks through this system.The system is disassembled into multiple subtasks according to different test environments.When the portability test task triggers execution,due to limited resources,the scheduling execution module will be responsible for the execution and management of the subtasks,and control the task execution steps and processes based on the delay queue and message queue,and improve performance and availability through the queuing mechanism.Each subtask first needs to apply for resources through the node control module,which is responsible for maintaining the resource status of the transplanted and deployed cluster nodes,and provides functions such as resource allocation,node registration and cancellation.The test environment generation module is based on Docker container technology,and will automatically generate the test environment according to the test environment configuration combination selected by the user,and run the uploaded application to be tested.After the application runs successfully,the automated test module calls HttpRunner for functional and performance testing.To ensure the high availability of automated testing tools,asynchronous scheduling execution of tool calls is implemented based on the Celery framework.During the task execution test,the system will also collect a number of monitoring data and log information.Finally,through the automated analysis module,the test results are analyzed,the indicators are calculated,and the visual test report is generated.In order to improve the system scalability,the system modules are developed based on the microservice architecture.Both the transplantation deployment cluster and the Celery Worker cluster support elastic scaling,and the automated testing tools can be pluggable extensions.In order to ensure the quality of system service,this paper designs and writes 60 unit test cases and 30 interface test cases to verify the correctness of the core business functions,and all of them are executed and passed.At present,the system has been put into operation,and portability tests have been performed on 20 real Java Web applications.Except for one application that could not be tested due to its own reasons,the rest were successfully run,with a test success rate of 95%.The results show that the system can provide customers with the expected automated testing services for the portability of Java Web applications.
Keywords/Search Tags:Java Web Application, Software Portability, Automated Testing, Microservices
PDF Full Text Request
Related items