Post Prioritization Techniques to Improve Code Coverage for SARSA Generated Test Cases
Md Khorrom Khan, Ryan Michaels, Dylan Williams, Benjamin Dinal, Beril Gurkas, Austin Luloh, Renée C. Bryce · 2023
Reinforcement learning techniques are gaining popularity for automated test suite generation. SARSA(State-Action-Reward-State-Action) is one such reinforcement learning approach that has demonstrated success in generating test cases with high code coverage in the Android domain. This paper improves upon prior SARSA test generation work by applying post prioritization strategies. That is, while SARSA produced test suites with good code coverage, we may reorder test cases using different prioritization criteria to improve rates of code coverage. The prioritization criteria that we examine include event pair coverage, the number of states covered, and the number of activities covered. On average, the post-prioritization techniques resulted in 2.58% to 8.14% increases of Average Percentage of Code Coverage (APSC) and 2.98% to 7.32% increases of Average Percentage Branch Coverage (APBC) over default and random orderings.