个人博客原文地址:http://www.lampnick.com/php/740

由于使用GoMonkey Patch后导致GoConvey命令不能正常运行测试用例解决方案

出错提示

runtime error: invalid memory address or nil pointer dereference

原因

由于GoMonkey Patch后需要关闭编译器对代码自动优化功能才能正常运行,但是GoConvey命令并不支持传入go test命令参数,所以导致GoConvey不能正常使用
go test -gcflags "all=-N -l"

临时解决方案

  • 安装GoConvey
go get github.com/smartystreets/goconvey
  • 修改源文件
/Users/nick/gocode/src/github.com/smartystreets/goconvey/web/server/system/shell.go:56
修改为:
return NewCommand(directory, gobin, "test", "-gcflags", "all=-N -l", tagsArg)
/Users/nick/gocode/src/github.com/smartystreets/goconvey/web/server/system/shell.go:68
修改为:
arguments := []string{"test", "-gcflags", "all=-N -l", "-v", "-coverprofile=" + reportPath, tagsArg}
/Users/nick/gocode/src/github.com/smartystreets/goconvey/web/server/system/shell.go:106
修改为:
arguments := []string{"test", "-gcflags", "all=-N -l", "-v", tagsArg}
  • 重新安装GoConvey
go install github.com/smartystreets/goconvey
  • 运行
cd <project path>
$GOPATH/bin/goconvey
  • 成功运行测试用例 

彻底解决方案

需要向GoConvey作者提PR/ISSUE,使GoConvey支持go test 命令参数

由于使用GoMonkey Patch后导致GoConvey命令不能正常运行测试用例解决方案相关推荐

  1. python升级pip失败,失败后导致pip压根不能用,解决方案

    问题:'pip' 不是内部或外部命令,也不是可运行的程序 首先要先检查环境变量,有没有包含python文件中的scripts的路径,没有的话新建一个 cmd运行的命令流程无非就是找到对应路径,执行路径 ...

  2. Ubuntu安装采用nomodeset命令后导致显示不完全

    Ubuntu安装采用nomodeset命令后导致显示不完全 一部份NVIDIA显卡用户在安装Ubuntu系统时会出现驱动不兼容的情况,此时采用nomodeset命令禁用显卡,但是在禁用后可能会出现分区 ...

  3. RAC 安装patch 后启动实例 报错 ORA-00439 feature not enabled- Real Application Clusters 解决方法...

    朋友说对windows RAC 打上Patch后,有个节点实例不能启动, 其他进程正常. ORA-00439: feature not enabled: Real Application Cluste ...

  4. Linux服务器重启后crs_stat -t 命令无法正常使用以及解决思路

    前提:在Linux系统中安装ASM,安装完ASM和Oracle数据库时都是正常使用的,但在重启服务器后Oracle相关命令不识别. 1. [grid@udevasm:/home/grid]$crsct ...

  5. python卸载错误_卸载python后导致yum无法使用的解决办法 - Python - 服务器之家

    卸载python后导致yum无法使用的解决办法 发布时间:2014-08-03 来源:服务器之家 由于服务器需要升级python,参照了一篇坑爹的文章卸载了旧版python # 卸载旧的python ...

  6. Linux服务器重启后crs,Linux服务器重启后crs_stat -t 命令无法正常使用以及解决思路...

    Linux服务器重启后crs_stat -t 命令无法正常使用以及解决思路 发布时间:2020-05-30 16:10:45 来源:51CTO 阅读:3571 作者:xiaocao13140 前提:在 ...

  7. FastJson1.2.24反序列化导致任意命令执行漏洞复现(CVE-2017-18349)

    #FastJson1.2.24反序列化导致任意命令执行漏洞(CVE-2017-18349)# 一.漏洞简介 Pippo是一款基于Java的Web框架.FastjsonEngine是其中的一个JSON处 ...

  8. linux下因修改/etc/sudoers 从而导致sudo命令无法使用

    linux下因修改/etc/sudoers 从而导致sudo命令无法使用报错如下: ~$ sudo sudo: >>> /etc/sudoers:syntax error 在行 21 ...

  9. Centos7配置环境变量导致大部分命令不可用

    解压完jdk后,vim /etc/profile 配置完环境变量, source /etc/profile 后发现大部分命令都用不了了,如: cat,ll,vi,vim等. 显然是PATH的值有问题导 ...

最新文章

  1. 自动驾驶的分级和行业现状
  2. 如何在VS2013配置CUDA,并编译生成DLL
  3. 泰信通获得正唐资本首轮投资,加速进军SDN、云网市场
  4. 实验5_JPEG解码
  5. nginx 并发过十万
  6. 《企业迁云实战》——2.4 云端实践
  7. python if 比较小数浮点数
  8. msicuu.exe,msizap.exe
  9. java微信退款接口demo_微信公众号接口开发----退款详解
  10. python读取定位_如何使用python定位和读取Data Matrix代码
  11. [BUUCTF] 洞拐洞拐洞洞拐
  12. React Native-6.React Native Text组件,多组件封装实战之凤凰资讯页面
  13. 我欲封神——JAVA封神之路
  14. 一度智信:电商推广计划
  15. C语言中访问结构体成员时 点 . 和 箭头 - 的区别
  16. Oracle-OGG trail 文件大小引起的进程异常 OGG-01172
  17. 物联网开发笔记(38)- 使用Micropython开发ESP32开发板之控制温度传感器(DS18B20)
  18. 智能物联网网关有哪些必备功能
  19. 2020年郑州大学计算机录取分数线,2020年郑州大学各省各专业录取分数线
  20. SAT数学考试需要准备的物品

热门文章

  1. linux固态硬盘寿命,选SSD固态硬盘不必太纠结TLC MLC的寿命问题
  2. android 卷轴动画效果,Android自定义View-卷轴
  3. 【Ubuntu 20.04 LTS】安装 QQ 、微信和企业微信
  4. c语言有关字符的操作,C语言字符操作总结大全(超详细).doc
  5. 【翻译】★VERTEBRA-FOCUSED LANDMARK DETECTION FOR SCOLIOSIS ASSESSMENT
  6. 金融安全算法介绍系列5——国密算法
  7. php自我简历,PHP简历自我评价填写样本
  8. [渝粤教育] 山东财经大学 金融工程 参考 资料
  9. 怎样将cad布局导出来_cad如何复制布局(CAD怎么把一个布局移动到另一个布局)...
  10. Stata对cgss2017实证分析