zoukankan      html  css  js  c++  java
  • go test命令參数问题

    go test命令參数问题

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

    问题是这种,在进行单元測试的时候,我希望输入一些命令行參数来控制程序的执行。
    參考go官方文档,仅仅须要在go test后面加上-args和參数就能够了
    比如

    go test -args -classpath E: estcase HelloWorld

    也就是上面的

    -classpath E: estcase HelloWorld

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

    flag provided but not defined:-classpath

    flag provided but not defined:-classpath

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

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

    go test -args classpath E: estcase HelloWorld

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

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

    go test -v -args classpath E: estcase HelloWorld

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

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

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

  • 相关阅读:
    如何将 asp.net core 应用进行 docker 容器部署
    三步搞定Centos 7 上特定版本的 docker 安装
    docker常用命令整理-在容器中使用service命令
    超简单,Centos7 安装 rabbitMQ
    C# 异步编程4 async与await 异步程序开发
    了解php的session_start的工作原理
    使用php-emoji类让网页显示emoji表情
    php拓展ssh功能
    HTML5的Server-Sent Events功能的使用
    apache的日志查看与开启
  • 原文地址:https://www.cnblogs.com/yutingliuyl/p/7381997.html
Copyright © 2011-2022 走看看