Monday, July 2, 2018

Machine Learning for Automation Testing

The goals we are trying to achieve here by using Machine Learning for automation testing are to dynamically write new test cases based on user interactions by data-mining their logs and their behavior on the application/service for which tests are to be written and live validation so that in case an object is modified or removed or some other change occurs, like “modification in spelling,” such is done by most of the IDE’s in the form of Intelli-sense like Visual Studio or Eclipse.
Machine Learning in “Test Automation” can help prevent some of the following but not limited to cases:

  1. Saving on Manual Labor of writing test cases
  2. Test cases are brittle, so when something goes wrong, a framework is most likely to either drop the testing at that point or to skip some steps, which may result in a wrong/failed result.
  3. Tests are not validated until and unless that test is run. So, if a script is written to check for an “OK” button, then we wouldn’t know about its existence until we run the test.

The machine can help recover tests on the fly by applying fuzzy matching, which means if an object gets modified or removed, then the program and the script must be able to find the closest object to the one it was looking for and then continue the test. For example, if a web service has the options, “small, medium, large” at first, and the script was written according to that, and if another choice, i.e. “extra-large,” is added, then the script must be able to adapt to that and anticipate that change so that the test run can continue running without fail.



from DZone.com Feed https://ift.tt/2z89x2G

No comments:

Post a Comment