WavebreakmediaMicro - Fotolia

What do I need to know about machine learning testing?

Software testers now need to add machine learning to their repertoire of skills. Expert Gerie Owen explains why this is coming to your workplace soon and how you can be ready.

Machine learning applications are getting ready to explode in every problem domain that produces data and relies on using that data to get an answer. That probably constitutes over 90% of the applications under development today.

Further, most of what you know about testing traditional applications doesn't apply to machine learning testing. In most testing situations, you seek to make sure that the actual output matches the expected one. With machine learning testing, looking for the right output is exactly the wrong approach. You will likely get a slightly different answer every time you enter the same data. But that doesn't make it wrong.

Instead, with machine learning testing, you have to have objective acceptance criteria that describe how close you have to come to the correct answer and provide a probability distribution. A medical diagnosis system will require higher accuracy than an e-commerce engine, for example.

This means that you have to have objective acceptance criteria before a line of code is written. Ironically, this means that you have to be more of a domain expert than a technical tester. With machine learning testing, you have to know the tolerances necessary in a successful application.

It also means that you need to have a fundamental understanding of mathematics and statistics. You need to be comfortable setting and measuring standard deviations and confidence intervals. If you've forgotten your college statistics, take a refresher to get ready for machine learning testing.

Lastly, you need a high-level understanding of the architecture of the machine learning system. You can't be uninformed as to how it was constructed. That's because, if a system isn't meeting its acceptance criteria, you have to give developers, data scientists and other stakeholders some intelligent reasons as to why that is happening. That is the only way any deficiencies can be addressed in machine learning testing.

Next Steps

What you need to know about artificial intelligence and software testing

Here's how artificial intelligence can help you be a better tester

Don't fear software test automation

Dig Deeper on AI in software testing