Lab 10: Testing
Overview
Step 1: Basic Tests with testing.T
// calc/calc.go
package calc
func Add(a, b int) int { return a + b }
func Subtract(a, b int) int { return a - b }
func Multiply(a, b int) int { return a * b }// calc/calc_test.go
package calc
import "testing"
func TestAdd(t *testing.T) {
got := Add(2, 3)
want := 5
if got != want {
t.Errorf("Add(2, 3) = %d; want %d", got, want)
}
}
func TestSubtract(t *testing.T) {
if got := Subtract(10, 3); got != 7 {
t.Errorf("Subtract(10, 3) = %d; want 7", got)
}
}Step 2: Table-Driven Tests
Step 3: Subtests with t.Run
Step 4: Benchmarks
Step 5: Test Helpers
Step 6: httptest.NewRecorder — HTTP Handler Tests
Step 7: Coverage
Step 8: Capstone — Full Test Suite
Summary
Command
Purpose
Last updated
