![[Learn Go with Tests] Integer](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FcM3TVq%2FbtsIDGKZ9Wr%2FAAAAAAAAAAAAAAAAAAAAAIJS4RdHnaIcHA24UTAx5aCYDbOCsvCAquEXUIVFjhix%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1759244399%26allow_ip%3D%26allow_referer%3D%26signature%3DyWgDvZSVsMSJKaPGdgy5fNBfyPo%253D)
[Learn Go with Tests] IntegerLanguage/Go2024. 7. 18. 00:46
Table of Contents
728x90
해당 포스팅은 Learn Go with Tests Gitbook을 따라 실습한 내용을 정리한 문서입니다.
테스트 코드 작성하기
package integers
import "testing"
func TestAdder(t *testing.T) {
sum := Add(2, 2)
expected := 4
if sum != expected {
t.Errorf("expected '%d' but got '%d'", expected, sum)
}
}
현재 상태에서 go test를 사용하게 되면 Add 함수가 없다는 오류가 발생한다. 이제부터 테스트를 실행할 수 있는 최소한의 코드를 작성한 뒤 결과에 대해 확인해보고자 한다.
package integers
func Add(a int, b int) int {
return 0
}
adder.go 파일을 다음과 같이 작성하고 테스트를 실행해보자
함수를 작성할 때 두개 이상의 같은 타입의 정수를 가진다면 (x int, y int)도 가능하지만 (x, y int)와 같이 간결하게 작성하는 방식 또한 가능하다.
다음과 같이 나온다. 테스트는 올바르게 틀린 내용에 대해서 나타내주고 있다.
제대로 코드를 a+b로 고쳐보자
package integers
func Add(a, b int) int {
return a + b
}
테스트를 실행하면 통과하게 된다.
리팩토링 하기
해당 내용에서는 리팩토링을 할 수 있는 내용이 크게 존재하지 않는다. 따라서, 반환인자의 이름을 개발자의 텍스트 편집이게서 추가하고자 한다.
adder_test.go에 다음과 같은 ExampleAdd 함수를 추가해보자
func ExampleAdd() {
sum := Add(1, 5)
fmt.Println(sum)
// Output: 6
}
728x90
'Language > Go' 카테고리의 다른 글
[Learn Go with Tests] 포인터 & 에러 (1) | 2024.07.24 |
---|---|
[Learn Go with Tests] 구조체, 메서드 & 인터페이스 (0) | 2024.07.18 |
[Learn Go with Tests] 슬라이스 및 배열 (0) | 2024.07.18 |
[Learn Go with Tests] Iteration (0) | 2024.07.18 |
[Learn Go with Tests] Hello World 및 테스트 실행 방법 (0) | 2024.07.18 |
@잉퓨_ :: 대학로에서 개발하기
보안 전공 개발자지만 대학로에서 살고 싶어요
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!