golang 테스트 용례 작성 예시

1240 단어 golang
package goconvey

import (
	"errors"
)

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
}

func Division(a, b int) (int, error) {
	if b == 0 {
		return 0, errors.New("  0")
	}
	return a / b, nil
}

테스트 용례
  package goconvey
    
    import (
    	"testing"
    
    	. "github.com/smartystreets/goconvey/convey"
    )
    
    func TestAdd(t *testing.T) {
    	Convey(" ", t, func() {
    		So(Add(1, 2), ShouldEqual, 3)
    	})
    }
    
    func TestSubtract(t *testing.T) {
    	Convey(" ", t, func() {
    		So(Subtract(1, 2), ShouldEqual, -1)
    	})
    }
    
    func TestMultiply(t *testing.T) {
    	Convey(" ", t, func() {
    		So(Multiply(3, 2), ShouldEqual, 6)
    	})
    }
    
    func TestDivision(t *testing.T) {
    	Convey(" ", t, func() {
    
    		Convey("  0  ", func() {
    			num, err := Division(10, 2)
    			So(err, ShouldBeNil)
    			So(num, ShouldEqual, 5)
    		})
    
    		Convey("  0", func() {
    			_, err := Division(10, 0)
    			So(err, ShouldNotBeNil)
    		})
    	})
    }

좋은 웹페이지 즐겨찾기