我正在使用mocha和assert来测试Node js应用。
获取示例代码我在本地和gcloud中都成功部署了helloBackground函数
然后我尝试执行摩卡测试用例。
还尝试了各种方法来调用描述here的gcloud函数
然后在CMD中执行以下命令
functions call helloBackground --data '{\"name\": \"John\"}'
这应该返回“ Hello John!”在命令提示符下。
但我收到错误消息
错误:TypeError:无法读取未定义的属性“名称”
请让我知道如何在CMD中传递适当的数据进行测试。
谢谢。
答案 0 :(得分:1)
查看您的错误消息,这很可能是由您在部署应用程序时使用的trigger参数引起的。 apiVersion: v1
kind: Pod
metadata:
labels:
test: liveness
name: liveness-http
spec:
restartPolicy: Never
containers:
- args:
- /server
image: k8s.gcr.io/liveness
livenessProbe:
httpGet:
# when "host" is not defined, "PodIP" will be used
# host: my-host
# when "scheme" is not defined, "HTTP" scheme will be used. Only "HTTP" and "HTTPS" are allowed
# scheme: HTTPS
path: /healthz
port: 8080
httpHeaders:
- name: X-Custom-Header
value: Awesome
initialDelaySeconds: 15
timeoutSeconds: 1
name: liveness
函数是一个后台函数,应该使用后台函数触发器代替--trigger-http。
例如:helloBackground
您需要在应用的同一目录中创建一个空的.txt文件,并将其上传到Cloud Storage
$ gcloud functions deploy helloBackground --runtime nodejs6 --trigger-resource you_bucket_name --trigger-event google.storage.object.finalize
您可以再次运行该应用程序。
的详细记录的教程进行操作。