Go Testing: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 9: Line 9:


=Write a Unit Test=
=Write a Unit Test=
Also see [[Go_Packages#External_Test_Packages|external test packages]].


=TO DEPLETE=
=TO DEPLETE=

Revision as of 00:10, 14 September 2023

External

Internal

Overview

Go comes with a lightweight test framework that includes the go test command and the testing package. The tests live in *_test.go files.

Write a Unit Test

TO DEPLETE

Writing a Unit Test

  • Write a _test.go test file. They should belong to the same package as the tested code. These files are ignored by the compiler and only compiled and executed when go test is run.
  • Import "testing"
  • Tests are identified as functions starting with Test_... and taking an argument (t *testing.T).
package blue

import "testing"

func TestBlue(t *testing.T) {
    ...
    t.Error("expected this, got ", ...)
}

Then

go test

The command will look for any tests in any of the files in the current folder and run them.

TODO testing idiom "Introducing Go" page 96.