【问题标题】:Test Automation: How to simulate power failure/machine crash?测试自动化:如何模拟电源故障/机器崩溃?
【发布时间】:2012-12-17 08:21:17
【问题描述】:

我有一个依赖于 SQLite3 的 delphi 应用程序,这是一个标榜为防崩溃的数据库引擎。

到目前为止,我能够使我的整个应用程序防崩溃,但现在我需要模拟残酷的机器重启/电源故障。

显然,为了进行此测试而每天残酷地重启我的机器 100 次是疯狂/不切实际的,所以...

我想知道是否有办法以编程方式/以自动化方式使用 VirtualBox(或类似的东西)模拟电源故障

任何其他方法/想法都会受到欢迎,我的目标是确保我的用户数据永不损坏。

PS。此问题适用于 Windows XP 或更高版本

【问题讨论】:

  • 编写一个防崩溃的应用程序是一项艰巨的任务;)但要解决您的问题:是的,自动化关闭 VM 非常容易 - 例如通过将参数传递给 VM 控制器根据其文档。对于 VirtualBox,这将是 VBoxManage controlvm 动词,如下所述:virtualbox.org/manual/ch08.html

标签: windows testing automated-tests


【解决方案1】:

在虚拟盒子主机上运行它应该可以解决问题

VBoxManage controlvm (vmname) 重置/关机

VBoxManage controlvm (vmname) reset 对虚拟机有同样的效果 机器就像按下真实计算机上的“重置”按钮:感冒 重新启动虚拟机,这将重新启动并引导来宾 立即重新操作系统。未保存 VM 的状态 提前,数据可能会丢失。 (这相当于选择 GUI的“机器”菜单中的“重置”项。)

VBoxManage controlvm (vmname) poweroff 对虚拟机有同样的效果 机器就像在真实计算机上拉电源线一样。再次, 虚拟机的状态没有预先保存,数据可能会丢失。 (这 相当于在“机器”菜单中选择“关闭”项 GUI 或按下窗口的关闭按钮,然后选择 对话框中的“关闭机器电源”。)

【讨论】:

  • 这是一个大胆的主张。硬盘驱动器甚至 sata 控制器仍然通电。更重要的是,即使按下重置硬盘驱动器仍然通电。
猜你喜欢
  • 1970-01-01
  • 2019-11-12
  • 1970-01-01
  • 2010-11-24
  • 2014-07-19
  • 2013-10-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多