Virtual Machine atau mesin virtual adalah perangkat lunak yang meniru sebuah komputer lengkap, termasuk sistem operasinya, di dalam komputer fisik. Mesin virtual berjalan terpisah dari sistem induknya. Mesin virtual memungkinkan satu perangkat menjalankan beberapa sistem operasi sekaligus secara terisolasi. Pendekatan ini berguna untuk pengujian, keamanan, dan pemanfaatan sumber daya server. Karena membawa sistem operasi penuh, mesin virtual lebih berat dibanding kontainer.
Virtual machine memberi lingkungan terisolasi yang fleksibel, memungkinkan pengujian aman dan pemakaian satu perangkat keras untuk banyak keperluan.
Seorang pengembang menjalankan sistem operasi berbeda di dalam mesin virtual untuk menguji aplikasinya tanpa memengaruhi komputer utamanya.