{"text_format":"2","workbook":"xlsx","n_sheets":2,"sheets":["Sheet1","关键字说明"],"not_rendered":{"charts":0,"images":0,"macros":0,"external_links":0,"defined_names":0,"comments":0,"pivot_tables":0},"unopened":[],"bounds":{"document_bytes":16777216,"sheet_cells":100000,"run_cost":"one","rows_first":2000,"rows_last":500,"rows_between":2000,"halvings":0,"cell_chars":16384,"cell_head_chars":4096},"cells_cut":0,"cells_raw":0,"read":"whole","date_system":"1900"}

{"sheet":"Sheet1","index":0,"n_rows":63,"n_cols":12,"rows_kept":63,"cut":false,"hidden":false,"merged":[[1,0,6,0],[7,0,11,0],[12,0,16,0],[17,0,22,0],[23,0,27,0],[28,0,33,0],[34,0,38,0],[39,0,43,0],[44,0,49,0],[50,0,55,0],[56,0,58,0],[59,0,62,0],[1,1,6,1],[7,1,11,1],[12,1,16,1],[17,1,22,1],[23,1,27,1],[28,1,33,1],[34,1,38,1],[39,1,43,1],[44,1,49,1],[50,1,55,1],[56,1,58,1],[59,1,62,1],[1,2,6,2],[7,2,11,2],[12,2,16,2],[17,2,22,2],[23,2,27,2],[28,2,33,2],[34,2,38,2],[39,2,43,2],[44,2,49,2],[50,2,55,2],[56,2,58,2],[59,2,62,2],[1,3,6,3],[7,3,11,3],[12,3,16,3],[17,3,22,3],[23,3,27,3],[28,3,33,3],[34,3,38,3],[39,3,43,3],[44,3,49,3],[50,3,55,3],[56,3,58,3],[59,3,62,3],[1,4,6,4],[7,4,11,4],[12,4,16,4],[17,4,22,4],[23,4,27,4],[28,4,33,4],[34,4,38,4],[39,4,43,4],[44,4,49,4],[50,4,55,4],[56,4,58,4],[59,4,62,4]]}
["编号","进程类","测试用例标题","一级模块","二级模块","步骤","步骤描述","关键字","参数_1","参数_2","参数_3","参数_4"]
[1,"G2--P","能够正确登录用例","用户模块","登录模块",1,"发送Post请求","request_post_form_urlencoded","{{URL}}/user/login",null,null,"{\n \"username\": \"{{username}}\",\n \"password\": \"{{password}}\"\n}"]
[{"$nulls":5},2,"通过JSONPATH提取数据-MSG","ex_jsonData","$..msg",0,"msg_success"]
[{"$nulls":5},3,"通过JSONPATH提取数据-Code","ex_jsonData","$..code",0,"msg_code"]
[{"$nulls":5},4,"通过JSONPATH提取数据-TOKEN","ex_jsonData","$..token",null,"token"]
[{"$nulls":5},5,"断言-等于-响应MSG","assert_text_comparators","{{msg_success}}","SUCCESS","=="]
[{"$nulls":5},6,"断言-等于-CODE","assert_text_comparators","{{msg_code}}","\"200\"","=="]
[2,"G2--P","登录失败-手机号或密码错误用例","用户模块","登录模块",1,"发送Post请求","request_post_form_urlencoded","{{URL}}/user/login",null,null,"{\n \"username\": \"15096268001\",\n \"password\": \"1234562\"\n}"]
[{"$nulls":5},2,"通过JSONPATH提取数据-MSG","ex_jsonData","$..msg",0,"msg_success"]
[{"$nulls":5},3,"通过JSONPATH提取数据-Code","ex_jsonData","$..code",0,"msg_code"]
[{"$nulls":5},4,"断言-等于-响应MSG","assert_text_comparators","{{msg_success}}","手机号或密码错误！","=="]
[{"$nulls":5},5,"断言-等于-CODE","assert_text_comparators","{{msg_code}}","\"1004\"","=="]
[3,"G2--P","查看用户信息","用户模块","查看用户信息",1,"发送Get请求","request_get","{{URL}}/user/userInfo",null,"{\"Authorization\":\"{{token}}\"}"]
[{"$nulls":5},2,"通过JSONPATH提取数据-MSG","ex_jsonData","$..msg",0,"msg_success"]
[{"$nulls":5},3,"断言-等于-响应MSG","assert_text_comparators","{{msg_success}}","SUCCESS","=="]
[{"$nulls":5},4,"通过JSONPATH提取数据-MSG","ex_jsonData","$..username",0,"msg_username"]
[{"$nulls":5},5,"断言-等于-响应USERNAME","assert_text_comparators","{{msg_username}}","{{username}}","=="]
[4,"G2--P","修改头像-上传头像","用户模块","修改头像",1,"发送Post请求-上传图片","request_post_form_data","{{URL}}/file/picUpload","{\"file\":open(\"./files/20240725223321.png\",\"rb\")}"]
[{"$nulls":5},2,"通过JSONPATH提取数据-MSG","ex_jsonData","$..msg",0,"msg_success"]
[{"$nulls":5},3,"通过JSONPATH提取数据-Code","ex_jsonData","$..code",0,"msg_code"]
[{"$nulls":5},4,"断言-等于-响应MSG","assert_text_comparators","{{msg_success}}","SUCCESS","=="]
[{"$nulls":5},5,"断言-等于-CODE","assert_text_comparators","{{msg_code}}","\"200\"","=="]
[{"$nulls":5},6,"通过JSONPATH提取数据-图片路径","ex_jsonData","$..data",0,"msg_data"]
[5,"G2--P","修改头像-确定修改头像","用户模块","修改头像",1,"发送Post请求","request_post_form_urlencoded","{{URL}}/user/updateUserInfo",null,"{\"Authorization\":\"{{token}}\"}","{\n \"userPhoto\": \"{{msg_data}}\",\n}"]
[{"$nulls":5},2,"通过JSONPATH提取数据-MSG","ex_jsonData","$..msg",0,"msg_success"]
[{"$nulls":5},3,"通过JSONPATH提取数据-Code","ex_jsonData","$..code",0,"msg_code"]
[{"$nulls":5},4,"断言-等于-响应MSG","assert_text_comparators","{{msg_success}}","SUCCESS","=="]
[{"$nulls":5},5,"断言-等于-CODE","assert_text_comparators","{{msg_code}}","\"200\"","=="]
[6,"G2--P","我的书评-发布正常的书评(可能会失败)","我的书评","发布我的书评",1,"提取评价的书籍ID","ex_mysqlData","dsw_mysql","SELECT id FROM `book`  ORDER BY RAND() LIMIT 1","id"]
[{"$nulls":5},2,"发送Post请求","request_post_form_urlencoded","{{URL}}/book/addBookComment",null,"{\"Authorization\":\"{{token}}\"}","{\"bookId\":\"{{id_1}}\",\"commentContent\":\"hami的接口自动化\"}"]
[{"$nulls":5},3,"通过JSONPATH提取数据-MSG","ex_jsonData","$..msg",0,"msg_success"]
[{"$nulls":5},4,"通过JSONPATH提取数据-Code","ex_jsonData","$..code",0,"msg_code"]
[{"$nulls":5},5,"断言-等于-响应MSG","assert_text_comparators","{{msg_success}}","SUCCESS","=="]
[{"$nulls":5},6,"断言-等于-CODE","assert_text_comparators","{{msg_code}}","\"200\"","=="]
[7,"G2--P","我的书评-发布不存在的书籍ID（BUG）","我的书评","发布我的书评",1,"发送Post请求","request_post_form_urlencoded","{{URL}}/book/addBookComment",null,"{\"Authorization\":\"{{token}}\"}","{\"bookId\":\"\",\"commentContent\":\"hami的接口自动化\"}"]
[{"$nulls":5},2,"通过JSONPATH提取数据-MSG","ex_jsonData","$..msg",0,"msg_success"]
[{"$nulls":5},3,"通过JSONPATH提取数据-Code","ex_jsonData","$..code",0,"msg_code"]
[{"$nulls":5},4,"断言-等于-响应MSG","assert_text_comparators","{{msg_success}}","书籍ID不存在","=="]
[{"$nulls":5},5,"断言-等于-CODE","assert_text_comparators","{{msg_code}}","\"200\"","=="]
[8,"G2--P","我的书评-发布已评价的数据","我的书评","发布我的书评",1,"发送Post请求","request_post_form_urlencoded","{{URL}}/book/addBookComment",null,"{\"Authorization\":\"{{token}}\"}","{\"bookId\":118,\"commentContent\":\"hami的接口自动化\"}"]
[{"$nulls":5},2,"通过JSONPATH提取数据-MSG","ex_jsonData","$..msg",0,"msg_success"]
[{"$nulls":5},3,"通过JSONPATH提取数据-Code","ex_jsonData","$..code",0,"msg_code"]
[{"$nulls":5},4,"断言-等于-响应MSG","assert_text_comparators","{{msg_success}}","已评价过该书籍！","=="]
[{"$nulls":5},5,"断言-等于-CODE","assert_text_comparators","{{msg_code}}","\"3001\"","=="]
[9,"G2--P","我的书评-发布不满五个字的书评（BUG）","我的书评","发布我的书评",1,"提取评价的书籍ID","ex_mysqlData","dsw_mysql","SELECT id FROM `book`  ORDER BY RAND() LIMIT 1","id"]
[{"$nulls":5},2,"发送Post请求","request_post_form_urlencoded","{{URL}}/book/addBookComment",null,"{\"Authorization\":\"{{token}}\"}","{\"bookId\":\"{{id_1}}\",\"commentContent\":\"ham\"}"]
[{"$nulls":5},3,"通过JSONPATH提取数据-MSG","ex_jsonData","$..msg",0,"msg_success"]
[{"$nulls":5},4,"通过JSONPATH提取数据-Code","ex_jsonData","$..code",0,"msg_code"]
[{"$nulls":5},5,"断言-等于-响应MSG","assert_text_comparators","{{msg_success}}","SUCCESS","=="]
[{"$nulls":5},6,"断言-等于-CODE","assert_text_comparators","{{msg_code}}","\"200\"","=="]
[10,"G2--P","我的书评-发布超过200个字的书评","我的书评","发布我的书评",1,"提取评价的书籍ID","ex_mysqlData","dsw_mysql","SELECT id FROM `book`  ORDER BY RAND() LIMIT 1","id"]
[{"$nulls":5},2,"发送Post请求","request_post_form_urlencoded","{{URL}}/book/addBookComment",null,"{\"Authorization\":\"{{token}}\"}","{\"bookId\":\"{{id_1}}\",\"commentContent\":\"hamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhahamhamhamhamhamhamhamhamhamhamhamhamhamhamhamhamham\"}"]
[{"$nulls":5},3,"通过JSONPATH提取数据-MSG","ex_jsonData","$..msg",0,"msg_success"]
[{"$nulls":5},4,"通过JSONPATH提取数据-Code","ex_jsonData","$..code",0,"msg_code"]
[{"$nulls":5},5,"断言-等于-响应MSG","assert_text_comparators","{{msg_success}}","评价不能超过200字符！","=="]
[{"$nulls":5},6,"断言-等于-CODE","assert_text_comparators","{{msg_code}}","\"200\"","=="]
[11,"G2--P","点击榜单能够显示对应的数据","排行榜模块","点击榜单",1,"发送Get请求","request_get","{{URL}}/book/listClickRank"]
[{"$nulls":5},2,"通过JSONPATH提取数据-MSG","ex_jsonData","$..msg",null,"msg_success"]
[{"$nulls":5},3,"断言-等于-响应MSG","assert_text_comparators","{{msg_success}}","SUCCESS","=="]
[12,"G2--P","我的书评-发布正常的书评（优化-直接Josn断言）","我的书评","发布我的书评",1,"提取评价的书籍ID","ex_mysqlData","dsw_mysql","SELECT id FROM `book`  ORDER BY RAND() LIMIT 1","id"]
[{"$nulls":5},2,"发送Post请求","request_post_form_urlencoded","{{URL}}/book/addBookComment",null,"{\"Authorization\":\"{{token}}\"}","{\"bookId\":\"{{id_1}}\",\"commentContent\":\"hami的接口自动化\"}"]
[{"$nulls":5},3,"JSON断言-等于-响应MSG","assert_json_comparators","$..msg","SUCCESS","=="]
[{"$nulls":5},4,"JSON断言-等于-CODE","assert_json_comparators","$..code","\"200\"","=="]

