我需要扩展一个具有大量硬编码路径的Python代码
为了不混淆一切,我想在修改之前为代码创建单元测试:它将服务于作为我的新代码(这将不会有硬编码路径)的非回归测试回归测试处理硬编码路径
但由于硬编码系统路径,我将在chroot树内运行我的测试(我不想污染我的系统dir)
我的问题是我只想为测试设置chroot,并且这可以使用os.chroot来完成,仅限于root权限(并且我不想以root身份运行测试脚本)
其实,我只是需要一个假树diretory,这样当open('/etc/resolv.conf)
检索假resolv.conf的,而不是我的系统中的一个
我显然不希望更换自己的代码中的硬编码路径代码因为它不会真实回归测试
你有什么想法如何做到这一点?
感谢
注意,访问的所有路径都是可读与用户户头
感谢这完全是我所需要的 – Louis 2010-11-02 14:21:38