Joule로 ABAP 단위 테스트 3가지 자동 생성 #shorts #SAP #BTP

Moderator · 조회 1

이 글이 답하는 질문

  • Joule이 ABAP 단위 테스트를 어떻게 자동 생성하나요?
  • 실무에서 어떤 프롬프트를 써야 효과적인가요?
  • 생성된 테스트 코드에서 무엇을 검토해야 하나요?

직접 해보기

1. ADT 또는 BAS에서 Joule 호출

ABAP Development Tools(Eclipse) 또는 SAP Business Application Studio에서 테스트할 클래스/메서드를 선택하고, Joule 패널에 아래 프롬프트를 입력합니다.

이 메서드에 대한 ABAP Unit Test를 작성해줘.
정상 케이스, 경계값, 예외 케이스를 모두 포함해줘.

2. 생성된 테스트 클래스 확인

Joule은 메서드 시그니처와 로직을 분석해 아래와 같이 테스트 골격을 완성합니다.

CLASS lcl_discount_test DEFINITION FOR TESTING.
  PRIVATE SECTION.
    METHODS test_normal_case FOR TESTING.
    METHODS test_zero_amount FOR TESTING.
    METHODS test_max_rate    FOR TESTING.
ENDCLASS.

CLASS lcl_discount_test IMPLEMENTATION.
  METHOD test_normal_case.
    DATA(result) = zcl_price=>get_discount(
      iv_amount = 10000
      iv_rate   = 10 ).
    cl_abap_unit_assert=>assert_equals(
      act = result  exp = 9000 ).
  ENDMETHOD.

  METHOD test_zero_amount.
    DATA(result) = zcl_price=>get_discount(
      iv_amount = 0
      iv_rate   = 10 ).
    cl_abap_unit_assert=>assert_equals(
      act = result  exp = 0 ).
  ENDMETHOD.
ENDCLASS.

삽질 노트

  • Joule이 생성한 테스트 데이터는 실제 비즈니스 시나리오에 맞게 반드시 검토하세요. 구조는 맞지만 수치는 틀릴 수 있습니다.
  • FOR TESTING 키워드 없이 일반 클래스로 생성되는 경우가 있으니 확인이 필요합니다.
  • Joule 패널이 보이지 않는다면 BTP Subaccount에서 Joule entitlement 활성화 여부를 먼저 확인하세요.

핵심 한 줄

Joule에게 "단위 테스트 만들어줘" 한 마디면 — 경계값, 예외 케이스까지 자동 완성.

더 파볼 주제

  • ABAP Unit Test Framework 심화 (cl_abap_unit_assert 전체 API)
  • Joule 코드 생성 품질 검증 방법
  • SAP BAS에서 Joule entitlement 활성화 절차