ThingWorx Flow > ThingWorx Flow SDK > 测试连接器
测试连接器
test 命令
test 命令用于测试连接器构件。构件具有一些常用和特定的选项。测试命令将构件的类型作为子命令。test 命令具有以下命令:
命令
说明
flow test action <name>
测试名为 <name> 的操作。
flow test connection <name>
测试名为 <name> 的连接。
flow test lookup <name> <method>
在查找 <name> 中测试名为 <method> 的查找函数。
flow test oauth <name>
测试名为 <name> 的 OAuth。
flow test trigger <name> <method>
测试名为 <name> 的触发器。
test 命令具有以下选项:
选项
说明
数据类型
--version
显示版本号。
[布尔型]
--help
显示帮助。
[布尔型]
--timeout
操作超时。--timeout 选项以毫秒为单位指定超时 (默认为 30000 毫秒)。此选项可确保代码在指定的时间内完成,并且它会捕获错误,例如缺少调用回调。
[默认:30000]
--logLevel,-1
设置日志级别。
[默认:"info"]
ThingWorx Flow CLI 允许您先测试单个构件,之后再在服务器上 部署连接器。这有助于您检查您的构件在之前是否正常。
测试用例使用 mocha-cha 框架编写。Mocha 用于定义测试套件,chai 用作断言库。所有测试用例都在特定构件测试文件夹下的 testData 文件夹下定义。
test 命令允许测试 ThingWorx Flow CLI 中的构件。
要测试构件,请在命令提示符处执行以下命令:
1. cd <user project root directory>
2. flow test <artifactType> <name>
测试 OAuth 配置
OAuth 配置测试是通过浏览器完成的,因为每个 OAuth 提供工具都有一个不同的表单来接受用户凭据。CLI 在内部运行快速 Web 服务器,以处理在身份验证成功或不成功时 IdP 发送的响应。
要测试 Oauth 配置,请执行以下操作:
1. 在项目目录中,执行以下命令:
flow test oauth <oauth name>
成功登录后,将打开 OAuth 验证器浏览器窗口。有关详细信息,请参阅本教程中给出的示例。
2. 选择要进行测试的配置,然后单击“验证 OAuth 配置”或单击“退出”。
测试连接
要测试连接,请执行以下操作:
1. 在项目目录中,执行以下命令:
npm install
2. 在包中创建测试数据文件,并使用服务提供商信息填充其数据。
该文件包含用于 <projectDir>\test\testData 中的 test connectionTestData 的示例数据,如下面的代码所示。
module.exports = {
sampleInput : {
email : 'your-email-id-here',
subscription_id:'your-subscription-id',
account_url: 'your-account-url',
token: 'your-token'
},
sampleOutput : {
handle: {
email : 'your-email-id-here',
subscription_id:'your-subscription-id',
account_url: 'your-account-url',
token: 'your-token'
} }
}
3. 使用以下选项执行测试命令:
选项
说明
数据类型
--version
显示版本号。
[布尔型]
--help
显示帮助。
[布尔型]
--timeout
操作超时。--timeout 选项以毫秒为单位指定超时 (默认为 30000 毫秒)。此选项可确保代码在指定的时间内完成,并且它会捕获错误,例如缺少调用回调。
[默认:30000]
--logLevel,-1
设置日志级别。
[默认:"info"]
--artifactVersion,-v
要测试的构件版本。
NA
--projectDir,-d
项目的父项目录。
NA
--input,-i
输入变量的名称。
NA
--output,-o
预期输出变量的名称。
NA
--testDataFile,-f
testData 文件的路径。
NA
--save,-s
保存到用户的凭据存储。
NA
--noSchemaValidation,-n
禁用架构验证。
[默认:false]
如果 connectvalidate 方法均成功,则运行测试会生成输出。此命令还检查输入是否与输入架构匹配,以及输出是否与预期输出匹配。
测试查找
查找具有与其他构件不同的结构,并且不会以与其他构件相同的方式进行版本控制。名称本身就是版本。如果需要较新功能,则在查找 JavaScript 文件中创建具有新名称的新查找。使用以下命令:
flow test lookup <name> <method>
以下选项供您选择:
选项
说明
数据类型
--version
显示版本号。
[布尔型]
--help
显示帮助。
[布尔型]
--timeout
操作超时。--timeout 选项以毫秒为单位指定超时 (默认为 30000 毫秒)。此选项可确保代码在指定的时间内完成,并且它会捕获错误,例如缺少调用回调。
[默认:30000]
--logLevel,-1
设置日志级别。
[默认:"info"]
--projectDir,-d
项目的父项目录。
NA
--connection,-c
要插入的连接的 uid。
NA
--access_token,-a
预期输出变量的名称。
NA
--input,-i
testData 文件的路径。
NA
--output,-o
预期输出变量的名称。
NA
--testDataFile,-f
testData 文件的路径。
NA
--searchById
用于搜索的 ID。
NA
--searchByValue
用于搜索的值。
NA
--filter
用于搜索项的筛选器。
NA
“查找”具有两个搜索选项:searchByIdsearchByValue,以及下列三个关于编页的选项。
查找立即返回所有数据选项不需要操作。
应用程序查找代码调用 getNextPage API 并传递可以帮助 服务从下一页返回数据的自变量。当用户单击查找字段值列表中的“加载更多”选项时,此信息将传递到查找。
不支持编页应用程序查询数据以及查找服务截断数据,以仅显示当前页面和之前所有页面的记录。
测试操作
测试操作与测试查找类似。
要测试操作,请执行以下操作:
1. 在测试数据文件中写入示例输入和示例输出 JSON。有关输入和输出示例,请参阅 附录 B
2. 从项目目录中,使用以下选项执行测试命令:
选项
说明
数据类型
--version
显示版本号。
[布尔型]
--help
显示帮助。
[布尔型]
--timeout
操作超时。--timeout 选项以毫秒为单位指定超时 (默认为 30000 毫秒)。此选项可确保代码在指定的时间内完成,并且它会捕获错误,例如缺少调用回调。
[默认:30000]
--logLevel,-1
设置日志级别。
[默认:"info"]
--artifactVersion,-v
要测试的构件版本。
[默认:"v1"]
--connection,-c
要插入的连接的 uid。
NA
--access_token,-a
预期输出变量的名称。
NA
--projectDir,-d
项目的父项目录。
[默认:"."]
--input,-i
testData 文件的路径。
NA
--output,-o
预期输出变量的名称。
NA
--testDataFile,-f
testData 文件的路径。
NA
--noSchemaValidation,-n
禁用架构验证。
[默认:false]
测试触发器
测试触发器与测试操作、连接和查找稍有不同。您可以使用以下选项执行测试命令:
下表介绍了可用于测试触发器的各种选项。
选项
说明
数据类型
--version
显示版本号。
[布尔型]
--help
显示帮助。
[布尔型]
--timeout
操作超时。--timeout 选项以毫秒为单位指定超时 (默认为 30000 毫秒)。此选项可确保代码在指定的时间内完成,并且它会捕获错误,例如缺少调用回调。
[默认:30000]
--logLevel,-1
设置日志级别。
[默认:"info"]
--artifactVersion,-v
要测试的构件版本。
[默认:"v1"]
--connection,-c
要插入的连接的 uid。
NA
--access_token,-a
预期输出变量的名称。
NA
--projectDir,-d
项目的父项目录。
[默认:"."]
--input,-i
输入变量的名称。
NA
--output,-o
预期输出变量的名称。
NA
--testDataFile,-f
testData 文件的路径。
NA
--noSchemaValidation,-n
禁用架构验证。
[默认:false]
--polling,-p
指示此触发器为轮询触发器。
NA
--event,-e
要测试的事件。
NA
--mockData,-m
用于保存事件的模拟数据的变量名称。
NA
--interval,-t
设置触发间隔 (以秒为单位)。
[默认:15]
--stopAfter,-s
触发器的最大调用次数。
[默认:1]
必须指定您想要测试的方法。对于轮询触发器,方法为 executeactivate
有关测试各种构件的示例,请参阅。