单元测试

测试文件需要以xxx_test.go的方式命名。

go test默认会执行当前目录下的所有测试文件。对于执行某个特定测试文件下的特定测试函数,参见-file和-run参数。

测试文件模板:

package gotest

import (
    "testing"
)

func Test_Division_1(t *testing.T) {
    if i, e := Division(6, 2); i != 3 || e != nil { //try a unit test on function
        t.Error("除法函数测试没通过") // 如果不是如预期的那么就报错
    } else {
        t.Log("第一个测试通过了") //记录一些你期望记录的信息
    }
}

func Test_Division_2(t *testing.T) {
    t.Error("就是不通过")
}

测试函数是func TestXxx(t *testing.T) {}格式。

记录信息:t.Log("one test passed.", e)

产生错误信息:t.Error("Division did not work as expected.")

继续阅读