2022 Volume 30 Pages 294-306
End-to-end test automation for web applications is important in order to release software quickly in accordance with market changes. However, the cost of implementing and maintaining test scripts is a major obstacle to the introduction of test automation. In addition, many testing activities, such as exploratory testing, user-interface testing, and usability testing, rely on human resources. We propose an approach to generate effective test scripts from manual testing, which is indispensable in software development. Manual testing activities are recorded by our tool. The generated test scripts leverage the page-object pattern, which improves the maintainability of test scripts. To generate page objects, our approach extracts operations as methods useful for test automation from the test logs. Our approach also generates test cases that cover features of an application by analyzing its page transitions. We evaluated whether our approach could generate complete test scripts from test logs obtained from four testers. Our experimental results indicate that our approach can generate a greater number of complete methods in page objects than a current page-object generation approach. We also conducted an empirical evaluation of whether our approach can reduce the cost of implementing test scripts for real systems. The result showed that our approach reduces about 48% of the time required to implement test scripts compared with manual implementation.