代码编织梦想

Go语言核心36讲学习笔记day06

我们可以为Go程序编写3类测试,

即: 功能测试, 基准测试, 也称之为性能测试, 以及示例测试

示例测试测试严格来讲也是一种功能测试, 只不过它更加关心程序打印出来的内容

  1. 对于功能测试函数来说,其名称必须以Test为前缀,并且参数列表中只应有一个*testing.T类型的参数声明

  2. 对于性能测试函数来说,其名称必须以Benchmark为前缀,并且唯一参数的类型必须是*testing.B类型的。对于示例测试函数来说,其名称必须以Example为前缀,但对函数的参数列表没有强制规定

  3. 对于示例测试函数来说,其名称必须以Example为前缀,但对函数的参数列表没有强制规定

下面是具体代码:

package math

import (
    "math"
    "testing"
)

func TestAbs(t *testing.T) {
    var a, expect float64 = -10, 10

    actual := math.Abs(a)
    if actual != expect {
        t.Fatalf("a = %f, actual = %f, expected = %f", a, actual, expect)
    }
}

Go 的测试必须按规则方式编写,不然 go test 将无法正确定位测试代码的位置,主要三点规则。
首先,测试代码文件的命名必须是以 _test.go 结尾,比如上节中的文件名 math_tesh.go 并非随意取的。
还有,代码中的用例函数必须满足匹配 TestXxx,比如 TestAbs。
关于 Xxx,简单解释一下,它主要传达两点含义,一是 Xxx 表示首个字符必须大写或数字,简单而言就是可确定单词分隔,二是首字母后的字符可以是任意 Go 关键词合法字符,如大小写字母、下划线、数字。
第三,关于用例函数类型定义,定义如下

func TestXxx(*testing.T)

测试函数必须按这个固定格式编写,否则 go test 将执行报错。函数中有一个输入参数 t, 类型是 *testing.T,它非常重要,单元测试需通过它反馈测试结果,具体后面再介绍

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_65156436/article/details/128750982

golang第九课---go 语言条件语句_阿豪tata的博客-爱代码爱编程

