Nowadays, researches are looking for adaptation of Machine Learning algorithms to testing processes to reduce the manual effort and improve quality. In this talk, we will discuss in detail Machine Learning practices with a case study. Testing efforts are potentially able to be minimized in all stages.
I aim to demonstrate how ML helps in all stages. In this manner, I summarize the application areas with algorithms and discuss the advantages and potential risks of AI applications in software testing.
To sum up, I target at an important problem, AI-based applications of software testing. As more and more researchers try to use AI techniques to solve the traditional software problems, “what and how we can use” becomes more crucial. AI is one of the hottest topics in software world nowadays. Especially mining valuable information from bugs can be made use of by managers to guide feature priorities.
I list AI applications in testing these perspectives: test definition, implementation, execution, maintenance and grouping, and bug handling. Stages in which AI is applied are:
- Test definition
- Implementation
- Automatic code generation
- Code completion
- Execution: exploratory testing.
- Maintenance and grouping,
- Review test code.
- Heal broken test code.
- Prioritize test cases.
- Constructing suites
- Bug Management.
- Triage
- Classification
- Assignment
Take-aways
After the talk, attendees will be able to imagine how Machine Learning can be used to
• generate automatically test cases.
• review test code.
• heal broken test code.
• prioritize test cases.
• exploratory testing.
• manage bugs.