  Checking software application suitability using automated software tools has
become a vital element for most organisations irrespective of whether they
produce in-house software or simply customise off-the-shelf software
applications for internal use. As software solutions become ever more complex,
the industry becomes increasingly dependent on software automation tools, yet
the brittle nature of the available software automation tools limits their
effectiveness. Companies invest significantly in obtaining and implementing
automation software but most of the tools fail to deliver when the cost of
maintaining an effective automation test suite exceeds the cost and time that
would have otherwise been spent on manual testing. A failing in the current
generation of software automation tools is they do not adapt to unexpected
modifications and obstructions without frequent (and time expensive) manual
interference. Such issues are commonly acknowledged amongst industry
practitioners, yet none of the current generation of tools have leveraged the
advances in machine learning and artificial intelligence to address these
problems.
  This paper proposes a framework solution that utilises machine learning
concepts, namely fuzzy matching and error recovery. The suggested solution
applies adaptive techniques to recover from unexpected obstructions that would
otherwise have prevented the script from proceeding. Recovery details are
presented to the user in a report which can be analysed to determine if the
recovery procedure was acceptable and the framework will adapt future runs
based on the decisions of the user. Using this framework, a practitioner can
run the automated suits without human intervention while minimising the risk of
schedule delays.
