[go] Go 언어의 테스트 CI/CD 파이프라인

서론

소프트웨어를 안전하고 효율적으로 개발하려면 CI/CD (Continuous Integration / Continuous Delivery) 파이프라인을 설정해야 합니다. Go 언어의 테스트 CI/CD 파이프라인을 구축하는 방법을 알아보겠습니다.

Go 언어 테스트

Go 언어는 간결하고 빠른 실행 속도를 가지며, 테스트 작성을 쉽게 할 수 있는 강력한 기능을 제공합니다.
go test 명령어를 사용하여 간단하게 테스트를 실행할 수 있습니다.

package main

import "testing"

func TestAdd(t *testing.T) {
    result := Add(10, 5)
    if result != 15 {
        t.Errorf("Expected 15, got %d", result)
    }
}

CI/CD 파이프라인 설정

Go 언어 프로젝트의 CI/CD 파이프라인을 설정하려면 코드를 푸시할 때마다 자동으로 빌드 및 테스트를 수행하고, 배포 가능한 상태로 유지해야 합니다.

GitHub Actions를 이용한 설정

  1. .github/workflows/ci-cd.yml 파일을 생성합니다.
  2. 해당 파일에 테스트와 릴리스 단계를 정의합니다.
name: CI/CD Pipeline

on:
  push:
    branches: [ main ]

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
    - name: Set up Go
      uses: actions/setup-go@v2
      with:
        go-version: '1.16'

    - name: Check out code
      uses: actions/checkout@v2

    - name: Run tests
      run: go test ./...

    - name: Build and publish
      # Build and publish your project

완료

이제 Go 언어의 테스트 CI/CD 파이프라인을 설정하는 방법을 알아보았습니다. Go 언어의 강력한 기능과 CI/CD 파이프라인을 활용하여 소프트웨어를 안전하고 신속하게 개발하세요.

참고 자료