Go 语言条件语句 if语句 if 是用于测试某个条件(布尔型或逻辑型)的语句,如果该条件成立,则会执行 if 后由大括号括起来的代码块,否则就忽略该代码块继续执行后续的代码。 if condition {

go语言学习心得--go语言的条件语句_丶懿的博客-爱代码爱编程

条件语句和JAVA语言一个样 if ,如下面的流程图 if语句 if 语句 由一个布尔表达式后紧跟一个或多个语句组成。 if 布尔表达式 { /* 在布尔表达式为 true 时执行 */ } 实例代码演示 结

Go语言07 条件语句-爱代码爱编程

Go 语言条件语句 条件语句需要开发者通过指定一个或多个条件,并通过测试条件是否为 true 来决定是否执行指定语句,并在条件为 false 的情况在执行另外的语句。 下图展示了程序语言中条件语句的结构: Go 语言提供了以下几种条件判断语句: 语句描述if 语句if 语句 由一个布尔表达式后紧跟一个或多个语句组成if...else 语句if

golang 执行sql语句_Go语言学习笔记(Golang操作MySQL数据库)-爱代码爱编程

GO连接MySQL 通过GO页面作为客户端访问数据库 1.因为GO语言没有提供任何官方数据库驱动,所以需要安装第三方函数库。 2.由于在github上安装,所以需要安装git软件,安装过程一直点击下一步即可,安装完需要配置环境变量 git自行下载 配置gopath环境变量,配置完git到的包自动下载到那里 安装完git后使用get指令下载第

[GO语言基础] 五.顺序控制语句和条件控制语句(if、else、switch)-爱代码爱编程

作为网络安全初学者,会遇到采用Go语言开发的恶意样本。因此从今天开始从零讲解Golang编程语言,一方面是督促自己不断前行且学习新知识;另一方面是分享与读者,希望大家一起进步。前文介绍了Golang的运算,包括算术运算、逻辑运算、赋值运算、位运算及编程练习。这篇文章将详细讲解顺序控制语句和条件控制语句。 这系列文章入门部分将参考“尚硅谷”韩顺平老师的视频和

【Go语言之路 基础篇】Go语言的switch语句-爱代码爱编程

switch语句 switch 语句用于基于不同条件执行不同动作,每一个 case 分支都是唯一的,从上至下逐一测试,直到匹配为止。 switch var1 { case val1: ... case val2: ... default: ... } package main

Go 语言条件语句-爱代码爱编程

文章目录 1. if 语句2. if...else 语句3. if 语句嵌套4. switch 语句 条件语句需要开发者通过指定一个或多个条件,并通过测试条件是否为 true 来决定是否执行指定语句,并在条件为 false 的情况在执行另外的语句。 Go 语言提供了以下几种条件判断语句: 语句描述if 语句if 语句由一个布尔表达式后紧跟一

GO语言的条件判断语句-爱代码爱编程

目录 1、if语句 流程图 示例 2、if else语句 流程图 示例 3、if语句嵌套  示例 4、switch语句 流程图 示例 Type Switch 示例 fallthrough 示例 5、select语句 条件语句需要开发者通过指定一个或多个条件,并通过测试条件是否为true来决定是否执行指定语句,并在条件为fa

1.6 go微服务实战(go语言基础) --- 包和代码测试_enlyhua的博客-爱代码爱编程

第6章 包和代码测试 6.1 包及Go工具 6.1.1 包导入 6.1.2 Go工具 6.2 代码优化 6.2.1 Go代码的优化 代码的优化要基于Go语言的语法和编译器原理进行。代码的优化关键是性能分析。 Go语言提供了 runtime/pprof 标准库。 go tool pprof --help 6.2.2 性能分析

go语言:条件语句_约定成书丶的博客-爱代码爱编程

条件语句是编写程序的人通过指定一个或多个条件,并通过测试条件结果是否为 true 来决定是否执行指定语句,并在条件为 false 的情况再执行另外的语句。  Go没有三目运算符,所以不支持?:形式的条件判断。 if语句 由一个布尔表达式后紧跟一个或多个语句组成。 基本语法: if  条件表达式{         执行代码块

go/golang语言学习实践[回顾]教程03--go语言的编译与运行的命令行_学为所用的博客-爱代码爱编程

Go/Golang语言学习实践[回顾]教程03--Go语言的编译与运行的命令行 Go语言是编译型静态语言如何编译Go语言的源文件如何执行(运行)编译后的文件开发中如何编译后立即执行 总结 Go语言是编译型静

我为什么放弃go语言_liigo的博客-爱代码爱编程_我为什么放弃go语言

我为什么放弃Go语言 作者:庄晓立(Liigo) 日期:2014年3月 原创链接:http://blog.csdn.net/liigo/article/details/23699459 转载请注明出处:http://blog.csdn.net/liigo 有好几次,当我想起来的时候,总是会问自己:我为什么要放弃Go语言?这个

go语言switch语句用法-爱代码爱编程

条件语句switch 1.1.1. switch 语句 switch 语句用于基于不同条件执行不同动作,每一个 case 分支都是唯一的,从上直下逐一测试,直到匹配为止。 Golang switch 分支表达式可以是任意类型,不限于常量。可省略 break,默认自动终止。 语法 Go 编程语言中 switch 语句的语法如下: switch va

go语言分支语句、条件语句-爱代码爱编程

介绍go语言的分支语句有几种,以及如何使用 (一)分支语句概述 总的来说有三类: if...elseif...else... switch...case...default... selec

go语言条件语句_go 条件语句-爱代码爱编程

Go语言条件语句 条件语句if语句switch语句switch语句基本用法 条件语句 if语句 if 布尔表达式{ } if 布尔表达式{ } else { } i