Всё зависит от деталей. Если Вы тестируете серверное приложение, которое, возможно, разворачивается на кластере, то удобнее будет использовать Docker, поскольку Docker - это не полноценная виртуальная машина и он значительно менее требователен к ресурсам. Если же Вы пишите Desktop приложение, то есть предназначенное для работы непосредственно на конкретной версии ОС. То и тестировать его нужно на этой версии ОС. Если живьём её нет, то придётся виртуалку поднять.