当前位置: 首页 > news >正文

柬埔寨旅游网站建设网页制作软件推荐

柬埔寨旅游网站建设,网页制作软件推荐,深圳罗湖商城网站建设,最容易做流量的网站接着上一篇中的go module创建项目calc为例,在simplemath包中,是使用在命令行中使用交互式的方式进行测试,现在可以为这几个函数实现单元测试, go test,这个测试工具来自于 Go 官方的 gc 工具链。 运行 go test 命令将执…

接着上一篇中的go module创建项目calc为例,在simplemath包中,是使用在命令行中使用交互式的方式进行测试,现在可以为这几个函数实现单元测试, go test,这个测试工具来自于 Go 官方的 gc 工具链。
运行 go test 命令将执行当前目录下的包的测试代码,它会寻找 *_test.go 文件,并在这些文件中,寻找符合 TestXxx(*testing.T){} 命名的函数和参数(即,接收 *testing.T 参数的函数,命名为 TestXxxXxx 可以是任何不以小写字符开头的名字)。这个测试代码不会影响正常的编译过程,只在执行 go test 时被使用,如果对pytest有过了解,这个就可以轻松使用

编写单元测试

接着新增add_test.gosqrt_test.go两个文件,分别为add.gosqrt.go编写单元测试,目录如下所示
在这里插入图片描述
其中add_test.go如下

package simplemathimport "testing"func TestADD(t *testing.T) {r := Add(1, 2)if r != 3 {t.Errorf("Add(1, 2) failed, Got %d, expected 3.", r)}
}

sqrt_test.go如下

package simplemath
import "testing"
func TestSqrt(t *testing.T) {v := Sqrt(9)if v != 3 {t.Errorf("Sqrt(9) failed. Got %v, expected 3.", v)}
}

在编写单元测试时,需要引入testing包,类似pytest中的pytest包,go中的单元测试标准类型如下:

func TestXXX(t *testing.T) {// 测试逻辑
}

运行单元测试

使用goland编译器,选择要执行的单元测试的包,如这里的simplemath,然后痛右键菜单执行,这里和pytest几乎没有差异,因为goland和pycharm也是全家桶中的成员,所以如果之前使用过pytest和pycharm的搭配,这里就很容易上手
在这里插入图片描述
接着可以看到执行输出窗口如下
在这里插入图片描述
当然也可以在test测试文件点击如下所示,点击包名左侧的执行按钮,和上述点击工程目录栏是一样的效果
在这里插入图片描述
对应点击测试函数右侧的执行符号,则执行单个测试函数或者测试类。
我们知道负数无法平方根的,因此这里还要测试下sqrt函数的无效等价类测试

func TestNegativeSqrt(t *testing.T) {v := Sqrt(-9)if v != 3 {t.Errorf("Sqrt(9) failed. Got %v, expected 3.", v)}
}

输出如下所示
在这里插入图片描述

这里执行时就会报错,如果执行代码发现的❎,一方面可以使用goland自身的debug,此外还可以使用GDB进行调试,是一个由 GNU 开源组织发布的、Unix/Linux 操作系统下的、基于命令行的、功能强大的程序调试工具,Go 语言编译后的二进制文件支持通过 GDB 进行调试,比如上篇教程通过 go build calc 编译出来的可执行文件 calc,就可以直接用以下命令以调试模式运行

gdb calc

注:Windows 系统不支持该工具,Mac 下可以通过 brew install gdb 命令安装
然后,你就可以通过 GDB 支持的指令以命令行的方式对 Go 代码进行调试了,你可以通过 l 指令查看代码:
在这里插入图片描述

GDB 代码调试
要跳到某一行查看通过 l 传入行数即可:
在这里插入图片描述

GDB 代码调试
要为某一行设置断点可以通过 b 来实现:
在这里插入图片描述

GDB 代码调试
然后通过 run 命令来运行程序,如果是在 Mac 系统上,可能会报下面这个错:
在这里插入图片描述

GDB 代码调试
这是因为 Darwin 内核在你没有特殊权限的情况下,不允许调试其它进程。调试某个进程,意味着你对这个进程有完全的控制权限,所以为了防止被恶意利用,它是默认禁止的。允许 gdb 控制其它进程最好的方法就是用系统信任的证书对它进行签名,对应的解决方法参考这里:https://opensource.apple.com/source/lldb/lldb-69/docs/code-signing.txt(中文对应的解决方式)。

进入下一行可以用 n 指令,打印变量可以用 p 指令传入变量名。。。更多指令使用我就不深入展开了,因为对于新手来说,不推荐使用 GDB 进行代码调试,直接使用 GoLand 更友好,不是吗?如果你想探究 GDB 调试的更多用法,请查看对应的官方文档 Debugging Go Code with GDB

http://www.dt0577.cn/news/49675.html

相关文章:

  • 山东高密网站建设网络推广专员是干什么的
  • 分类信息系统网站模板搜狗推广登录
  • 做某个网站接口违法百度广告开户
  • 电商网站设计注意事项seo主要做什么
  • 苏州营销型网站seo外包公司兴田德润
  • 用织梦做的网站ftp怎么登陆app软件开发
  • 美国网站开发公司广州百度搜索排名优化
  • 做网站竞争大吗b站在线观看
  • 网站后台文章添加成功 不显示seo入门基础教程
  • 服装网站怎么做的百度官方下载安装
  • 12306网站是哪个公司做的营销策略4p
  • 工会网站建设管理工作总结下载谷歌浏览器并安装
  • 教育类网站配色手机百度下载免费安装
  • 个人商城网站建设windows优化软件排行
  • 生鲜网站建设seo北京优化
  • 有了域名怎么做网站网站排名怎么优化
  • 怎么做网站多少钱运营培训
  • 网站情况建设说明短视频seo
  • 前几年做那些网站能致富黄页推广引流
  • 无锡网站制作哪家服务好河北seo关键词排名优化
  • 大连手机自适应网站制作费用搜索引擎优化不包括
  • 郑州做品牌网站的公司爱站网排名
  • 网站建设报价包括哪些网络营销推广技巧
  • 商洛免费做网站公司近期的重大新闻
  • 泰国云服务器seo关键词外包
  • 03340 网站建设与管理小红书推广引流软件
  • 产品单页设计图片seo顾问服务福建
  • 现在用JAVA做网站用什么框架现在搜什么关键词能搜到网站
  • 钟表商城网站建设方案seo网站优化培训怎么做
  • 长春网站建设论坛上海网络推广外包公司