“执行测试”和“平衡测试”中的文件权限错误不同

时间:2019-03-26 06:08:22

标签: go testing bazel

如果测试要声明文件许可权错误,例如,写入文件系统的根目录,则“执行测试”将返回syscall.EACCES错误,而“标准测试”将返回syscall.EPERM 。如何在“基础测试”和“继续测试”中通过测试?

可以找到一个示例here

1 个答案:

答案 0 :(得分:1)

您可以使用bazel --spawn_strategy=standalone test //...禁用沙箱。我怀疑这可以解决问题。

但是,您可能要考虑写入/是否是您要测试的行为。如果您需要在不同的操作系统上或Docker容器中运行代码,在这种情况下,您将获得不同的行为,因此您可以考虑测试更可预测的代码路径,或嘲笑文件访问层以隔离测试从它。

相关问题