Font Size: a A A

Research On Selenium Automated Test Framework Based On User/Browser Pool Task Scheduling Method

Posted on:2022-05-01Degree:MasterType:Thesis
Country:ChinaCandidate:Y F HouFull Text:PDF
GTID:2518306560490224Subject:Software engineering
Abstract/Summary:PDF Full Text Request
In the Internet era,Web application requirements are becoming more and more complex,product development cycles are constantly shortening,and manual testing has problems of low efficiency and low coverage.Therefore,many companies choose to use automated testing tools for regression testing.Because some commercial software is more expensive,the average Internet company will choose to use open source software to develop its own automated test system,which can improve the efficiency of the test to a certain extent.At the same time,in the testing work,performance is particularly important for the Web system,and Web load testing is one of the necessary means to ensure the performance of the Web system.Usually,these load tests are performed automatically using protocol-level HTTP requests(for example,using JMeter).However,using protocol-level requests for load testing has several disadvantages.For example,protocol-level requests only partially represent the real usage of the web application because the web application is not actually executed in the browser.If the application is not executed,it may be difficult to abstract complex behaviors(such as login)into the request.Browser-based load testing can be used as an alternative to protocol-level requests.Using a browser-based testing framework(such as Selenium),you can perform tests more realistically inside the browser.But unfortunately,because the browser instance must be started for testing,browser-based testing has a high performance overhead,which limits its applicability in load testing.This article designs and develops an automated testing framework for Web UI based on the open source testing tool Selenium.The framework is based on Selenium2,combined with the Test NG unit test framework,uses SVN to implement version control of the test framework,integrates the Jenkins continuous integration platform,supports automatic web page testing,and supports automatic generation of test reports.In addition,in order to reduce the performance overhead of SELENIUM-based load testing,this paper proposes a task scheduling method based on user/browsing pool,which shares browser instances among test user instances,thereby reducing the number of startups during the execution of the test.The performance overhead introduced by many browser instances.The test results show that this method can significantly increase the number of user instances tested on the test computer without causing overload of the load driver.The testing framework has been applied to the web-side products of Aipin Logistics Company to replace manual testing.The actual operation results show that the testing framework has obvious effects,improving the testing efficiency and shortening the testing cycle.At the same time,I hope that the insights shared in this work can help Selenium developers understand the use of Selenium in practice and how to provide better support for Selenium.
Keywords/Search Tags:automated testing tools, Selenium, Web applications, load testing
PDF Full Text Request
Related items