gpt4 book ai didi

unit-testing - 如何使用golang实现单元测试程序?

转载 作者:数据小太阳 更新时间:2023-10-29 03:22:28 24 4
gpt4 key购买 nike

我看到很多博客,他们写了如何进行单元测试,但我会理解理论部分,但不了解如何实现测试用例,谁能告诉我如何实现第一个测试用例,以便更好地理解单元测试。在这里,我正在为平均值实现小程序:-

文件夹结构是:-

main.go
average(Folder)----> math_test.go

两个文件中的代码是:-

ma​​in.go

 package main

import "fmt"
import "testcases/average"

func main() {
xs := []float64{1,2,3,4}
avg := m.Average(xs)
fmt.Println(avg)
}

ma​​th_test.go

package math

import "testing"

func TestAverage(t *testing.T) {
var v float64
v = Average([]float64{1,2})
if v != 1.5 {
t.Error("Expected 1.5, got ", v)
}
}

ERROR:- go build testcases/average: no non-test Go files in /home/iron/go/src/testcases/average

帮助我我非常感谢你。

最佳答案

如@mkopriva 和@whitespace 所述,您必须使用 mainmath 更改包名称,并将它们放入示例中的同一文件夹中

主.go

package main


func Sum(x int, y int) int {
return x + y
}

func main() {
Sum(5, 5)
}

数学测试.go

package main

import "testing"

func TestSum(t *testing.T) {
total := Sum(5, 5)
if total != 10 {
t.Errorf("Sum was incorrect, got: %d, want: %d.", total, 10)
}
}

输出:-

PASS ok testcases 0.001s

还有一个基本的测试例子。

关于unit-testing - 如何使用golang实现单元测试程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51413947/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com