{"sheet":"关键字说明","index":1,"n_rows":11,"n_cols":10,"rows_kept":11,"cut":false,"hidden":false,"merged":[[0,0,0,9],[1,1,1,9]]}
["注意：要和框架中的keywords.yaml一一对应"]
["关键字方法","参数 (没有就空着)"]
["request_post_form_urlencoded","URL","请求URL","PARAMS","URL参数，用于拼在URL的?后面参数","HEADERS","请求头，字典格式","DATA"]
["request_post_row_json","URL","请求URL","PARAMS","URL参数，用于拼在URL的?后面参数","HEADERS","请求头，字典格式","DATA","请求头，字典格式"]
["request_post_form_data","URL","请求URL","FILES","文件的路径，比如：{\"字段名\":open(\"文件路径\",\"rb\")}\n比如：{\"file\":open(\"./files/20240725223321.png\",\"rb\")}","PARAMS","URL参数，用于拼在URL的?后面参数","HEADERS","请求头，字典格式","DATA"]
["request_get","URL","请求URL","PARAMS","URL参数，用于拼在URL的?后面参数","HEADERS","请求头，字典格式"]
["ex_jsonData","EXVALUE","jsonpath表达式","INDEX","下标，默认0","VARNAME","提取之后存储的变量名，比如：usernmae"]
["ex_reData","EXVALUE","正则表达式","INDEX","下标，默认0","VARNAME","提取之后存储的变量名，比如：usernmae"]
["ex_mysqlData","数据库","存储在context中的数据库名称","SQL","对应的SQL","引用变量","和字段提取的变量名保持一致"]
["assert_text_comparators","VALUE","实际结果：某个文本或者是某个变量名","EXPECTED","期望结果","OP_STR","比较符，比如：=="]
["assert_json_comparators","VALUE","实际结果：jsonpath的表达式，比如：$..msg","EXPECTED","期望结果","OP_STR","比较符，比如：=="]