I test in Go
01-08-2022
Piccolo tutorial su come preparare un test in Golang
GOLANG
01-08-2022
Piccolo tutorial su come preparare un test in Golang
Il file principale
File main.go
package main
import (
"errors"
"fmt"
)
func main() {
res, err := dividi(10.0, 5.0)
if err != nil {
panic(err)
}
fmt.Println(res)
}
func dividi(a, b float32) (float32, error) {
if b == 0 {
return 0, errors.New("impossibile dividere per zero")
}
return a / b, nil
}
Per eseguire il file main.go
go run .
Test
File main_test.go
package main
import "testing"
var tests = []struct {
name string
a float32
b float32
voluto float32
isErr bool
}{
{"valid", 12.0, 2.0, 6.0, false},
{"invalid", 10.0, 0.0, 0.0, true},
}
func TestDividi(t *testing.T) {
for _, tt := range tests {
voluto, err := dividi(tt.a, tt.b)
if (err != nil) != tt.isErr {
t.Errorf("%s: errore %v, errore voluto %v", tt.name, err, tt.isErr)
}
if voluto != tt.voluto {
t.Errorf("%s: %v, voluto %v", tt.name, voluto, tt.voluto)
}
}
}
Per eseguire i test
go test