我有一个依赖于SQLite3的delphi应用程序,这是一个广告宣传为防崩溃的数据库引擎。
到目前为止,我能够使整个应用程序防崩溃,但现在我需要模拟残酷的机器重启/电源故障。
显然,为了进行这项测试,每天100次/重新启动我的机器会很疯狂/不实用,所以...
我想知道是否有办法以编程方式/自动方式使用VirtualBox(或类似的东西)模拟电源故障?
任何其他方法/想法都非常受欢迎,我的目标是确保我的用户数据永远不会被破坏。
PS。此问题适用于Windows XP或更高版本
答案 0 :(得分:7)
在虚拟机主机上运行此操作应该可以解决问题
VBoxManage controlvm(vmname)reset / poweroff
VBoxManage controlvm(vmname)reset对虚拟具有相同的效果 机器按下真实计算机上的“重置”按钮:感冒 重启虚拟机,重启并启动guest虚拟机 操作系统立即再次。 VM的状态未保存 事先,数据可能会丢失。 (这相当于选择了 GUI的“机器”菜单中的“重置”项目。)
VBoxManage controlvm(vmname)poweroff对虚拟具有相同的效果 机器在真正的计算机上拔电源线。再次, 预先不保存VM的状态,数据可能会丢失。 (这个 相当于选择“机器”菜单中的“关闭”项 GUI或按下窗口的关闭按钮,然后选择 在对话框中“关闭机器电源”。)