Test des fonctions Code Engine en local
IBM Cloud® Code Engine sont créées à partir d'extraits de code et les tester localement n'est donc pas aussi simple que de tester une application ou un travail localement. Une façon de tester les fonctions en local en créant un encapsuleur pour le fragment de code, puis en l'exécutant en local.
Pour tester votre code avec un encapsuleur, procédez comme suit.
- Créez un répertoire appelé
test-local. - Créez un sous-répertoire appelé
func. - Copiez votre code de fonction dans le sous-répertoire
func. - Copiez le code encapsuleur Python ou Node.js dans le répertoire parent.
- Créez un fichier de configuration sous forme d'objets JSON, similaire à ce qui est transmis par Code Engine à la fonction lorsqu'elle est appelée.
- Exécutez le code encapsuleur avec le fichier de configuration en tant que paramètre.
Vous pouvez utiliser les encapsuleurs suivants ou créer les vôtres.
Encapsuleur 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))
Encapsuleur 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)));