main.go 859 B

1234567891011121314151617181920212223242526272829303132333435
  1. package main
  2. import (
  3. "fmt"
  4. "strconv"
  5. )
  6. // add 是最简单的被测函数。本课只用较小整数,不讨论整数溢出。
  7. func add(a, b int) int {
  8. return a + b
  9. }
  10. // parseScore 将文本转换为成绩,失败时返回错误。
  11. func parseScore(text string) (int, error) {
  12. score, err := strconv.Atoi(text)
  13. if err != nil {
  14. return 0, err
  15. }
  16. if score < 0 || score > 100 {
  17. return 0, fmt.Errorf("成绩 %d 无效,应在 0~100 之间", score)
  18. }
  19. return score, nil
  20. }
  21. // main 只是正常程序示例。go test 不会调用这里的 main。
  22. func main() {
  23. fmt.Printf("2 + 3 = %d\n", add(2, 3))
  24. score, err := parseScore("85")
  25. if err != nil {
  26. fmt.Println("转换失败:", err)
  27. return
  28. }
  29. fmt.Printf("转换后的成绩:%d\n", score)
  30. fmt.Println("运行自动测试:go test -v ./lessons/14_testing(在仓库根目录执行)")
  31. }