GUI Test Automation is a trend, since (1) Regression/Sanity/Smoke testing is one of the most potential areas to cut cost, which is the ultimate objective from the business perspective; (2) GUIs today constitute as much as 45~60% of total software code. GUI test automation, in essence, is to use development method to resolve test problem. It aims to replace manual operations by pre-defined test scripts, so that testing work can be laid more effectively and efficiently, more concentratively and less costly. In practice, automated test script will be written and executed to simulate human behavior such as mouse clicks or keyboard input to verify each function of System Under Test (SUT). With a lot of commercialized tools emerging out such as Mercury's QTP/WinRunner, IBM's RFT/Robot, etc, its market revenue is forecasted to amount to 1.6 billion in 2009 by IDC. Traditionally, it is mainly used in regression and sanity test. For smoke test, although with a lot of visible benefits listed below: (1) Automated Smoke Test is important for product quality assurance (1) The cost to fix a defect is much lower in development phase than in test phase. (2) Cut redundant cycles between developer's side and tester's side - that is, only when the build is stable enough to pass smoke test on each developer's side, the code can be checked in and the build shifts to tester's side. (3) Speed up the whole cycle for product to market, via much quick testing process. (2) Smoke test is Labor intensive and effort redundant. (3) Developers don't like or can't do testing. There is not a mature technical solution so far, this is because: (1) Environments for smoke test are too customized from one developer to another. (2) Environment for automated test is too complex, often needs to install script management, code version management software, etc. To address these challenges, this paper will present a virtualized platform based technical solution. After an short introduction, this discussion will begin with linked clone technology introduction. Then followed by detailed technical solution and platform organizing principles. Finally, it is concluded with a performance report to demonstrate its feasibility.
展开▼