我必须为我们正在测试的软件由于磁盘已满错误而无法写入文件的测试场景编写一个bat脚本。例如,测试脚本必须是自动化的,这样我们就可以在夜间测试中运行它。测试脚本还必须在不同的计算机上运行,因此安装虚拟机之类的软件在这种情况下不是最好的解决方案。
如何在Windows环境中模拟该错误?
发布于 2009-02-09 16:26:44
对于Windows XP或更高版本:
此命令可以获取c:\驱动器的可用空间量:
for /f "usebackq tokens=1-5" %%A in (`dir c:\ ^| find "bytes free"`) do (
set FREE_SPACE=%%C
)
根据需要将c:\替换为您的驱动器。
然后,您可以从该值中腾出一些空间,以便您有一些空间可以使用:
set /a FREE_SPACE=FREE_SPACE-1024
或者您想要保留多少空闲空间。
您可以使用fsutil
命令创建一个文件来填充磁盘上的可用空间:
fsutil file createnew c:\spacehog.dat %FREE_SPACE%
运行您的测试,写入驱动器。在你写了1024个字节之后,你应该会用完所有的空间。
发布于 2009-02-09 15:35:10
下载并安装TrueCrypt。然后,您可以创建一个任意大小的虚拟分区(几兆字节),挂载它,然后用几个文档填充它。
发布于 2009-02-09 15:22:59
这可能看起来有点多,但我能想到的一件事是使用虚拟机,并将其虚拟磁盘设置为足以安装操作系统的大小。用一些垃圾文件填满它,然后运行你的程序。
https://stackoverflow.com/questions/528567
复制相似问题