Rumah > Artikel > pembangunan bahagian belakang > Gabungan pengendalian ralat dan ujian unit fungsi golang
Pengendalian ralat dalam GoLang menggunakan jenis ralat untuk mewakili ralat, yang boleh dibuat melalui fmt.Errorf(). Pengujian unit menggunakan perpustakaan ujian untuk mengesahkan ketepatan fungsi dengan menulis kes ujian dan menegaskan sama ada keputusan yang dikembalikan adalah konsisten dengan jangkaan.
Pemadanan pengendalian ralat fungsi GoLang dan ujian unit
Pengendalian ralat
Mekanisme pengendalian ralat dalam GoLang adalah sangat mudah dan berkesan. Dengan menggunakan jenis error
kita boleh mewakili ralat dalam pelaksanaan fungsi. Mesej ralat boleh dibuat melalui fungsi fmt.Errorf()
. error
类型,我们可以表示函数执行中的错误。可以通过 fmt.Errorf()
函数创建错误信息。
package main import ( "fmt" ) func divide(a, b int) (int, error) { if b == 0 { return 0, fmt.Errorf("cannot divide by zero") } return a / b, nil } func main() { result, err := divide(10, 2) if err != nil { fmt.Println(err) } else { fmt.Println(result) } }
单元测试
单元测试对于验证函数的正确性至关重要。GoLang 提供了 testing
库,可以轻松编写和运行单元测试。
package main import ( "fmt" "testing" ) func TestDivide(t *testing.T) { type testCases struct { a int b int expected int expectedError error } cases := []testCases{ {10, 2, 5, nil}, {10, 0, 0, fmt.Errorf("cannot divide by zero")}, } for _, c := range cases { result, err := divide(c.a, c.b) if result != c.expected || err != c.expectedError { t.Errorf("Test failed for input (%d, %d) expected (%d, %s) but got (%d, %s)", c.a, c.b, c.expected, c.expectedError, result, err) } } }
在此示例中,我们创建了一个测试表,其中包含不同的测试用例。然后,我们对每个测试用例运行 divide
rrreee
Ujian Unit
🎜🎜Ujian unit adalah penting untuk mengesahkan ketepatan sesuatu fungsi. GoLang menyediakan perpustakaanujian
untuk menulis dan menjalankan ujian unit dengan mudah. 🎜rrreee🎜Dalam contoh ini, kami telah mencipta jadual ujian yang mengandungi kes ujian yang berbeza. Kami kemudian menjalankan fungsi divide
terhadap setiap kes ujian dan menegaskan bahawa nilai dan ralat yang dikembalikan sepadan dengan keputusan yang dijangkakan. 🎜🎜Dengan menggabungkan pengendalian ralat dengan ujian unit, kami boleh memastikan fungsi berfungsi seperti yang diharapkan di bawah pelbagai situasi input. 🎜Atas ialah kandungan terperinci Gabungan pengendalian ralat dan ujian unit fungsi golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!