Different sorts of software need different approaches to testing. An interactive GUI-driven application will be tested in a very different way from a piece of middleware, for example.
Specifically considering data-oriented projects such as those involved with the development of machine vision or "Data Science" applications: What particular and idiosyncratic test requirements do such applications have that distinguishes them and sets them apart from other classes of software development?