로컬로 Code Engine 함수 테스트

IBM Cloud® Code Engine 함수는 코드 스니펫에서 생성되므로 로컬에서 테스트하는 것은 앱이나 작업을 로컬에서 테스트하는 것만큼 간단하지 않습니다. 코드 스니펫에 대한 랩퍼를 작성한 후 로컬로 실행하여 로컬로 함수를 테스트할 수 있는 한 가지 방법입니다.

랩퍼를 사용하여 코드를 테스트하려면 다음 일반 단계를 따르십시오.

  1. test-local 이라는 디렉터리를 만듭니다.
  2. func 라는 서브디렉토리를 작성하십시오.
  3. 함수 코드를 func 서브디렉토리에 복사하십시오.
  4. Python 또는 Node.js 랩퍼 코드를 상위 디렉토리에 복사하십시오.
  5. Code Engine 가 함수가 호출될 때 에 전달하는 것과 유사한 JSON 오브젝트로 구성 파일을 작성하십시오.
  6. 구성 파일을 매개변수로 사용하여 랩퍼 코드를 실행하십시오.

다음 랩퍼를 사용하거나 직접 작성할 수 있습니다.

Python 랩퍼

# syntax: python wrapper.py params.json

# import the Code Engine function: func/__main__.py
from func.__main__ import main
import sys, json

if __name__ == "__main__":
    # open file, read JSON config
    with open(str(sys.argv[1])) as confFile:
        params=json.load(confFile)
    # invoke the Code Engine function and print the result
    print(main(params))

Node.js 랩퍼

// syntax: node wrapper.js params.json

// require the Code Engine function: func/main.js
var func=require('./func/main.js')

// read the file with function parameters
const fs = require("fs");
const data = fs.readFileSync(process.argv[2]);

// invoke the Code Engine function and log the result
console.log(func.main(JSON.parse(data)));