Go测试中gopter属性测试是否支持安全并行执行?
gopter属性测试中
t.Parallel()的安全性说明 你代码中添加的t.Parallel()是安全的,可以正常使用,具体依据如下:
- gopter的
TestingRun方法完全兼容Go标准库testing.T的并发规范,内部对测试实例的所有操作都符合并发安全要求,不存在会被多个并行测试干扰的全局可变状态。 - 你当前测试函数内初始化的
parameters、properties等对象均为当前测试的局部变量,不会和其他并行测试产生资源竞争。
仅需要满足一个前提即可保证无异常:你自定义的NetworkSecurityGroupGenerator生成器、RunPropertyAssignmentTestForNetworkSecurityGroup测试函数没有依赖全局可变变量,也不会访问跨测试用例共享的独占资源。你目前运行测试没有出现崩溃,已经验证了你的场景下并行逻辑是正常可用的。
内容的提问来源于stack exchange,提问作者Bevan
相关产品推荐
相关产品推荐

