Rumah > Artikel > pembangunan bahagian belakang > Cara menulis ujian unit komprehensif untuk fungsi Go
Menulis ujian unit dalam Go membantu memastikan kualiti dan kebolehpercayaan kod. Ujian unit termasuk langkah-langkah seperti mengimport kebergantungan, menyediakan objek, menentukan input dan output, memanggil fungsi, dan menegaskan output. Dengan menggunakan fungsi assert dalam pakej ujian, anda boleh membandingkan output sebenar dengan output yang dijangkakan. Gunakan arahan go test untuk menjalankan ujian dan pastikan semua ujian lulus untuk memastikan ketepatan kod Go anda.
Menulis ujian unit dalam Go adalah penting untuk memastikan kualiti dan kebolehpercayaan kod. Ujian unit membolehkan anda mengasingkan dan menguji kelakuan satu fungsi atau kaedah untuk memastikan ia berfungsi seperti yang diharapkan.
Ujian unit biasa mengandungi bahagian berikut:
Mari kita buat fungsi Sum
dan tulis ujian unit untuknya: Sum
函数并为其编写一个单元测试:
package main import ( "testing" ) // Sum 返回两个数字之和 func Sum(a, b int) int { return a + b } func TestSum(t *testing.T) { // 设置测试表 tests := []struct { a, b int want int }{ {1, 2, 3}, {-1, 5, 4}, {0, -5, -5}, } // 遍历测试表,对每个测试用例运行测试 for _, tt := range tests { got := Sum(tt.a, tt.b) if got != tt.want { t.Errorf("Sum(%d, %d) = %d, want %d", tt.a, tt.b, got, tt.want) } } }
Go 提供了[testing
](https://golang.org/pkg/testing/) 包,其中包含各种断言函数,可用于比较实际输出和预期输出。一些常用的断言函数包括:
t.Fatal()
: 如果断言失败,则终止测试。t.Error()
: 报告一个失败,允许测试继续。t.Errorf()
: 报告一个带有格式化错误消息的失败。t.Equal()
: 比较两个值是否相等。t.NotEqual()
: 比较两个值是否不相等。使用 go test
go testPustaka assertionGo menyediakan [
t.Error()
: Laporkan kegagalan, membenarkan ujian diteruskan. 🎜🎜t.Errorf()
: Laporkan kegagalan dengan mesej ralat terformat. 🎜🎜t.NotEqual()
: Membandingkan sama ada dua nilai tidak sama. 🎜🎜🎜Jalankan ujian🎜🎜Jalankan ujian unit menggunakan perintah go test
: 🎜PASS ok main [no tests found]🎜Jika semua ujian lulus, anda akan melihat output berikut: 🎜rrreee🎜Dengan menulis ujian unit komprehensif, anda boleh memastikan ketepatan dan kebolehpercayaan kod Go, dengan itu meningkatkan kualiti dan kebolehselenggaraan aplikasi anda. 🎜
Atas ialah kandungan terperinci Cara menulis ujian unit komprehensif untuk fungsi Go. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!