发布网友 发布时间:2022-04-24 09:52
共1个回答
热心网友 时间:2022-06-18 17:45
JSON(JavascriptObjectNotation)是一种轻量级的数据交换语言,以文字为基础,且易于让人阅读。常应用于http通信和数据传输,应用如Apache开源搜索引擎ElasticSearch等。
JSON建构有两种结构:
1. “名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),记录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组(associative array)。
2.值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)。
* Linux C/C++单元测试和覆盖率统计参见:
即使对上面一无所知,先来分析一下的特点。
(二)测试需求分析
1. Web页面(即产品2)HTTP请求数据包(post/put)格式如:
POST 'http://home/cm_api' -d
'{"task":"login",
"token":"ae8737a0a9a2afb9bb12a49c4237744a82ea77049df67c9b58d7acc5c0c7527926f07dd201b6aa",
"id":"admin","password":“123456",
"clientver":"8.4"} '
POST 'http://home/cm_api' -d
'{"task":"startinfo",
"token":"ae8737a0a9a2af11077f40cf303d7406ec4d40b90b3a041b8a4edfd63d0fbe7926f07dd201b6aa"}'
2. Web Service(即产品1)响应数据包格式,除以下其余未知:
(1)格式错误,不响应;(http json协议层判定)
(2) token(每个用户每次登录时取得,唯一)错误或者连接、数据库等其他问题,响应 status: failure
(3)token正确,其他正确,响应 status: success
如:
{ "__EXEC_TIME" : "1 ms", "note" : "none",
"status" : "success",
"task" : "authenticate",
“token” : “ae8737a0a9a2afdb676eefe4e8e2b0e3abb07cd73cf0944e77d6c792b1aa7926f07dd201b6aa”}
--登录成功,响应 status: success,并取得token值
{ "note" : "Request is rejected e to invalid token. Please reconnect.",
"status" : "failure",
“task” : “startinfo”}
--token错误,响应 status: failure
3. 接口会扩展,增加或改变(数百个)。
4. 几乎所有接口有严格执行顺序(如顺序执行:login-> optimized->stopdb->logout),login成功获取该用户本次动态token,后面每个接口请求包使用此token。动态token,即测试数据和结果都不是固定的,故Fitnesse等一些接口测试工具难以实现。