It's not the most realistic way to test security software, as some malware can detect their environment. But, it is the cheapest viable option for most people.
Use of VM and Virtualisation in the real world is not useless.
some malware can detect their environment.
good words, that is why real system testing is different, for eg: if you execute any rootkit or bootkit, then it will shoe the difference it will try to execute and detect and delete itself without any trace. still wants live example please look into the malware pack posted by malware1 namely 2014-06-22_53.7z, in this pack name of the file is d94ec06(10) to (14) i don't know specifically which one, but if executed in sandboxie it is detecting it and exit from running further and delete itself and traces of all execution of file. why i am sharing this is i tried in my real system not in VM to check how my anti-V&M hips working sadly nothing given warning program started and detected running inside snadboxie, poof deleted itself and all traces of running.