这个问题已经在这里有一个答案:
是否有可能在全球范围内改变一个Golang程序os.Args
的价值?我喜欢书面方式眼镜蛇库只是为了好玩,并在内部我利用os.Args
的解析命令行参数。我想这样做正确测试解析器。
目前,我在做什么是手动更改我的包的内部变量,但是这是一个不好的做法。
谢谢。
我认为答案对前一个问题How to test the passing of arguments in Golang?介绍了如何在测试过程中修改os.Args。
tomasz指出:“在os.Args的第一个值是(路径)可执行文件本身,所以os.Args = [] {字符串” CMD”,‘ - 用户=喇嘛’}应该解决您的问题,你可以去看看从标准包flag test他们正在做类似的事情。”