
Avatar of rootulp

rootulp's solution

to Hello World in the Go Track

Published at May 30 2020 · 0 comments
Test suite



The objectives are simple:

  • Run the test suite and make sure that it succeeds.
  • Submit your solution and check it at the website.


Coding the solution

Look for a stub file having the name hello_world.go and place your solution code in that file.

Running the tests



go test -v --bench . --benchmem


Further information




Submitting Incomplete Solutions



package greeting

import "testing"

// Define a function named HelloWorld that takes no arguments,
// and returns a string.
// In other words, define a function with the following signature:
// HelloWorld() string

func TestHelloWorld(t *testing.T) {
	expected := "Hello, World!"
	if observed := HelloWorld(); observed != expected {
		t.Fatalf("HelloWorld() = %v, want %v", observed, expected)

// BenchmarkHelloWorld() is a benchmarking function. These functions follow the
// form `func BenchmarkXxx(*testing.B)` and can be used to test the performance
// of your implementation. They may not be present in every exercise, but when
// they are you can run them by including the `-bench` flag with the `go test`
// command, like so: `go test -v --bench . --benchmem`
// You will see output similar to the following:
// BenchmarkHelloWorld   	2000000000	         0.46 ns/op
// This means that the loop ran 2000000000 times at a speed of 0.46 ns per loop.
// While benchmarking can be useful to compare different iterations of the same
// exercise, keep in mind that others will run the same benchmarks on different
// machines, with different specs, so the results from these benchmark tests may
// vary.
func BenchmarkHelloWorld(b *testing.B) {
package greeting

// HelloWorld returns a string greeting.
func HelloWorld() string {
	return "Hello, World!"

Community comments


What can you learn from this solution?



  • What compromises have been made?