博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
go test命令參数问题
阅读量:5765 次
发布时间:2019-06-18

本文共 831 字,大约阅读时间需要 2 分钟。

go test命令參数问题

在使用go test对go代码进行单元測试的时候,遇到关于命令參数的问题。google了一下,没有找到非常好的说明,其实就是一些细节而已。

问题是这种,在进行单元測试的时候,我希望输入一些命令行參数来控制程序的执行。

參考,仅仅须要在go test后面加上-args和參数就能够了
比如

go test -args -classpath E:\testcase HelloWorld

也就是上面的

-classpath E:\testcase HelloWorld

是我输入的參数。可是却又这种错误:

flag provided but not defined:-classpath

flag provided but not defined:-classpath

意味着go test把-classpath也当成自己的參数去解析了,而不是把-args后面的全部字符串都当成是我程序输入的參数

这没有办法,我仅仅好在程序中吧-classpath更改成classpath。于是命令行例如以下

go test -args classpath E:\testcase HelloWorld

这样勉强攻克了问题。却由于go test的原因改变了我的源程序。

另外,当我希望打印调试信息,也就是为go test添加-v參数的时候,也遇到一个小问题,我是这样输入的

go test -v -args classpath E:\testcase HelloWorld

在源码这。我通过os.Args去获取命令行參数,可是-v会被当成我命令行的一个输入。而不是被忽略。

原则上来说。应该是-args以后才被当成是命令行參数。而其实go test没有完毕这个效果。于是我又仅仅能改动源程序以完毕測试。

go test过程中。须要使用命令行參数的情况比較少。可是我还是遇到了,并且出现了一些意想不到的问题,说明go test并非非常完美。另外我是刚開始接触go语言,或许有更好的办法或者理解不正确,这里仅仅是替自己做一个笔记。请多包涵。

你可能感兴趣的文章
Cisco PIX防火墙的安装流程
查看>>
配置系列:ssm中applicationContext-mybatis.xml的简单配置
查看>>
mysql或者mariadb备份脚本
查看>>
extundelete恢复文件
查看>>
我的友情链接
查看>>
电池温度检测原理和示例代码
查看>>
Linux服务器性能评估与优化、监控利器---dstat应用
查看>>
hdu 2842 Chinese Rings 矩阵快速幂
查看>>
解决tomcat占用CPU过高
查看>>
Powershell进阶学习(4) Powershell强大的利器“管道”
查看>>
关于GNU GPL
查看>>
Entity Framework Code First实体对象变动跟踪
查看>>
request.getServletPath()和request.getPathInfo()用法
查看>>
nginx在响应request header时候带下划线的需要开启的选项
查看>>
工(程师)欲善其事,必先利其(编译)器——《Android Studio实战——快速、高效地构建Android应用》...
查看>>
Linux下DHCP服务器配置
查看>>
css相对定位和绝对定位
查看>>
关于HTML中的定位
查看>>
Exchange 跨林迁移 Part5 组策略设置和添加用户到指定组
查看>>
教你如何禁止/允许某用户修改系统时间
查看>>