作者 bianxinhua

add README

要显示太多修改。

为保证性能只显示 17 of 17+ 个文件。

@@ -5,5 +5,6 @@ @@ -5,5 +5,6 @@
5 #base_worth_url = https://suplus-worth-web-gateway-test.fjmaimaimai.com/ 5 #base_worth_url = https://suplus-worth-web-gateway-test.fjmaimaimai.com/
6 #base_manager_url= https://public-interface.fjmaimaimai.com/mmm-partnermg 6 #base_manager_url= https://public-interface.fjmaimaimai.com/mmm-partnermg
7 #base_manager_url=http://mmm-partnermg-test.fjmaimaimai.com/ 7 #base_manager_url=http://mmm-partnermg-test.fjmaimaimai.com/
8 -base_manager_url=https://public-interface-test.fjmaimaimai.com/partnermg/ 8 +#base_manager_url=https://public-interface-test.fjmaimaimai.com/partnermg/
  9 +base_manager_url=https://public-interface.fjmaimaimai.com/mmm-partnermg/
9 base_url = http://mmm-partner-test.fjmaimaimai.com/ 10 base_url = http://mmm-partner-test.fjmaimaimai.com/
@@ -2,32 +2,15 @@ @@ -2,32 +2,15 @@
2 <project version="4"> 2 <project version="4">
3 <component name="ChangeListManager"> 3 <component name="ChangeListManager">
4 <list default="true" id="d6814b48-28ec-40b6-bcea-dcd9b8613715" name="Default Changelist" comment=""> 4 <list default="true" id="d6814b48-28ec-40b6-bcea-dcd9b8613715" name="Default Changelist" comment="">
5 - <change afterPath="$PROJECT_DIR$/api/app_api/dividend/orders001.api.yml" afterDir="false" />  
6 - <change afterPath="$PROJECT_DIR$/api/app_api/dividend/orders002.api.yml" afterDir="false" />  
7 - <change afterPath="$PROJECT_DIR$/api/app_api/order/details_api.yml" afterDir="false" />  
8 - <change afterPath="$PROJECT_DIR$/api/app_api/order/list_api.yml" afterDir="false" />  
9 - <change afterPath="$PROJECT_DIR$/testcases/dividend/dividend_orders001_testcases.yml" afterDir="false" />  
10 - <change afterPath="$PROJECT_DIR$/testcases/dividend/dividend_orders002_testcases.yml" afterDir="false" />  
11 - <change afterPath="$PROJECT_DIR$/testcases/order/order_details_testcases.yml" afterDir="false" />  
12 - <change afterPath="$PROJECT_DIR$/testcases/order/order_list_testcases.yml" afterDir="false" /> 5 + <change beforePath="$PROJECT_DIR$/.env" beforeDir="false" afterPath="$PROJECT_DIR$/.env" afterDir="false" />
13 <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" /> 6 <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
14 - <change beforePath="$PROJECT_DIR$/api/app_api/order/intentions_api.yml" beforeDir="false" />  
15 - <change beforePath="$PROJECT_DIR$/api/app_api/order/list_0_api.yml" beforeDir="false" />  
16 - <change beforePath="$PROJECT_DIR$/api/app_api/order/list_1_api.yml" beforeDir="false" />  
17 - <change beforePath="$PROJECT_DIR$/api/app_api/order/list_2_api.yml" beforeDir="false" />  
18 - <change beforePath="$PROJECT_DIR$/api/app_api/order/statistics_api.yml" beforeDir="false" afterPath="$PROJECT_DIR$/api/app_api/order/statistics_api.yml" afterDir="false" /> 7 + <change beforePath="$PROJECT_DIR$/api/m_api/actual/m_add_order_actual_api.yml" beforeDir="false" afterPath="$PROJECT_DIR$/api/m_api/actual/m_add_order_actual_api.yml" afterDir="false" />
19 <change beforePath="$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_add_api.yml" beforeDir="false" afterPath="$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_add_api.yml" afterDir="false" /> 8 <change beforePath="$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_add_api.yml" beforeDir="false" afterPath="$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_add_api.yml" afterDir="false" />
20 - <change beforePath="$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_convert_api.yml" beforeDir="false" afterPath="$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_sendout_api.yml" afterDir="false" />  
21 - <change beforePath="$PROJECT_DIR$/debugtalk.py" beforeDir="false" afterPath="$PROJECT_DIR$/debugtalk.py" afterDir="false" /> 9 + <change beforePath="$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_edit_api.yml" beforeDir="false" afterPath="$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_edit_api.yml" afterDir="false" />
  10 + <change beforePath="$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_sendout_api.yml" beforeDir="false" afterPath="$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_sendout_api.yml" afterDir="false" />
  11 + <change beforePath="$PROJECT_DIR$/config/m_accessToken.csv" beforeDir="false" afterPath="$PROJECT_DIR$/config/m_accessToken.csv" afterDir="false" />
22 <change beforePath="$PROJECT_DIR$/helpfunc/pg_app_db_func.py" beforeDir="false" afterPath="$PROJECT_DIR$/helpfunc/pg_app_db_func.py" afterDir="false" /> 12 <change beforePath="$PROJECT_DIR$/helpfunc/pg_app_db_func.py" beforeDir="false" afterPath="$PROJECT_DIR$/helpfunc/pg_app_db_func.py" afterDir="false" />
23 - <change beforePath="$PROJECT_DIR$/testcases/login_testcases.yml" beforeDir="false" afterPath="$PROJECT_DIR$/testcases/login_testcases.yml" afterDir="false" />  
24 - <change beforePath="$PROJECT_DIR$/testcases/order/order_intentions_testcases.yml" beforeDir="false" />  
25 - <change beforePath="$PROJECT_DIR$/testcases/order/order_list_0_testcases.yml" beforeDir="false" />  
26 - <change beforePath="$PROJECT_DIR$/testcases/order/order_list_1_testcases.yml" beforeDir="false" />  
27 - <change beforePath="$PROJECT_DIR$/testcases/order/order_list_2_testcases.yml" beforeDir="false" />  
28 - <change beforePath="$PROJECT_DIR$/testcases/order/order_statistics_testcases.yml" beforeDir="false" afterPath="$PROJECT_DIR$/testcases/order/order_statistics_testcases.yml" afterDir="false" />  
29 - <change beforePath="$PROJECT_DIR$/testcases/purpose/PURPOSE005_purpose_convert_testcases.yml" beforeDir="false" afterPath="$PROJECT_DIR$/testcases/purpose/PURPOSE005_purpose_sendout_testcases.yml" afterDir="false" />  
30 - <change beforePath="$PROJECT_DIR$/testcases_excel/partner_api.xlsx" beforeDir="false" afterPath="$PROJECT_DIR$/testcases_excel/partner_api.xlsx" afterDir="false" /> 13 + <change beforePath="$PROJECT_DIR$/helpfunc/pg_db_func.py" beforeDir="false" afterPath="$PROJECT_DIR$/helpfunc/pg_db_func.py" afterDir="false" />
31 <change beforePath="$PROJECT_DIR$/testsuites/partner_testsuite.yml" beforeDir="false" afterPath="$PROJECT_DIR$/testsuites/partner_testsuite.yml" afterDir="false" /> 14 <change beforePath="$PROJECT_DIR$/testsuites/partner_testsuite.yml" beforeDir="false" afterPath="$PROJECT_DIR$/testsuites/partner_testsuite.yml" afterDir="false" />
32 </list> 15 </list>
33 <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" /> 16 <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
@@ -38,35 +21,65 @@ @@ -38,35 +21,65 @@
38 </component> 21 </component>
39 <component name="CoverageDataManager"> 22 <component name="CoverageDataManager">
40 <SUITE FILE_PATH="coverage/partner_api$debugtalk.coverage" NAME="debugtalk Coverage Results" MODIFIED="1595408122991" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" /> 23 <SUITE FILE_PATH="coverage/partner_api$debugtalk.coverage" NAME="debugtalk Coverage Results" MODIFIED="1595408122991" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" />
41 - <SUITE FILE_PATH="coverage/partner_api$pg_app_db_func.coverage" NAME="pg_app_db_func Coverage Results" MODIFIED="1595408745035" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/helpfunc" /> 24 + <SUITE FILE_PATH="coverage/partner_api$pg_app_db_func.coverage" NAME="pg_app_db_func Coverage Results" MODIFIED="1596509191478" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/helpfunc" />
42 <SUITE FILE_PATH="coverage/partner_api$db_pg_func.coverage" NAME="db_pg_func Coverage Results" MODIFIED="1594485069390" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/helpfunc" /> 25 <SUITE FILE_PATH="coverage/partner_api$db_pg_func.coverage" NAME="db_pg_func Coverage Results" MODIFIED="1594485069390" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/helpfunc" />
43 - <SUITE FILE_PATH="coverage/partner_api$pg_db_func.coverage" NAME="pg_db_func Coverage Results" MODIFIED="1594826376790" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/helpfunc" /> 26 + <SUITE FILE_PATH="coverage/partner_api$pg_db_func.coverage" NAME="pg_db_func Coverage Results" MODIFIED="1596181551908" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/helpfunc" />
44 </component> 27 </component>
45 <component name="FileEditorManager"> 28 <component name="FileEditorManager">
46 <leaf SIDE_TABS_SIZE_LIMIT_KEY="300"> 29 <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
47 - <file pinned="false" current-in-tab="true"> 30 + <file pinned="false" current-in-tab="false">
48 <entry file="file://$PROJECT_DIR$/testsuites/partner_testsuite.yml"> 31 <entry file="file://$PROJECT_DIR$/testsuites/partner_testsuite.yml">
49 <provider selected="true" editor-type-id="text-editor"> 32 <provider selected="true" editor-type-id="text-editor">
50 - <state relative-caret-position="141">  
51 - <caret line="80" column="73" selection-start-line="80" selection-start-column="73" selection-end-line="80" selection-end-column="73" /> 33 + <state relative-caret-position="1496">
  34 + <caret line="68" column="40" selection-start-line="68" selection-start-column="40" selection-end-line="68" selection-end-column="40" />
52 </state> 35 </state>
53 </provider> 36 </provider>
54 </entry> 37 </entry>
55 </file> 38 </file>
56 - <file pinned="false" current-in-tab="false"> 39 + <file pinned="false" current-in-tab="true">
57 <entry file="file://$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_add_api.yml"> 40 <entry file="file://$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_add_api.yml">
58 <provider selected="true" editor-type-id="text-editor"> 41 <provider selected="true" editor-type-id="text-editor">
59 - <state relative-caret-position="374">  
60 - <caret line="17" column="29" selection-start-line="17" selection-start-column="29" selection-end-line="17" selection-end-column="29" /> 42 + <state relative-caret-position="242">
  43 + <caret line="20" column="23" selection-start-line="20" selection-start-column="23" selection-end-line="20" selection-end-column="23" />
  44 + </state>
  45 + </provider>
  46 + </entry>
  47 + </file>
  48 + <file pinned="false" current-in-tab="false">
  49 + <entry file="file://$PROJECT_DIR$/.env">
  50 + <provider selected="true" editor-type-id="text-editor">
  51 + <state relative-caret-position="176">
  52 + <caret line="8" column="71" selection-start-line="8" selection-start-column="71" selection-end-line="8" selection-end-column="71" />
  53 + </state>
  54 + </provider>
  55 + </entry>
  56 + </file>
  57 + <file pinned="false" current-in-tab="false">
  58 + <entry file="file://$PROJECT_DIR$/api/m_api/actual/m_add_order_actual_api.yml">
  59 + <provider selected="true" editor-type-id="text-editor">
  60 + <state relative-caret-position="308">
  61 + <caret line="14" column="19" selection-start-line="14" selection-start-column="19" selection-end-line="14" selection-end-column="19" />
  62 + </state>
  63 + </provider>
  64 + </entry>
  65 + </file>
  66 + <file pinned="false" current-in-tab="false">
  67 + <entry file="file://$PROJECT_DIR$/helpfunc/pg_app_db_func.py">
  68 + <provider selected="true" editor-type-id="text-editor">
  69 + <state relative-caret-position="1650">
  70 + <caret line="77" column="34" selection-start-line="77" selection-start-column="4" selection-end-line="77" selection-end-column="34" />
  71 + <folding>
  72 + <element signature="e#108#123#0" expanded="true" />
  73 + </folding>
61 </state> 74 </state>
62 </provider> 75 </provider>
63 </entry> 76 </entry>
64 </file> 77 </file>
65 <file pinned="false" current-in-tab="false"> 78 <file pinned="false" current-in-tab="false">
66 - <entry file="file://$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_sendout_api.yml"> 79 + <entry file="file://$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_edit_api.yml">
67 <provider selected="true" editor-type-id="text-editor"> 80 <provider selected="true" editor-type-id="text-editor">
68 - <state relative-caret-position="550">  
69 - <caret line="25" column="26" lean-forward="true" selection-start-line="25" selection-start-column="26" selection-end-line="25" selection-end-column="33" /> 81 + <state relative-caret-position="704">
  82 + <caret line="32" column="12" selection-start-line="32" selection-start-column="12" selection-end-line="32" selection-end-column="12" />
70 </state> 83 </state>
71 </provider> 84 </provider>
72 </entry> 85 </entry>
@@ -98,6 +111,10 @@ @@ -98,6 +111,10 @@
98 <find>cumulativeMoney</find> 111 <find>cumulativeMoney</find>
99 <find>todayIntentionMoney</find> 112 <find>todayIntentionMoney</find>
100 <find>todayIntentionQuantity</find> 113 <find>todayIntentionQuantity</find>
  114 + <find>get_purpose_address_from_database</find>
  115 + <find>get_purpose_id_from_database</find>
  116 + <find>buyerPhone</find>
  117 + <find>get_partner_id_from_database</find>
101 </findStrings> 118 </findStrings>
102 </component> 119 </component>
103 <component name="Git.Settings"> 120 <component name="Git.Settings">
@@ -113,7 +130,6 @@ @@ -113,7 +130,6 @@
113 <option value="$PROJECT_DIR$/api/m_api/actual/m_order_actual_searchText_list_api.yml" /> 130 <option value="$PROJECT_DIR$/api/m_api/actual/m_order_actual_searchText_list_api.yml" />
114 <option value="$PROJECT_DIR$/api/m_api/actual/m_order_actual_detail_api.yml" /> 131 <option value="$PROJECT_DIR$/api/m_api/actual/m_order_actual_detail_api.yml" />
115 <option value="$PROJECT_DIR$/testcases/purpose/PURPOSE002_edit_purpose_testcases.yml" /> 132 <option value="$PROJECT_DIR$/testcases/purpose/PURPOSE002_edit_purpose_testcases.yml" />
116 - <option value="$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_edit_api.yml" />  
117 <option value="$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_partner_list_api.yml" /> 133 <option value="$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_partner_list_api.yml" />
118 <option value="$PROJECT_DIR$/testcases/purpose/PURPOSE003_purpose_list_testcases.yml" /> 134 <option value="$PROJECT_DIR$/testcases/purpose/PURPOSE003_purpose_list_testcases.yml" />
119 <option value="$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_searchText_list_api.yml" /> 135 <option value="$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_searchText_list_api.yml" />
@@ -122,10 +138,8 @@ @@ -122,10 +138,8 @@
122 <option value="$PROJECT_DIR$/testcases/purpose/PURPOSE006_actual_detail_testcases.yml" /> 138 <option value="$PROJECT_DIR$/testcases/purpose/PURPOSE006_actual_detail_testcases.yml" />
123 <option value="$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_detail_api.yml" /> 139 <option value="$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_detail_api.yml" />
124 <option value="$PROJECT_DIR$/testcases/purpose/PURPOSE006_purpose_detail_testcases.yml" /> 140 <option value="$PROJECT_DIR$/testcases/purpose/PURPOSE006_purpose_detail_testcases.yml" />
125 - <option value="$PROJECT_DIR$/.env" />  
126 <option value="$PROJECT_DIR$/api/app_api/login/login_api.yml" /> 141 <option value="$PROJECT_DIR$/api/app_api/login/login_api.yml" />
127 <option value="$PROJECT_DIR$/api/app_api/login/accessToken_api.yml" /> 142 <option value="$PROJECT_DIR$/api/app_api/login/accessToken_api.yml" />
128 - <option value="$PROJECT_DIR$/helpfunc/pg_db_func.py" />  
129 <option value="$PROJECT_DIR$/testcases/order/order_list_0_testcases.yml" /> 143 <option value="$PROJECT_DIR$/testcases/order/order_list_0_testcases.yml" />
130 <option value="$PROJECT_DIR$/testcases/order/order_list_1_testcases.yml" /> 144 <option value="$PROJECT_DIR$/testcases/order/order_list_1_testcases.yml" />
131 <option value="$PROJECT_DIR$/testcases/actual/ACTUAL001_add_actual_testcases.yml" /> 145 <option value="$PROJECT_DIR$/testcases/actual/ACTUAL001_add_actual_testcases.yml" />
@@ -135,7 +149,6 @@ @@ -135,7 +149,6 @@
135 <option value="$PROJECT_DIR$/testcases/order/order_list_2_testcases.yml" /> 149 <option value="$PROJECT_DIR$/testcases/order/order_list_2_testcases.yml" />
136 <option value="$PROJECT_DIR$/api/app_api/order/intentions_api.yml" /> 150 <option value="$PROJECT_DIR$/api/app_api/order/intentions_api.yml" />
137 <option value="$PROJECT_DIR$/testcases/order/order_intentions_testcases.yml" /> 151 <option value="$PROJECT_DIR$/testcases/order/order_intentions_testcases.yml" />
138 - <option value="$PROJECT_DIR$/api/m_api/actual/m_add_order_actual_api.yml" />  
139 <option value="$PROJECT_DIR$/testcases/dividend/dividend_statistics_testcases.yml" /> 152 <option value="$PROJECT_DIR$/testcases/dividend/dividend_statistics_testcases.yml" />
140 <option value="$PROJECT_DIR$/api/app_api/dividend/statistics_api.yml" /> 153 <option value="$PROJECT_DIR$/api/app_api/dividend/statistics_api.yml" />
141 <option value="$PROJECT_DIR$/debugtalk.py" /> 154 <option value="$PROJECT_DIR$/debugtalk.py" />
@@ -148,15 +161,19 @@ @@ -148,15 +161,19 @@
148 <option value="$PROJECT_DIR$/api/app_api/dividend/orders002.api.yml" /> 161 <option value="$PROJECT_DIR$/api/app_api/dividend/orders002.api.yml" />
149 <option value="$PROJECT_DIR$/testcases/dividend/dividend_orders001_testcases.yml" /> 162 <option value="$PROJECT_DIR$/testcases/dividend/dividend_orders001_testcases.yml" />
150 <option value="$PROJECT_DIR$/testcases/dividend/dividend_orders002_testcases.yml" /> 163 <option value="$PROJECT_DIR$/testcases/dividend/dividend_orders002_testcases.yml" />
151 - <option value="$PROJECT_DIR$/helpfunc/pg_app_db_func.py" />  
152 <option value="$PROJECT_DIR$/testcases/order/order_statistics_testcases.yml" /> 164 <option value="$PROJECT_DIR$/testcases/order/order_statistics_testcases.yml" />
153 <option value="$PROJECT_DIR$/api/app_api/order/statistics_api.yml" /> 165 <option value="$PROJECT_DIR$/api/app_api/order/statistics_api.yml" />
154 <option value="$PROJECT_DIR$/api/app_api/order/list_api.yml" /> 166 <option value="$PROJECT_DIR$/api/app_api/order/list_api.yml" />
155 <option value="$PROJECT_DIR$/testcases/order/order_list_testcases.yml" /> 167 <option value="$PROJECT_DIR$/testcases/order/order_list_testcases.yml" />
156 - <option value="$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_add_api.yml" />  
157 <option value="$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_convert_api.yml" /> 168 <option value="$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_convert_api.yml" />
158 <option value="$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_sendout_api.yml" /> 169 <option value="$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_sendout_api.yml" />
  170 + <option value="$PROJECT_DIR$/helpfunc/pg_db_func.py" />
  171 + <option value="$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_edit_api.yml" />
  172 + <option value="$PROJECT_DIR$/helpfunc/pg_app_db_func.py" />
  173 + <option value="$PROJECT_DIR$/api/m_api/actual/m_add_order_actual_api.yml" />
159 <option value="$PROJECT_DIR$/testsuites/partner_testsuite.yml" /> 174 <option value="$PROJECT_DIR$/testsuites/partner_testsuite.yml" />
  175 + <option value="$PROJECT_DIR$/.env" />
  176 + <option value="$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_add_api.yml" />
160 </list> 177 </list>
161 </option> 178 </option>
162 </component> 179 </component>
@@ -171,7 +188,6 @@ @@ -171,7 +188,6 @@
171 <foldersAlwaysOnTop value="true" /> 188 <foldersAlwaysOnTop value="true" />
172 </navigator> 189 </navigator>
173 <panes> 190 <panes>
174 - <pane id="Scope" />  
175 <pane id="ProjectPane"> 191 <pane id="ProjectPane">
176 <subPane> 192 <subPane>
177 <expand> 193 <expand>
@@ -195,6 +211,13 @@ @@ -195,6 +211,13 @@
195 <item name="partner_api" type="462c0819:PsiDirectoryNode" /> 211 <item name="partner_api" type="462c0819:PsiDirectoryNode" />
196 <item name="api" type="462c0819:PsiDirectoryNode" /> 212 <item name="api" type="462c0819:PsiDirectoryNode" />
197 <item name="m_api" type="462c0819:PsiDirectoryNode" /> 213 <item name="m_api" type="462c0819:PsiDirectoryNode" />
  214 + <item name="actual" type="462c0819:PsiDirectoryNode" />
  215 + </path>
  216 + <path>
  217 + <item name="partner_api" type="b2602c69:ProjectViewProjectNode" />
  218 + <item name="partner_api" type="462c0819:PsiDirectoryNode" />
  219 + <item name="api" type="462c0819:PsiDirectoryNode" />
  220 + <item name="m_api" type="462c0819:PsiDirectoryNode" />
198 <item name="purpose" type="462c0819:PsiDirectoryNode" /> 221 <item name="purpose" type="462c0819:PsiDirectoryNode" />
199 </path> 222 </path>
200 <path> 223 <path>
@@ -218,10 +241,16 @@ @@ -218,10 +241,16 @@
218 <item name="partner_api" type="462c0819:PsiDirectoryNode" /> 241 <item name="partner_api" type="462c0819:PsiDirectoryNode" />
219 <item name="testsuites" type="462c0819:PsiDirectoryNode" /> 242 <item name="testsuites" type="462c0819:PsiDirectoryNode" />
220 </path> 243 </path>
  244 + <path>
  245 + <item name="partner_api" type="b2602c69:ProjectViewProjectNode" />
  246 + <item name="partner_api" type="462c0819:PsiDirectoryNode" />
  247 + <item name="venv" type="462c0819:PsiDirectoryNode" />
  248 + </path>
221 </expand> 249 </expand>
222 <select /> 250 <select />
223 </subPane> 251 </subPane>
224 </pane> 252 </pane>
  253 + <pane id="Scope" />
225 </panes> 254 </panes>
226 </component> 255 </component>
227 <component name="PropertiesComponent"> 256 <component name="PropertiesComponent">
@@ -348,8 +377,8 @@ @@ -348,8 +377,8 @@
348 <recent_temporary> 377 <recent_temporary>
349 <list> 378 <list>
350 <item itemvalue="Python.pg_app_db_func" /> 379 <item itemvalue="Python.pg_app_db_func" />
351 - <item itemvalue="Python.debugtalk" />  
352 <item itemvalue="Python.pg_db_func" /> 380 <item itemvalue="Python.pg_db_func" />
  381 + <item itemvalue="Python.debugtalk" />
353 <item itemvalue="Python.db_pg_func" /> 382 <item itemvalue="Python.db_pg_func" />
354 </list> 383 </list>
355 </recent_temporary> 384 </recent_temporary>
@@ -389,20 +418,28 @@ @@ -389,20 +418,28 @@
389 <workItem from="1595917894201" duration="630000" /> 418 <workItem from="1595917894201" duration="630000" />
390 <workItem from="1596008414671" duration="1359000" /> 419 <workItem from="1596008414671" duration="1359000" />
391 <workItem from="1596076314159" duration="9748000" /> 420 <workItem from="1596076314159" duration="9748000" />
  421 + <workItem from="1596162441532" duration="9816000" />
  422 + <workItem from="1596355169634" duration="1170000" />
  423 + <workItem from="1596418719909" duration="7886000" />
  424 + <workItem from="1596508636184" duration="5379000" />
  425 + <workItem from="1596596271220" duration="10607000" />
  426 + <workItem from="1596678833734" duration="2504000" />
  427 + <workItem from="1596805266484" duration="1392000" />
  428 + <workItem from="1596899522553" duration="58000" />
392 </task> 429 </task>
393 <servers /> 430 <servers />
394 </component> 431 </component>
395 <component name="TimeTrackingManager"> 432 <component name="TimeTrackingManager">
396 - <option name="totallyTimeSpent" value="139276000" /> 433 + <option name="totallyTimeSpent" value="178088000" />
397 </component> 434 </component>
398 <component name="ToolWindowManager"> 435 <component name="ToolWindowManager">
399 <frame x="-8" y="-8" width="1382" height="744" extended-state="6" /> 436 <frame x="-8" y="-8" width="1382" height="744" extended-state="6" />
400 <layout> 437 <layout>
401 <window_info id="Favorites" order="0" side_tool="true" /> 438 <window_info id="Favorites" order="0" side_tool="true" />
402 - <window_info active="true" content_ui="combo" id="Project" order="1" visible="true" weight="0.2624811" /> 439 + <window_info content_ui="combo" id="Project" order="1" visible="true" weight="0.2965204" />
403 <window_info id="Structure" order="2" side_tool="true" weight="0.25" /> 440 <window_info id="Structure" order="2" side_tool="true" weight="0.25" />
404 <window_info anchor="bottom" id="Docker" order="0" show_stripe_button="false" /> 441 <window_info anchor="bottom" id="Docker" order="0" show_stripe_button="false" />
405 - <window_info anchor="bottom" id="Terminal" order="1" weight="0.28960818" /> 442 + <window_info active="true" anchor="bottom" id="Terminal" order="1" visible="true" weight="0.28620103" />
406 <window_info anchor="bottom" id="Message" order="2" /> 443 <window_info anchor="bottom" id="Message" order="2" />
407 <window_info anchor="bottom" id="Event Log" order="3" side_tool="true" /> 444 <window_info anchor="bottom" id="Event Log" order="3" side_tool="true" />
408 <window_info anchor="bottom" id="Find" order="4" weight="0.32879046" /> 445 <window_info anchor="bottom" id="Find" order="4" weight="0.32879046" />
@@ -432,13 +469,6 @@ @@ -432,13 +469,6 @@
432 </state> 469 </state>
433 </provider> 470 </provider>
434 </entry> 471 </entry>
435 - <entry file="file://$PROJECT_DIR$/testcases/purpose/PURPOSE002_edit_purpose_testcases.yml">  
436 - <provider selected="true" editor-type-id="text-editor">  
437 - <state relative-caret-position="154">  
438 - <caret line="13" column="56" selection-start-line="13" selection-start-column="56" selection-end-line="13" selection-end-column="56" />  
439 - </state>  
440 - </provider>  
441 - </entry>  
442 <entry file="file://$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_partner_list_api.yml"> 472 <entry file="file://$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_partner_list_api.yml">
443 <provider selected="true" editor-type-id="text-editor"> 473 <provider selected="true" editor-type-id="text-editor">
444 <state> 474 <state>
@@ -467,13 +497,6 @@ @@ -467,13 +497,6 @@
467 </state> 497 </state>
468 </provider> 498 </provider>
469 </entry> 499 </entry>
470 - <entry file="file://$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_edit_api.yml">  
471 - <provider selected="true" editor-type-id="text-editor">  
472 - <state relative-caret-position="246">  
473 - <caret line="34" lean-forward="true" selection-start-line="2" selection-end-line="34" />  
474 - </state>  
475 - </provider>  
476 - </entry>  
477 <entry file="file://$PROJECT_DIR$/testcases/purpose/PURPOSE005_purpose_sendout_testcases.yml"> 500 <entry file="file://$PROJECT_DIR$/testcases/purpose/PURPOSE005_purpose_sendout_testcases.yml">
478 <provider selected="true" editor-type-id="text-editor"> 501 <provider selected="true" editor-type-id="text-editor">
479 <state relative-caret-position="66"> 502 <state relative-caret-position="66">
@@ -495,13 +518,6 @@ @@ -495,13 +518,6 @@
495 </state> 518 </state>
496 </provider> 519 </provider>
497 </entry> 520 </entry>
498 - <entry file="file://$PROJECT_DIR$/.env">  
499 - <provider selected="true" editor-type-id="text-editor">  
500 - <state relative-caret-position="176">  
501 - <caret line="8" column="51" selection-start-line="8" selection-start-column="51" selection-end-line="8" selection-end-column="51" />  
502 - </state>  
503 - </provider>  
504 - </entry>  
505 <entry file="file://$PROJECT_DIR$/testcases/m_login_testcases.yml"> 521 <entry file="file://$PROJECT_DIR$/testcases/m_login_testcases.yml">
506 <provider selected="true" editor-type-id="text-editor"> 522 <provider selected="true" editor-type-id="text-editor">
507 <state relative-caret-position="88"> 523 <state relative-caret-position="88">
@@ -523,48 +539,11 @@ @@ -523,48 +539,11 @@
523 </state> 539 </state>
524 </provider> 540 </provider>
525 </entry> 541 </entry>
526 - <entry file="file://$PROJECT_DIR$/helpfunc/pg_db_func.py">  
527 - <provider selected="true" editor-type-id="text-editor">  
528 - <state relative-caret-position="3427">  
529 - <caret line="390" lean-forward="true" selection-start-line="390" selection-end-line="390" />  
530 - </state>  
531 - </provider>  
532 - </entry>  
533 - <entry file="file://$PROJECT_DIR$/testcases/order/order_list_1_testcases.yml">  
534 - <provider selected="true" editor-type-id="text-editor">  
535 - <state relative-caret-position="198">  
536 - <caret line="15" column="34" selection-start-line="15" selection-start-column="34" selection-end-line="15" selection-end-column="34" />  
537 - </state>  
538 - </provider>  
539 - </entry>  
540 - <entry file="file://$PROJECT_DIR$/testcases/order/order_list_0_testcases.yml">  
541 - <provider selected="true" editor-type-id="text-editor">  
542 - <state relative-caret-position="506">  
543 - <caret line="23" column="33" selection-start-line="23" selection-start-column="33" selection-end-line="23" selection-end-column="33" />  
544 - </state>  
545 - </provider>  
546 - </entry>  
547 - <entry file="file://$PROJECT_DIR$/api/app_api/order/list_2_api.yml">  
548 - <provider selected="true" editor-type-id="text-editor">  
549 - <state relative-caret-position="66">  
550 - <caret line="3" column="4" selection-start-line="3" selection-start-column="4" selection-end-line="3" selection-end-column="4" />  
551 - </state>  
552 - </provider>  
553 - </entry>  
554 - <entry file="file://$PROJECT_DIR$/api/app_api/order/list_1_api.yml">  
555 - <provider selected="true" editor-type-id="text-editor">  
556 - <state relative-caret-position="44">  
557 - <caret line="2" selection-start-line="2" selection-end-line="3" selection-end-column="18" />  
558 - </state>  
559 - </provider>  
560 - </entry>  
561 - <entry file="file://$PROJECT_DIR$/testcases/order/order_list_2_testcases.yml">  
562 - <provider selected="true" editor-type-id="text-editor">  
563 - <state relative-caret-position="176">  
564 - <caret line="8" column="20" selection-start-line="8" selection-start-column="20" selection-end-line="8" selection-end-column="20" />  
565 - </state>  
566 - </provider>  
567 - </entry> 542 + <entry file="file://$PROJECT_DIR$/testcases/order/order_list_1_testcases.yml" />
  543 + <entry file="file://$PROJECT_DIR$/testcases/order/order_list_0_testcases.yml" />
  544 + <entry file="file://$PROJECT_DIR$/api/app_api/order/list_2_api.yml" />
  545 + <entry file="file://$PROJECT_DIR$/api/app_api/order/list_1_api.yml" />
  546 + <entry file="file://$PROJECT_DIR$/testcases/order/order_list_2_testcases.yml" />
568 <entry file="file://$PROJECT_DIR$/testcases/actual/ACTUAL001_add_actual_testcases.yml"> 547 <entry file="file://$PROJECT_DIR$/testcases/actual/ACTUAL001_add_actual_testcases.yml">
569 <provider selected="true" editor-type-id="text-editor"> 548 <provider selected="true" editor-type-id="text-editor">
570 <state relative-caret-position="110"> 549 <state relative-caret-position="110">
@@ -579,34 +558,9 @@ @@ -579,34 +558,9 @@
579 </state> 558 </state>
580 </provider> 559 </provider>
581 </entry> 560 </entry>
582 - <entry file="file://$PROJECT_DIR$/api/app_api/order/list_0_api.yml">  
583 - <provider selected="true" editor-type-id="text-editor">  
584 - <state relative-caret-position="66">  
585 - <caret line="3" column="18" selection-start-line="3" selection-start-column="18" selection-end-line="3" selection-end-column="18" />  
586 - </state>  
587 - </provider>  
588 - </entry>  
589 - <entry file="file://$PROJECT_DIR$/testcases/order/order_intentions_testcases.yml">  
590 - <provider selected="true" editor-type-id="text-editor">  
591 - <state relative-caret-position="176">  
592 - <caret line="8" column="20" selection-start-line="8" selection-start-column="20" selection-end-line="8" selection-end-column="20" />  
593 - </state>  
594 - </provider>  
595 - </entry>  
596 - <entry file="file://$PROJECT_DIR$/api/app_api/order/intentions_api.yml">  
597 - <provider selected="true" editor-type-id="text-editor">  
598 - <state relative-caret-position="154">  
599 - <caret line="31" column="49" selection-start-line="31" selection-start-column="32" selection-end-line="31" selection-end-column="49" />  
600 - </state>  
601 - </provider>  
602 - </entry>  
603 - <entry file="file://$PROJECT_DIR$/api/m_api/actual/m_add_order_actual_api.yml">  
604 - <provider selected="true" editor-type-id="text-editor">  
605 - <state relative-caret-position="81">  
606 - <caret line="9" column="9" selection-start-line="9" selection-start-column="9" selection-end-line="9" selection-end-column="9" />  
607 - </state>  
608 - </provider>  
609 - </entry> 561 + <entry file="file://$PROJECT_DIR$/api/app_api/order/list_0_api.yml" />
  562 + <entry file="file://$PROJECT_DIR$/testcases/order/order_intentions_testcases.yml" />
  563 + <entry file="file://$PROJECT_DIR$/api/app_api/order/intentions_api.yml" />
610 <entry file="file://$PROJECT_DIR$/debugtalk.py"> 564 <entry file="file://$PROJECT_DIR$/debugtalk.py">
611 <provider selected="true" editor-type-id="text-editor"> 565 <provider selected="true" editor-type-id="text-editor">
612 <state relative-caret-position="1782"> 566 <state relative-caret-position="1782">
@@ -645,13 +599,7 @@ @@ -645,13 +599,7 @@
645 </state> 599 </state>
646 </provider> 600 </provider>
647 </entry> 601 </entry>
648 - <entry file="file://$PROJECT_DIR$/testcases/user/user_userInfo_testcases.yml">  
649 - <provider selected="true" editor-type-id="text-editor">  
650 - <state relative-caret-position="286">  
651 - <caret line="13" selection-start-line="13" selection-end-line="18" selection-end-column="16" />  
652 - </state>  
653 - </provider>  
654 - </entry> 602 + <entry file="file://$PROJECT_DIR$/testcases/user/user_userInfo_testcases.yml" />
655 <entry file="file://$PROJECT_DIR$/testcases/login_testcases.yml"> 603 <entry file="file://$PROJECT_DIR$/testcases/login_testcases.yml">
656 <provider selected="true" editor-type-id="text-editor"> 604 <provider selected="true" editor-type-id="text-editor">
657 <state relative-caret-position="493"> 605 <state relative-caret-position="493">
@@ -711,16 +659,6 @@ @@ -711,16 +659,6 @@
711 </state> 659 </state>
712 </provider> 660 </provider>
713 </entry> 661 </entry>
714 - <entry file="file://$PROJECT_DIR$/helpfunc/pg_app_db_func.py">  
715 - <provider selected="true" editor-type-id="text-editor">  
716 - <state relative-caret-position="36">  
717 - <caret line="174" selection-start-line="174" selection-end-line="174" />  
718 - <folding>  
719 - <element signature="e#108#123#0" expanded="true" />  
720 - </folding>  
721 - </state>  
722 - </provider>  
723 - </entry>  
724 <entry file="file://$PROJECT_DIR$/testcases/order/order_statistics_testcases.yml"> 662 <entry file="file://$PROJECT_DIR$/testcases/order/order_statistics_testcases.yml">
725 <provider selected="true" editor-type-id="text-editor"> 663 <provider selected="true" editor-type-id="text-editor">
726 <state relative-caret-position="88"> 664 <state relative-caret-position="88">
@@ -770,24 +708,69 @@ @@ -770,24 +708,69 @@
770 </state> 708 </state>
771 </provider> 709 </provider>
772 </entry> 710 </entry>
773 - <entry file="file://$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_add_api.yml"> 711 + <entry file="file://$PROJECT_DIR$/testcases/purpose/PURPOSE002_edit_purpose_testcases.yml">
774 <provider selected="true" editor-type-id="text-editor"> 712 <provider selected="true" editor-type-id="text-editor">
775 - <state relative-caret-position="374">  
776 - <caret line="17" column="29" selection-start-line="17" selection-start-column="29" selection-end-line="17" selection-end-column="29" /> 713 + <state relative-caret-position="154">
  714 + <caret line="13" column="56" selection-start-line="13" selection-start-column="56" selection-end-line="13" selection-end-column="56" />
  715 + </state>
  716 + </provider>
  717 + </entry>
  718 + <entry file="file://$PROJECT_DIR$/helpfunc/pg_db_func.py">
  719 + <provider selected="true" editor-type-id="text-editor">
  720 + <state relative-caret-position="5854">
  721 + <caret line="316" selection-start-line="316" selection-end-line="316" />
777 </state> 722 </state>
778 </provider> 723 </provider>
779 </entry> 724 </entry>
780 <entry file="file://$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_sendout_api.yml"> 725 <entry file="file://$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_sendout_api.yml">
781 <provider selected="true" editor-type-id="text-editor"> 726 <provider selected="true" editor-type-id="text-editor">
782 - <state relative-caret-position="550">  
783 - <caret line="25" column="26" lean-forward="true" selection-start-line="25" selection-start-column="26" selection-end-line="25" selection-end-column="33" /> 727 + <state relative-caret-position="154">
  728 + <caret line="7" column="58" selection-start-line="7" selection-start-column="58" selection-end-line="7" selection-end-column="58" />
784 </state> 729 </state>
785 </provider> 730 </provider>
786 </entry> 731 </entry>
787 <entry file="file://$PROJECT_DIR$/testsuites/partner_testsuite.yml"> 732 <entry file="file://$PROJECT_DIR$/testsuites/partner_testsuite.yml">
788 <provider selected="true" editor-type-id="text-editor"> 733 <provider selected="true" editor-type-id="text-editor">
789 - <state relative-caret-position="141">  
790 - <caret line="80" column="73" selection-start-line="80" selection-start-column="73" selection-end-line="80" selection-end-column="73" /> 734 + <state relative-caret-position="1496">
  735 + <caret line="68" column="40" selection-start-line="68" selection-start-column="40" selection-end-line="68" selection-end-column="40" />
  736 + </state>
  737 + </provider>
  738 + </entry>
  739 + <entry file="file://$PROJECT_DIR$/.env">
  740 + <provider selected="true" editor-type-id="text-editor">
  741 + <state relative-caret-position="176">
  742 + <caret line="8" column="71" selection-start-line="8" selection-start-column="71" selection-end-line="8" selection-end-column="71" />
  743 + </state>
  744 + </provider>
  745 + </entry>
  746 + <entry file="file://$PROJECT_DIR$/api/m_api/actual/m_add_order_actual_api.yml">
  747 + <provider selected="true" editor-type-id="text-editor">
  748 + <state relative-caret-position="308">
  749 + <caret line="14" column="19" selection-start-line="14" selection-start-column="19" selection-end-line="14" selection-end-column="19" />
  750 + </state>
  751 + </provider>
  752 + </entry>
  753 + <entry file="file://$PROJECT_DIR$/helpfunc/pg_app_db_func.py">
  754 + <provider selected="true" editor-type-id="text-editor">
  755 + <state relative-caret-position="1650">
  756 + <caret line="77" column="34" selection-start-line="77" selection-start-column="4" selection-end-line="77" selection-end-column="34" />
  757 + <folding>
  758 + <element signature="e#108#123#0" expanded="true" />
  759 + </folding>
  760 + </state>
  761 + </provider>
  762 + </entry>
  763 + <entry file="file://$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_edit_api.yml">
  764 + <provider selected="true" editor-type-id="text-editor">
  765 + <state relative-caret-position="704">
  766 + <caret line="32" column="12" selection-start-line="32" selection-start-column="12" selection-end-line="32" selection-end-column="12" />
  767 + </state>
  768 + </provider>
  769 + </entry>
  770 + <entry file="file://$PROJECT_DIR$/api/m_api/purpose/m_order_purpose_add_api.yml">
  771 + <provider selected="true" editor-type-id="text-editor">
  772 + <state relative-caret-position="242">
  773 + <caret line="20" column="23" selection-start-line="20" selection-start-column="23" selection-end-line="20" selection-end-column="23" />
791 </state> 774 </state>
792 </provider> 775 </provider>
793 </entry> 776 </entry>
@@ -8,18 +8,24 @@ request: @@ -8,18 +8,24 @@ request:
8 User-Agent: okhttp/3.12.3 8 User-Agent: okhttp/3.12.3
9 Authorization: Bearer ${get_m_accesstoken()} 9 Authorization: Bearer ${get_m_accesstoken()}
10 json: 10 json:
11 - buyer: 我是买家${get_second()}  
12 - buyerPhone: ${convert_to_string($account)}  
13 - address: '福建省福州市收获地址1'  
14 - partner: 29  
15 - partnerRatio: 10.1  
16 - salesmanRatio: 20.2  
17 orderId: ${get_nowtime()} 11 orderId: ${get_nowtime()}
18 - orderName: ${get_nowtime()}  
19 - orderNum: 500  
20 - orderPrice: 1000000 12 + orderAmountAdjustmentCount: 13
  13 + orderNumCount: 29
  14 + shipmentsId: ${get_nowtime()}
  15 + buyer: 我是客户${get_second()}
21 orderDist: '福建一区' 16 orderDist: '福建一区'
22 - orderStatue: 3 17 + partnerID: ${get_partner_id_from_database()}
  18 + partner: ${get_partner_name_from_database()}
  19 + commissionProportion: 10.1
  20 + product:
  21 + - productName: 产品名称${get_second()}
  22 + orderNum: 18
  23 + univalence: 0.19
  24 + partnerRatio: 5.2
  25 + - productName: 产品名称${get_second()}
  26 + orderNum: 29
  27 + univalence: 0.19
  28 + partnerRatio: 5.2
23 method: POST 29 method: POST
24 url: v1/order/actual/update 30 url: v1/order/actual/update
25 validate: 31 validate:
@@ -7,18 +7,219 @@ request: @@ -7,18 +7,219 @@ request:
7 Authorization: Bearer ${get_m_accesstoken()} 7 Authorization: Bearer ${get_m_accesstoken()}
8 json: 8 json:
9 orderId: ${get_nowtime()} 9 orderId: ${get_nowtime()}
10 - buyer: 我是买家${get_second()} 10 + buyer: 我是客户${get_second()}
11 orderDist: '福建二区' 11 orderDist: '福建二区'
12 - partner: 29 12 +# partnerID: ${get_partner_id_from_database()}
  13 + partnerID: 003
13 commissionProportion: 10.2 14 commissionProportion: 10.2
14 product: 15 product:
15 - productName: 产品名称${get_second()} 16 - productName: 产品名称${get_second()}
16 - orderNum: 100 17 + orderNum: 33
  18 + univalence: 1.12
  19 + partnerRatio: 1.27
  20 + - productName: 产品名称${get_second()}
  21 + orderNum: 45
17 univalence: 2.22 22 univalence: 2.22
18 - partnerRatio: 5.2 23 + partnerRatio: 5.7
  24 +# - productName: 产品名称${get_second()}
  25 +# orderNum: 3
  26 +# univalence: 3.22
  27 +# partnerRatio: 5.2
  28 +# - productName: 产品名称${get_second()}
  29 +# orderNum: 4
  30 +# univalence: 2.22
  31 +# partnerRatio: 5.2
  32 +# - productName: 产品名称${get_second()}
  33 +# orderNum: 5
  34 +# univalence: 2.22
  35 +# partnerRatio: 5.2
  36 +# - productName: 产品名称${get_second()}
  37 +# orderNum: 6
  38 +# univalence: 2.22
  39 +# partnerRatio: 5.2
  40 +# - productName: 产品名称${get_second()}
  41 +# orderNum: 7
  42 +# univalence: 2.22
  43 +# partnerRatio: 5.2
  44 +# - productName: 产品名称${get_second()}
  45 +# orderNum: 8
  46 +# univalence: 2.22
  47 +# partnerRatio: 5.2
  48 +# - productName: 产品名称${get_second()}
  49 +# orderNum: 9
  50 +# univalence: 2.22
  51 +# partnerRatio: 5.2
  52 +# - productName: 产品名称${get_second()}
  53 +# orderNum: 10
  54 +# univalence: 2.22
  55 +# partnerRatio: 5.2
  56 +# - productName: 产品名称${get_second()}
  57 +# orderNum: 11
  58 +# univalence: 2.22
  59 +# partnerRatio: 5.2
  60 +# - productName: 产品名称${get_second()}
  61 +# orderNum: 12
  62 +# univalence: 2.22
  63 +# partnerRatio: 5.2
  64 +# - productName: 产品名称${get_second()}
  65 +# orderNum: 13
  66 +# univalence: 2.22
  67 +# partnerRatio: 5.2
  68 +# - productName: 产品名称${get_second()}
  69 +# orderNum: 14
  70 +# univalence: 2.22
  71 +# partnerRatio: 5.2
  72 +# - productName: 产品名称${get_second()}
  73 +# orderNum: 15
  74 +# univalence: 2.22
  75 +# partnerRatio: 5.2
  76 +# - productName: 产品名称${get_second()}
  77 +# orderNum: 16
  78 +# univalence: 2.22
  79 +# partnerRatio: 5.2
  80 +# - productName: 产品名称${get_second()}
  81 +# orderNum: 17
  82 +# univalence: 2.22
  83 +# partnerRatio: 5.2
  84 +# - productName: 产品名称${get_second()}
  85 +# orderNum: 18
  86 +# univalence: 2.22
  87 +# partnerRatio: 5.2
  88 +# - productName: 产品名称${get_second()}
  89 +# orderNum: 19
  90 +# univalence: 2.22
  91 +# partnerRatio: 5.2
  92 +# - productName: 产品名称${get_second()}
  93 +# orderNum: 20
  94 +# univalence: 2.22
  95 +# partnerRatio: 5.2
  96 +# - productName: 产品名称${get_second()}
  97 +# orderNum: 21
  98 +# univalence: 2.22
  99 +# partnerRatio: 5.2
  100 +# - productName: 产品名称${get_second()}
  101 +# orderNum: 22
  102 +# univalence: 2.22
  103 +# partnerRatio: 5.2
  104 +# - productName: 产品名称${get_second()}
  105 +# orderNum: 23
  106 +# univalence: 2.22
  107 +# partnerRatio: 5.2
  108 +# - productName: 产品名称${get_second()}
  109 +# orderNum: 24
  110 +# univalence: 2.22
  111 +# partnerRatio: 5.2
  112 +# - productName: 产品名称${get_second()}
  113 +# orderNum: 25
  114 +# univalence: 2.22
  115 +# partnerRatio: 5.2
  116 +# - productName: 产品名称${get_second()}
  117 +# orderNum: 26
  118 +# univalence: 2.22
  119 +# partnerRatio: 5.2
  120 +# - productName: 产品名称${get_second()}
  121 +# orderNum: 27
  122 +# univalence: 2.22
  123 +# partnerRatio: 5.2
  124 +# - productName: 产品名称${get_second()}
  125 +# orderNum: 28
  126 +# univalence: 2.22
  127 +# partnerRatio: 5.2
  128 +# - productName: 产品名称${get_second()}
  129 +# orderNum: 29
  130 +# univalence: 2.22
  131 +# partnerRatio: 5.2
  132 +# - productName: 产品名称${get_second()}
  133 +# orderNum: 30
  134 +# univalence: 2.22
  135 +# partnerRatio: 5.2
  136 +# - productName: 产品名称${get_second()}
  137 +# orderNum: 31
  138 +# univalence: 2.22
  139 +# partnerRatio: 5.2
  140 +# - productName: 产品名称${get_second()}
  141 +# orderNum: 32
  142 +# univalence: 2.22
  143 +# partnerRatio: 5.2
  144 +# - productName: 产品名称${get_second()}
  145 +# orderNum: 33
  146 +# univalence: 2.22
  147 +# partnerRatio: 5.2
  148 +# - productName: 产品名称${get_second()}
  149 +# orderNum: 34
  150 +# univalence: 2.22
  151 +# partnerRatio: 5.2
  152 +# - productName: 产品名称${get_second()}
  153 +# orderNum: 35
  154 +# univalence: 2.22
  155 +# partnerRatio: 5.2
  156 +# - productName: 产品名称${get_second()}
  157 +# orderNum: 36
  158 +# univalence: 2.22
  159 +# partnerRatio: 5.2
  160 +# - productName: 产品名称${get_second()}
  161 +# orderNum: 37
  162 +# univalence: 2.22
  163 +# partnerRatio: 5.2
  164 +# - productName: 产品名称${get_second()}
  165 +# orderNum: 38
  166 +# univalence: 2.22
  167 +# partnerRatio: 5.2
  168 +# - productName: 产品名称${get_second()}
  169 +# orderNum: 39
  170 +# univalence: 2.22
  171 +# partnerRatio: 5.2
  172 +# - productName: 产品名称${get_second()}
  173 +# orderNum: 40
  174 +# univalence: 2.22
  175 +# partnerRatio: 5.2
  176 +# - productName: 产品名称${get_second()}
  177 +# orderNum: 41
  178 +# univalence: 2.22
  179 +# partnerRatio: 5.2
  180 +# - productName: 产品名称${get_second()}
  181 +# orderNum: 42
  182 +# univalence: 2.22
  183 +# partnerRatio: 5.2
  184 +# - productName: 产品名称${get_second()}
  185 +# orderNum: 43
  186 +# univalence: 2.22
  187 +# partnerRatio: 5.2
  188 +# - productName: 产品名称${get_second()}
  189 +# orderNum: 44
  190 +# univalence: 2.22
  191 +# partnerRatio: 5.2
  192 +# - productName: 产品名称${get_second()}
  193 +# orderNum: 45
  194 +# univalence: 2.22
  195 +# partnerRatio: 5.2
  196 +# - productName: 产品名称${get_second()}
  197 +# orderNum: 46
  198 +# univalence: 2.22
  199 +# partnerRatio: 5.2
  200 +# - productName: 产品名称${get_second()}
  201 +# orderNum: 47
  202 +# univalence: 2.22
  203 +# partnerRatio: 5.2
  204 +# - productName: 产品名称${get_second()}
  205 +# orderNum: 48
  206 +# univalence: 2.22
  207 +# partnerRatio: 5.2
  208 +# - productName: 产品名称${get_second()}
  209 +# orderNum: 49
  210 +# univalence: 2.22
  211 +# partnerRatio: 5.2
  212 +# - productName: 产品名称${get_second()}
  213 +# orderNum: 50
  214 +# univalence: 2.22
  215 +# partnerRatio: 5.2
  216 +# - productName: 产品名称${get_second()}
  217 +# orderNum: 51
  218 +# univalence: 2.22
  219 +# partnerRatio: 5.2
19 method: POST 220 method: POST
20 url: v1/order/purpose/update 221 url: v1/order/purpose/update
21 validate: 222 validate:
22 - eq: 223 - eq:
23 - content.msg 224 - content.msg
24 - - ok 225 + - ok
@@ -31,4 +31,4 @@ request: @@ -31,4 +31,4 @@ request:
31 validate: 31 validate:
32 - eq: 32 - eq:
33 - content.msg 33 - content.msg
34 - - ok 34 + - ok
1 name: 意向订单发货 1 name: 意向订单发货
2 base_url: ${ENV(base_manager_url)} 2 base_url: ${ENV(base_manager_url)}
3 variables: 3 variables:
4 - address: ${get_purpose_address_from_database(order)}  
5 - id: ${get_purpose_id_from_database(order)} 4 + id: ${get_purpose_id_from_database()}
6 buyer: ${get_purpose_buyer_from_database(order)} 5 buyer: ${get_purpose_buyer_from_database(order)}
7 - buyerPhone: ${get_purpose_buyerPhone_from_database(order)}  
8 orderDist: ${get_purpose_orderDist_from_database(order)} 6 orderDist: ${get_purpose_orderDist_from_database(order)}
9 orderId: ${get_purpose_orderId_from_database(order)} 7 orderId: ${get_purpose_orderId_from_database(order)}
10 - orderName: ${get_purpose_orderName_from_database(order)} 8 + productid: ${get_purpose_orderId_from_database(order)}
11 request: 9 request:
12 headers: 10 headers:
13 Content-Type: application/json;charset=utf-8 11 Content-Type: application/json;charset=utf-8
14 User-Agent: okhttp/3.12.3 12 User-Agent: okhttp/3.12.3
15 Authorization: Bearer ${get_m_accesstoken()} 13 Authorization: Bearer ${get_m_accesstoken()}
16 json: 14 json:
17 - shipmentsId: 15 + shipmentsId: ${get_nowtime()}
18 id: $id 16 id: $id
19 productDetail: 17 productDetail:
20 - id: 18 - id:
1 -eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE1OTUwNDAzOTQsImlhdCI6MTU5NDk5NzE5NCwiaXNzIjoibW1tX3BhcnRuZXJtZyIsIm5iZiI6MTU5NDk5NzE5NCwidWlkIjoxOH0.ytZZMcD5YPV2NwP51D1UpfbdWeGqETJ1BQ5Ii-hbV0Y  
  1 +eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE1OTY4NDk0NzAsImlhdCI6MTU5NjgwNjI3MCwiaXNzIjoibW1tX3BhcnRuZXJtZyIsIm5iZiI6MTU5NjgwNjI3MCwidWlkIjoxfQ.HlIr_mrPM8571Lly_QRPADD1IctjQg8ZN3RLeY_dkOQ
@@ -58,12 +58,29 @@ def GetConnect(): @@ -58,12 +58,29 @@ def GetConnect():
58 print("连接数据库失败,%s" % err) 58 print("连接数据库失败,%s" % err)
59 return conn 59 return conn
60 #获取超级管理员id 60 #获取超级管理员id
61 -def get_partner_id_from_database(tbl): 61 +def get_partner_id_from_database():
62 db = GetConnect() 62 db = GetConnect()
63 cursor = db.cursor() 63 cursor = db.cursor()
64 # sql= "select id from " + '''"''' + tbl + '''"'''+ ' ' + 'order by id desc ' 64 # sql= "select id from " + '''"''' + tbl + '''"'''+ ' ' + 'order by id desc '
65 - sql = '''select id from \"{}\" where account = '13459147023' '''.format(tbl)  
66 - # print(sql) 65 + sql = '''select id from partner_info where account = '13459147023' '''
  66 + print(sql)
  67 + try:
  68 + cursor.execute(sql)
  69 + result = cursor.fetchone()
  70 + return result[0]
  71 + except Exception as err:
  72 + # 发生错误时回滚
  73 + print(err)
  74 + db.rollback()
  75 + db.close()
  76 +# print(get_partner_id_from_database())
  77 +
  78 +def get_partner_name_from_database():
  79 + db = GetConnect()
  80 + cursor = db.cursor()
  81 + # sql= "select id from " + '''"''' + tbl + '''"'''+ ' ' + 'order by id desc '
  82 + sql = '''select partner_name from partner_info where account = '13459147023' '''
  83 + print(sql)
67 try: 84 try:
68 cursor.execute(sql) 85 cursor.execute(sql)
69 result = cursor.fetchone() 86 result = cursor.fetchone()
@@ -73,6 +90,7 @@ def get_partner_id_from_database(tbl): @@ -73,6 +90,7 @@ def get_partner_id_from_database(tbl):
73 print(err) 90 print(err)
74 db.rollback() 91 db.rollback()
75 db.close() 92 db.close()
  93 +# print(get_partner_name_from_database())
76 #获取超级管理员账号 94 #获取超级管理员账号
77 def get_partner_account_from_database(tbl): 95 def get_partner_account_from_database(tbl):
78 db = GetConnect() 96 db = GetConnect()
@@ -334,7 +352,7 @@ def get_expend_from_database(): @@ -334,7 +352,7 @@ def get_expend_from_database():
334 db = GetConnect() 352 db = GetConnect()
335 cursor = db.cursor() 353 cursor = db.cursor()
336 # sql= "select id from " + '''"''' + tbl + '''"'''+ ' ' + 'order by id desc ' 354 # sql= "select id from " + '''"''' + tbl + '''"'''+ ' ' + 'order by id desc '
337 - sql = '''select sum(((order_amount- order_actual_amount)* partner_bonus_percent)/100) from \"{}\" where partner_id = {} '''.format('order',get_partner_id_from_database('partner_info')) 355 + sql = '''select sum(((order_amount- order_actual_amount)* partner_bonus_percent)/100) from \"{}\" where partner_id = {} '''.format('order',get_partner_id_from_database())
338 # print(sql)id 356 # print(sql)id
339 try: 357 try:
340 cursor.execute(sql) 358 cursor.execute(sql)
@@ -348,4 +366,4 @@ def get_expend_from_database(): @@ -348,4 +366,4 @@ def get_expend_from_database():
348 print(err) 366 print(err)
349 db.rollback() 367 db.rollback()
350 db.close() 368 db.close()
351 -print(get_expend_from_database()) 369 +# print(get_expend_from_database())
@@ -65,13 +65,12 @@ def get_actual_id_from_database(tbl): @@ -65,13 +65,12 @@ def get_actual_id_from_database(tbl):
65 print(err) 65 print(err)
66 db.rollback() 66 db.rollback()
67 db.close() 67 db.close()
68 -  
69 -def get_purpose_id_from_database(tbl): 68 +#意向订单id
  69 +def get_purpose_id_from_database():
70 db = GetConnect() 70 db = GetConnect()
71 cursor = db.cursor() 71 cursor = db.cursor()
72 # sql= "select id from " + '''"''' + tbl + '''"'''+ ' ' + 'order by id desc ' 72 # sql= "select id from " + '''"''' + tbl + '''"'''+ ' ' + 'order by id desc '
73 - sql = 'select id from \"{}\" where order_type = 2 order by id DESC'.format(tbl)  
74 - # print(sql) 73 + sql = '''select id from "order" where order_type = 2 order by id DESC'''
75 try: 74 try:
76 cursor.execute(sql) 75 cursor.execute(sql)
77 result = cursor.fetchone() 76 result = cursor.fetchone()
@@ -224,20 +223,6 @@ def get_actual_address_from_database(tbl): @@ -224,20 +223,6 @@ def get_actual_address_from_database(tbl):
224 db.rollback() 223 db.rollback()
225 db.close() 224 db.close()
226 225
227 -def get_purpose_address_from_database(tbl):  
228 - db = GetConnect()  
229 - cursor = db.cursor()  
230 - sql = 'select buyer from \"{}\" where order_type = 2 order by id DESC'.format(tbl)  
231 - try:  
232 - cursor.execute(sql)  
233 - result = cursor.fetchone()  
234 - return result[0]['shippingAddress']  
235 - except Exception as err:  
236 - # 发生错误时回滚  
237 - print(err)  
238 - db.rollback()  
239 - db.close()  
240 -  
241 def get_actual_buyer_from_database(tbl): 226 def get_actual_buyer_from_database(tbl):
242 db = GetConnect() 227 db = GetConnect()
243 cursor = db.cursor() 228 cursor = db.cursor()
@@ -268,36 +253,6 @@ def get_purpose_buyer_from_database(tbl): @@ -268,36 +253,6 @@ def get_purpose_buyer_from_database(tbl):
268 db.rollback() 253 db.rollback()
269 db.close() 254 db.close()
270 255
271 -def get_actual_buyerPhone_from_database(tbl):  
272 - db = GetConnect()  
273 - cursor = db.cursor()  
274 - sql = 'select buyer from \"{}\" where order_type = 1 order by id DESC'.format(tbl)  
275 - # print(sql)  
276 - try:  
277 - cursor.execute(sql)  
278 - result = cursor.fetchone()  
279 - return result[0]['contactInfo']  
280 - except Exception as err:  
281 - # 发生错误时回滚  
282 - print(err)  
283 - db.rollback()  
284 - db.close()  
285 -  
286 -def get_purpose_buyerPhone_from_database(tbl):  
287 - db = GetConnect()  
288 - cursor = db.cursor()  
289 - sql = 'select buyer from \"{}\" where order_type = 2 order by id DESC'.format(tbl)  
290 - # print(sql)  
291 - try:  
292 - cursor.execute(sql)  
293 - result = cursor.fetchone()  
294 - return result[0]['contactInfo']  
295 - except Exception as err:  
296 - # 发生错误时回滚  
297 - print(err)  
298 - db.rollback()  
299 - db.close()  
300 -  
301 def get_actual_orderDist_from_database(tbl): 256 def get_actual_orderDist_from_database(tbl):
302 db = GetConnect() 257 db = GetConnect()
303 cursor = db.cursor() 258 cursor = db.cursor()
@@ -358,34 +313,5 @@ def get_purpose_orderId_from_database(tbl): @@ -358,34 +313,5 @@ def get_purpose_orderId_from_database(tbl):
358 db.rollback() 313 db.rollback()
359 db.close() 314 db.close()
360 315
361 -def get_actual_orderName_from_database(tbl):  
362 - db = GetConnect()  
363 - cursor = db.cursor()  
364 - sql = 'select order_name from \"{}\" where order_type = 1 order by id DESC'.format(tbl)  
365 - # print(sql)  
366 - try:  
367 - cursor.execute(sql)  
368 - result = cursor.fetchone()  
369 - return result[0]  
370 - except Exception as err:  
371 - # 发生错误时回滚  
372 - print(err)  
373 - db.rollback()  
374 - db.close()  
375 -  
376 -def get_purpose_orderName_from_database(tbl):  
377 - db = GetConnect()  
378 - cursor = db.cursor()  
379 - sql = 'select order_name from \"{}\" where order_type = 2 order by id DESC'.format(tbl)  
380 - # print(sql)  
381 - try:  
382 - cursor.execute(sql)  
383 - result = cursor.fetchone()  
384 - return result[0]  
385 - except Exception as err:  
386 - # 发生错误时回滚  
387 - print(err)  
388 - db.rollback()  
389 - db.close() 316 +# print(get_order_status_from_database('order'))
390 317
391 -# print(get_order_status_from_database('order'))  
  1 +<head>
  2 + <meta content="text/html; charset=utf-8" http-equiv="content-type" />
  3 + <meta name="viewport" content="width=device-width, initial-scale=1.0">
  4 + <title> - TestReport</title>
  5 + <style>
  6 + body {
  7 + background-color: #f2f2f2;
  8 + color: #333;
  9 + margin: 0 auto;
  10 + width: 960px;
  11 + }
  12 + #summary {
  13 + width: 960px;
  14 + margin-bottom: 20px;
  15 + }
  16 + #summary th {
  17 + background-color: skyblue;
  18 + padding: 5px 12px;
  19 + }
  20 + #summary td {
  21 + background-color: lightblue;
  22 + text-align: center;
  23 + padding: 4px 8px;
  24 + }
  25 + .details {
  26 + width: 960px;
  27 + margin-bottom: 20px;
  28 + }
  29 + .details th {
  30 + background-color: skyblue;
  31 + padding: 5px 12px;
  32 + }
  33 + .details tr .passed {
  34 + background-color: lightgreen;
  35 + }
  36 + .details tr .failed {
  37 + background-color: red;
  38 + }
  39 + .details tr .unchecked {
  40 + background-color: gray;
  41 + }
  42 + .details td {
  43 + background-color: lightblue;
  44 + padding: 5px 12px;
  45 + }
  46 + .details .detail {
  47 + background-color: lightgrey;
  48 + font-size: smaller;
  49 + padding: 5px 10px;
  50 + line-height: 20px;
  51 + text-align: left;
  52 + }
  53 + .details .success {
  54 + background-color: greenyellow;
  55 + }
  56 + .details .error {
  57 + background-color: red;
  58 + }
  59 + .details .failure {
  60 + background-color: salmon;
  61 + }
  62 + .details .skipped {
  63 + background-color: gray;
  64 + }
  65 +
  66 + .button {
  67 + font-size: 1em;
  68 + padding: 6px;
  69 + width: 4em;
  70 + text-align: center;
  71 + background-color: #06d85f;
  72 + border-radius: 20px/50px;
  73 + cursor: pointer;
  74 + transition: all 0.3s ease-out;
  75 + }
  76 + a.button{
  77 + color: gray;
  78 + text-decoration: none;
  79 + display: inline-block;
  80 + }
  81 + .button:hover {
  82 + background: #2cffbd;
  83 + }
  84 +
  85 + .overlay {
  86 + position: fixed;
  87 + top: 0;
  88 + bottom: 0;
  89 + left: 0;
  90 + right: 0;
  91 + background: rgba(0, 0, 0, 0.7);
  92 + transition: opacity 500ms;
  93 + visibility: hidden;
  94 + opacity: 0;
  95 + line-height: 25px;
  96 + }
  97 + .overlay:target {
  98 + visibility: visible;
  99 + opacity: 1;
  100 + }
  101 +
  102 + .popup {
  103 + margin: 70px auto;
  104 + padding: 20px;
  105 + background: #fff;
  106 + border-radius: 10px;
  107 + width: 50%;
  108 + position: relative;
  109 + transition: all 3s ease-in-out;
  110 + }
  111 +
  112 + .popup h2 {
  113 + margin-top: 0;
  114 + color: #333;
  115 + font-family: Tahoma, Arial, sans-serif;
  116 + }
  117 + .popup .close {
  118 + position: absolute;
  119 + top: 20px;
  120 + right: 30px;
  121 + transition: all 200ms;
  122 + font-size: 30px;
  123 + font-weight: bold;
  124 + text-decoration: none;
  125 + color: #333;
  126 + }
  127 + .popup .close:hover {
  128 + color: #06d85f;
  129 + }
  130 + .popup .content {
  131 + max-height: 80%;
  132 + overflow: auto;
  133 + text-align: left;
  134 + }
  135 + .popup .separator {
  136 + color:royalblue
  137 + }
  138 +
  139 + @media screen and (max-width: 700px) {
  140 + .box {
  141 + width: 70%;
  142 + }
  143 + .popup {
  144 + width: 70%;
  145 + }
  146 + }
  147 +
  148 + </style>
  149 +</head>
  150 +
  151 +<body>
  152 + <h1>Test Report: </h1>
  153 +
  154 + <h2>Summary</h2>
  155 + <table id="summary">
  156 + <tr>
  157 + <th>START AT</th>
  158 + <td colspan="4">2020-08-06T01:55:02.489234</td>
  159 + </tr>
  160 + <tr>
  161 + <th>DURATION</th>
  162 + <td colspan="4">0.619 seconds</td>
  163 + </tr>
  164 + <tr>
  165 + <th>PLATFORM</th>
  166 + <td>HttpRunner 2.5.7 </td>
  167 + <td>CPython 3.8.1 </td>
  168 + <td colspan="2">Windows-7-6.1.7601-SP1</td>
  169 + </tr>
  170 + <tr>
  171 + <th>STAT</th>
  172 + <th colspan="2">TESTCASES (success/fail)</th>
  173 + <th colspan="2">TESTSTEPS (success/fail/error/skip)</th>
  174 + </tr>
  175 + <tr>
  176 + <td>total (details) =></td>
  177 + <td colspan="2">1 (1/0)</td>
  178 + <td colspan="2">2 (2/0/0/0)</td>
  179 + </tr>
  180 + </table>
  181 +
  182 + <h2>Details</h2>
  183 +
  184 +
  185 +
  186 + <h3>PURPOSE001:新增意向订单</h3>
  187 + <table id="suite_1" class="details">
  188 + <tr>
  189 + <td>TOTAL: 2</td>
  190 + <td>SUCCESS: 2</td>
  191 + <td>FAILED: 0</td>
  192 + <td>ERROR: 0</td>
  193 + <td>SKIPPED: 0</td>
  194 + </tr>
  195 + <tr>
  196 + <th>Status</th>
  197 + <th colspan="2">Name</th>
  198 + <th>Response Time</th>
  199 + <th>Detail</th>
  200 + </tr>
  201 +
  202 +
  203 +
  204 +
  205 + <tr id="record_1_1">
  206 + <th class="success" style="width:5em;">success</th>
  207 + <td colspan="2">10000000001 登录系统</td>
  208 + <td style="text-align:center;width:6em;">370.02 ms</td>
  209 + <td class="detail">
  210 +
  211 +
  212 +
  213 + <a class="button" href="#popup_log_1_1_1">log-1</a>
  214 + <div id="popup_log_1_1_1" class="overlay">
  215 + <div class="popup">
  216 + <h2>Request and Response data</h2>
  217 + <a class="close" href="#record_1_1_1">&times;</a>
  218 +
  219 + <div class="content">
  220 + <h3>Name: 10000000001 登录系统</h3>
  221 +
  222 +
  223 +
  224 +
  225 +
  226 + <h3>Request:</h3>
  227 + <div style="overflow: auto">
  228 + <table>
  229 +
  230 + <tr>
  231 + <th>url</th>
  232 + <td>
  233 +
  234 + https://public-interface-test.fjmaimaimai.com/partnermg/v1/auth/login
  235 +
  236 + </td>
  237 + </tr>
  238 +
  239 + <tr>
  240 + <th>method</th>
  241 + <td>
  242 +
  243 + POST
  244 +
  245 + </td>
  246 + </tr>
  247 +
  248 + <tr>
  249 + <th>headers</th>
  250 + <td>
  251 +
  252 + <pre>{
  253 + &#34;User-Agent&#34;: &#34;Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.75 Safari/537.36&#34;,
  254 + &#34;Accept-Encoding&#34;: &#34;gzip, deflate&#34;,
  255 + &#34;Accept&#34;: &#34;*/*&#34;,
  256 + &#34;Connection&#34;: &#34;keep-alive&#34;,
  257 + &#34;Content-Type&#34;: &#34;application/json;charset=utf-8&#34;,
  258 + &#34;Content-Length&#34;: &#34;83&#34;
  259 +}</pre>
  260 +
  261 + </td>
  262 + </tr>
  263 +
  264 + <tr>
  265 + <th>body</th>
  266 + <td>
  267 +
  268 + <pre>{
  269 + &#34;password&#34;: &#34;7c4a8d09ca3762af61e59520943dc26494f8941b&#34;,
  270 + &#34;username&#34;: &#34;10000000001&#34;
  271 +}</pre>
  272 +
  273 + </td>
  274 + </tr>
  275 +
  276 + </table>
  277 + </div>
  278 +
  279 + <h3>Response:</h3>
  280 + <div style="overflow: auto">
  281 + <table>
  282 +
  283 + <tr>
  284 + <th>ok</th>
  285 + <td>
  286 +
  287 + True
  288 +
  289 + </td>
  290 + </tr>
  291 +
  292 + <tr>
  293 + <th>url</th>
  294 + <td>
  295 +
  296 + https://public-interface-test.fjmaimaimai.com/partnermg/v1/auth/login
  297 +
  298 + </td>
  299 + </tr>
  300 +
  301 + <tr>
  302 + <th>status_code</th>
  303 + <td>
  304 +
  305 + 200
  306 +
  307 + </td>
  308 + </tr>
  309 +
  310 + <tr>
  311 + <th>reason</th>
  312 + <td>
  313 +
  314 + OK
  315 +
  316 + </td>
  317 + </tr>
  318 +
  319 + <tr>
  320 + <th>cookies</th>
  321 + <td>
  322 +
  323 + {}
  324 +
  325 + </td>
  326 + </tr>
  327 +
  328 + <tr>
  329 + <th>encoding</th>
  330 + <td>
  331 +
  332 + utf-8
  333 +
  334 + </td>
  335 + </tr>
  336 +
  337 + <tr>
  338 + <th>headers</th>
  339 + <td>
  340 +
  341 + <pre>{
  342 + &#34;Date&#34;: &#34;Thu, 06 Aug 2020 01:55:04 GMT&#34;,
  343 + &#34;Content-Type&#34;: &#34;application/json; charset=utf-8&#34;,
  344 + &#34;Transfer-Encoding&#34;: &#34;chunked&#34;,
  345 + &#34;Connection&#34;: &#34;keep-alive&#34;,
  346 + &#34;Vary&#34;: &#34;Accept-Encoding, Accept-Encoding&#34;,
  347 + &#34;Access-Control-Allow-Credentials&#34;: &#34;true&#34;,
  348 + &#34;Access-Control-Allow-Headers&#34;: &#34;Origin,Authorization,Access-Control-Allow-Origin,Content-Type,x-requested-with&#34;,
  349 + &#34;Access-Control-Allow-Methods&#34;: &#34;*&#34;,
  350 + &#34;Access-Control-Allow-Origin&#34;: &#34;*&#34;,
  351 + &#34;Access-Control-Expose-Headers&#34;: &#34;Content-Length&#34;,
  352 + &#34;Strict-Transport-Security&#34;: &#34;max-age=15724800; includeSubDomains&#34;,
  353 + &#34;Content-Encoding&#34;: &#34;gzip&#34;
  354 +}</pre>
  355 +
  356 + </td>
  357 + </tr>
  358 +
  359 + <tr>
  360 + <th>content_type</th>
  361 + <td>
  362 +
  363 + application/json; charset=utf-8
  364 +
  365 + </td>
  366 + </tr>
  367 +
  368 + <tr>
  369 + <th>body</th>
  370 + <td>
  371 +
  372 +
  373 + <pre>{
  374 + &#34;code&#34;: 0,
  375 + &#34;msg&#34;: &#34;ok&#34;,
  376 + &#34;data&#34;: {
  377 + &#34;access&#34;: {
  378 + &#34;accessToken&#34;: &#34;eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE1OTY3MjIxMDQsImlhdCI6MTU5NjY3ODkwNCwiaXNzIjoibW1tX3BhcnRuZXJtZyIsIm5iZiI6MTU5NjY3ODkwNCwidWlkIjoxOH0.ZH98h4alAqMftyKXrMi4TVFx94X3hKFK7U-IJn8m6do&#34;,
  379 + &#34;expiresIn&#34;: 43200
  380 + }
  381 + }
  382 +}</pre>
  383 +
  384 +
  385 + </td>
  386 + </tr>
  387 +
  388 + </table>
  389 + </div>
  390 +
  391 +
  392 + <h3>Validators:</h3>
  393 + <div style="overflow: auto">
  394 +
  395 +
  396 + <table>
  397 + <tr>
  398 + <th>check</th>
  399 + <th>comparator</th>
  400 + <th>expect value</th>
  401 + <th>actual value</th>
  402 + </tr>
  403 +
  404 + <tr>
  405 +
  406 + <td class="passed">
  407 +
  408 + content.msg
  409 + </td>
  410 + <td>equals</td>
  411 + <td>ok</td>
  412 + <td>ok</td>
  413 + </tr>
  414 +
  415 + </table>
  416 +
  417 +
  418 +
  419 +
  420 + </div>
  421 +
  422 + <h3>Statistics:</h3>
  423 + <div style="overflow: auto">
  424 + <table>
  425 + <tr>
  426 + <th>content_size(bytes)</th>
  427 + <td>311</td>
  428 + </tr>
  429 + <tr>
  430 + <th>response_time(ms)</th>
  431 + <td>370.02</td>
  432 + </tr>
  433 + <tr>
  434 + <th>elapsed(ms)</th>
  435 + <td>360.461</td>
  436 + </tr>
  437 + </table>
  438 + </div>
  439 +
  440 + </div>
  441 + </div>
  442 + </div>
  443 +
  444 +
  445 +
  446 +
  447 + </td>
  448 + </tr>
  449 +
  450 +
  451 +
  452 + <tr id="record_1_2">
  453 + <th class="success" style="width:5em;">success</th>
  454 + <td colspan="2">10000000001 新增意向订单</td>
  455 + <td style="text-align:center;width:6em;">62.00 ms</td>
  456 + <td class="detail">
  457 +
  458 +
  459 +
  460 + <a class="button" href="#popup_log_1_2_1">log-1</a>
  461 + <div id="popup_log_1_2_1" class="overlay">
  462 + <div class="popup">
  463 + <h2>Request and Response data</h2>
  464 + <a class="close" href="#record_1_2_1">&times;</a>
  465 +
  466 + <div class="content">
  467 + <h3>Name: 10000000001 新增意向订单</h3>
  468 +
  469 +
  470 +
  471 +
  472 +
  473 + <h3>Request:</h3>
  474 + <div style="overflow: auto">
  475 + <table>
  476 +
  477 + <tr>
  478 + <th>url</th>
  479 + <td>
  480 +
  481 + https://public-interface-test.fjmaimaimai.com/partnermg/v1/order/purpose/update
  482 +
  483 + </td>
  484 + </tr>
  485 +
  486 + <tr>
  487 + <th>method</th>
  488 + <td>
  489 +
  490 + POST
  491 +
  492 + </td>
  493 + </tr>
  494 +
  495 + <tr>
  496 + <th>headers</th>
  497 + <td>
  498 +
  499 + <pre>{
  500 + &#34;User-Agent&#34;: &#34;okhttp/3.12.3&#34;,
  501 + &#34;Accept-Encoding&#34;: &#34;gzip, deflate&#34;,
  502 + &#34;Accept&#34;: &#34;*/*&#34;,
  503 + &#34;Connection&#34;: &#34;keep-alive&#34;,
  504 + &#34;Content-Type&#34;: &#34;application/json;charset=utf-8&#34;,
  505 + &#34;Authorization&#34;: &#34;Bearer bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE1OTY3MjIxMDQsImlhdCI6MTU5NjY3ODkwNCwiaXNzIjoibW1tX3BhcnRuZXJtZyIsIm5iZiI6MTU5NjY3ODkwNCwidWlkIjoxOH0.ZH98h4alAqMftyKXrMi4TVFx94X3hKFK7U-IJn8m6do&#34;,
  506 + &#34;Content-Length&#34;: &#34;375&#34;
  507 +}</pre>
  508 +
  509 + </td>
  510 + </tr>
  511 +
  512 + <tr>
  513 + <th>body</th>
  514 + <td>
  515 +
  516 + <pre>{
  517 + &#34;orderId&#34;: &#34;20200806095502&#34;,
  518 + &#34;buyer&#34;: &#34;我是客户2&#34;,
  519 + &#34;orderDist&#34;: &#34;福建二区&#34;,
  520 + &#34;partnerID&#34;: 29,
  521 + &#34;commissionProportion&#34;: 10.2,
  522 + &#34;product&#34;: [
  523 + {
  524 + &#34;productName&#34;: &#34;产品名称3&#34;,
  525 + &#34;orderNum&#34;: 20,
  526 + &#34;univalence&#34;: 1.12,
  527 + &#34;partnerRatio&#34;: 1.27
  528 + },
  529 + {
  530 + &#34;productName&#34;: &#34;产品名称3&#34;,
  531 + &#34;orderNum&#34;: 25,
  532 + &#34;univalence&#34;: 2.22,
  533 + &#34;partnerRatio&#34;: 5.7
  534 + }
  535 + ]
  536 +}</pre>
  537 +
  538 + </td>
  539 + </tr>
  540 +
  541 + </table>
  542 + </div>
  543 +
  544 + <h3>Response:</h3>
  545 + <div style="overflow: auto">
  546 + <table>
  547 +
  548 + <tr>
  549 + <th>ok</th>
  550 + <td>
  551 +
  552 + True
  553 +
  554 + </td>
  555 + </tr>
  556 +
  557 + <tr>
  558 + <th>url</th>
  559 + <td>
  560 +
  561 + https://public-interface-test.fjmaimaimai.com/partnermg/v1/order/purpose/update
  562 +
  563 + </td>
  564 + </tr>
  565 +
  566 + <tr>
  567 + <th>status_code</th>
  568 + <td>
  569 +
  570 + 200
  571 +
  572 + </td>
  573 + </tr>
  574 +
  575 + <tr>
  576 + <th>reason</th>
  577 + <td>
  578 +
  579 + OK
  580 +
  581 + </td>
  582 + </tr>
  583 +
  584 + <tr>
  585 + <th>cookies</th>
  586 + <td>
  587 +
  588 + {}
  589 +
  590 + </td>
  591 + </tr>
  592 +
  593 + <tr>
  594 + <th>encoding</th>
  595 + <td>
  596 +
  597 + utf-8
  598 +
  599 + </td>
  600 + </tr>
  601 +
  602 + <tr>
  603 + <th>headers</th>
  604 + <td>
  605 +
  606 + <pre>{
  607 + &#34;Date&#34;: &#34;Thu, 06 Aug 2020 01:55:04 GMT&#34;,
  608 + &#34;Content-Type&#34;: &#34;application/json; charset=utf-8&#34;,
  609 + &#34;Content-Length&#34;: &#34;44&#34;,
  610 + &#34;Connection&#34;: &#34;keep-alive&#34;,
  611 + &#34;Access-Control-Allow-Credentials&#34;: &#34;true&#34;,
  612 + &#34;Access-Control-Allow-Headers&#34;: &#34;Origin,Authorization,Access-Control-Allow-Origin,Content-Type,x-requested-with&#34;,
  613 + &#34;Access-Control-Allow-Methods&#34;: &#34;*&#34;,
  614 + &#34;Access-Control-Allow-Origin&#34;: &#34;*&#34;,
  615 + &#34;Access-Control-Expose-Headers&#34;: &#34;Content-Length&#34;,
  616 + &#34;Strict-Transport-Security&#34;: &#34;max-age=15724800; includeSubDomains&#34;
  617 +}</pre>
  618 +
  619 + </td>
  620 + </tr>
  621 +
  622 + <tr>
  623 + <th>content_type</th>
  624 + <td>
  625 +
  626 + application/json; charset=utf-8
  627 +
  628 + </td>
  629 + </tr>
  630 +
  631 + <tr>
  632 + <th>body</th>
  633 + <td>
  634 +
  635 +
  636 + <pre>{
  637 + &#34;code&#34;: 0,
  638 + &#34;msg&#34;: &#34;ok&#34;,
  639 + &#34;data&#34;: {}
  640 +}</pre>
  641 +
  642 +
  643 + </td>
  644 + </tr>
  645 +
  646 + </table>
  647 + </div>
  648 +
  649 +
  650 + <h3>Validators:</h3>
  651 + <div style="overflow: auto">
  652 +
  653 +
  654 + <table>
  655 + <tr>
  656 + <th>check</th>
  657 + <th>comparator</th>
  658 + <th>expect value</th>
  659 + <th>actual value</th>
  660 + </tr>
  661 +
  662 + <tr>
  663 +
  664 + <td class="passed">
  665 +
  666 + content.msg
  667 + </td>
  668 + <td>equals</td>
  669 + <td>ok</td>
  670 + <td>ok</td>
  671 + </tr>
  672 +
  673 + </table>
  674 +
  675 +
  676 +
  677 +
  678 + </div>
  679 +
  680 + <h3>Statistics:</h3>
  681 + <div style="overflow: auto">
  682 + <table>
  683 + <tr>
  684 + <th>content_size(bytes)</th>
  685 + <td>44</td>
  686 + </tr>
  687 + <tr>
  688 + <th>response_time(ms)</th>
  689 + <td>62.0</td>
  690 + </tr>
  691 + <tr>
  692 + <th>elapsed(ms)</th>
  693 + <td>57.455</td>
  694 + </tr>
  695 + </table>
  696 + </div>
  697 +
  698 + </div>
  699 + </div>
  700 + </div>
  701 +
  702 +
  703 +
  704 +
  705 + </td>
  706 + </tr>
  707 +
  708 + </table>
  709 +
  710 +</body>
  1 +<head>
  2 + <meta content="text/html; charset=utf-8" http-equiv="content-type" />
  3 + <meta name="viewport" content="width=device-width, initial-scale=1.0">
  4 + <title> - TestReport</title>
  5 + <style>
  6 + body {
  7 + background-color: #f2f2f2;
  8 + color: #333;
  9 + margin: 0 auto;
  10 + width: 960px;
  11 + }
  12 + #summary {
  13 + width: 960px;
  14 + margin-bottom: 20px;
  15 + }
  16 + #summary th {
  17 + background-color: skyblue;
  18 + padding: 5px 12px;
  19 + }
  20 + #summary td {
  21 + background-color: lightblue;
  22 + text-align: center;
  23 + padding: 4px 8px;
  24 + }
  25 + .details {
  26 + width: 960px;
  27 + margin-bottom: 20px;
  28 + }
  29 + .details th {
  30 + background-color: skyblue;
  31 + padding: 5px 12px;
  32 + }
  33 + .details tr .passed {
  34 + background-color: lightgreen;
  35 + }
  36 + .details tr .failed {
  37 + background-color: red;
  38 + }
  39 + .details tr .unchecked {
  40 + background-color: gray;
  41 + }
  42 + .details td {
  43 + background-color: lightblue;
  44 + padding: 5px 12px;
  45 + }
  46 + .details .detail {
  47 + background-color: lightgrey;
  48 + font-size: smaller;
  49 + padding: 5px 10px;
  50 + line-height: 20px;
  51 + text-align: left;
  52 + }
  53 + .details .success {
  54 + background-color: greenyellow;
  55 + }
  56 + .details .error {
  57 + background-color: red;
  58 + }
  59 + .details .failure {
  60 + background-color: salmon;
  61 + }
  62 + .details .skipped {
  63 + background-color: gray;
  64 + }
  65 +
  66 + .button {
  67 + font-size: 1em;
  68 + padding: 6px;
  69 + width: 4em;
  70 + text-align: center;
  71 + background-color: #06d85f;
  72 + border-radius: 20px/50px;
  73 + cursor: pointer;
  74 + transition: all 0.3s ease-out;
  75 + }
  76 + a.button{
  77 + color: gray;
  78 + text-decoration: none;
  79 + display: inline-block;
  80 + }
  81 + .button:hover {
  82 + background: #2cffbd;
  83 + }
  84 +
  85 + .overlay {
  86 + position: fixed;
  87 + top: 0;
  88 + bottom: 0;
  89 + left: 0;
  90 + right: 0;
  91 + background: rgba(0, 0, 0, 0.7);
  92 + transition: opacity 500ms;
  93 + visibility: hidden;
  94 + opacity: 0;
  95 + line-height: 25px;
  96 + }
  97 + .overlay:target {
  98 + visibility: visible;
  99 + opacity: 1;
  100 + }
  101 +
  102 + .popup {
  103 + margin: 70px auto;
  104 + padding: 20px;
  105 + background: #fff;
  106 + border-radius: 10px;
  107 + width: 50%;
  108 + position: relative;
  109 + transition: all 3s ease-in-out;
  110 + }
  111 +
  112 + .popup h2 {
  113 + margin-top: 0;
  114 + color: #333;
  115 + font-family: Tahoma, Arial, sans-serif;
  116 + }
  117 + .popup .close {
  118 + position: absolute;
  119 + top: 20px;
  120 + right: 30px;
  121 + transition: all 200ms;
  122 + font-size: 30px;
  123 + font-weight: bold;
  124 + text-decoration: none;
  125 + color: #333;
  126 + }
  127 + .popup .close:hover {
  128 + color: #06d85f;
  129 + }
  130 + .popup .content {
  131 + max-height: 80%;
  132 + overflow: auto;
  133 + text-align: left;
  134 + }
  135 + .popup .separator {
  136 + color:royalblue
  137 + }
  138 +
  139 + @media screen and (max-width: 700px) {
  140 + .box {
  141 + width: 70%;
  142 + }
  143 + .popup {
  144 + width: 70%;
  145 + }
  146 + }
  147 +
  148 + </style>
  149 +</head>
  150 +
  151 +<body>
  152 + <h1>Test Report: </h1>
  153 +
  154 + <h2>Summary</h2>
  155 + <table id="summary">
  156 + <tr>
  157 + <th>START AT</th>
  158 + <td colspan="4">2020-08-06T02:02:34.973114</td>
  159 + </tr>
  160 + <tr>
  161 + <th>DURATION</th>
  162 + <td colspan="4">0.380 seconds</td>
  163 + </tr>
  164 + <tr>
  165 + <th>PLATFORM</th>
  166 + <td>HttpRunner 2.5.7 </td>
  167 + <td>CPython 3.8.1 </td>
  168 + <td colspan="2">Windows-7-6.1.7601-SP1</td>
  169 + </tr>
  170 + <tr>
  171 + <th>STAT</th>
  172 + <th colspan="2">TESTCASES (success/fail)</th>
  173 + <th colspan="2">TESTSTEPS (success/fail/error/skip)</th>
  174 + </tr>
  175 + <tr>
  176 + <td>total (details) =></td>
  177 + <td colspan="2">1 (1/0)</td>
  178 + <td colspan="2">2 (2/0/0/0)</td>
  179 + </tr>
  180 + </table>
  181 +
  182 + <h2>Details</h2>
  183 +
  184 +
  185 +
  186 + <h3>PURPOSE001:新增意向订单</h3>
  187 + <table id="suite_1" class="details">
  188 + <tr>
  189 + <td>TOTAL: 2</td>
  190 + <td>SUCCESS: 2</td>
  191 + <td>FAILED: 0</td>
  192 + <td>ERROR: 0</td>
  193 + <td>SKIPPED: 0</td>
  194 + </tr>
  195 + <tr>
  196 + <th>Status</th>
  197 + <th colspan="2">Name</th>
  198 + <th>Response Time</th>
  199 + <th>Detail</th>
  200 + </tr>
  201 +
  202 +
  203 +
  204 +
  205 + <tr id="record_1_1">
  206 + <th class="success" style="width:5em;">success</th>
  207 + <td colspan="2">10000000001 登录系统</td>
  208 + <td style="text-align:center;width:6em;">162.01 ms</td>
  209 + <td class="detail">
  210 +
  211 +
  212 +
  213 + <a class="button" href="#popup_log_1_1_1">log-1</a>
  214 + <div id="popup_log_1_1_1" class="overlay">
  215 + <div class="popup">
  216 + <h2>Request and Response data</h2>
  217 + <a class="close" href="#record_1_1_1">&times;</a>
  218 +
  219 + <div class="content">
  220 + <h3>Name: 10000000001 登录系统</h3>
  221 +
  222 +
  223 +
  224 +
  225 +
  226 + <h3>Request:</h3>
  227 + <div style="overflow: auto">
  228 + <table>
  229 +
  230 + <tr>
  231 + <th>url</th>
  232 + <td>
  233 +
  234 + https://public-interface-test.fjmaimaimai.com/partnermg/v1/auth/login
  235 +
  236 + </td>
  237 + </tr>
  238 +
  239 + <tr>
  240 + <th>method</th>
  241 + <td>
  242 +
  243 + POST
  244 +
  245 + </td>
  246 + </tr>
  247 +
  248 + <tr>
  249 + <th>headers</th>
  250 + <td>
  251 +
  252 + <pre>{
  253 + &#34;User-Agent&#34;: &#34;Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.75 Safari/537.36&#34;,
  254 + &#34;Accept-Encoding&#34;: &#34;gzip, deflate&#34;,
  255 + &#34;Accept&#34;: &#34;*/*&#34;,
  256 + &#34;Connection&#34;: &#34;keep-alive&#34;,
  257 + &#34;Content-Type&#34;: &#34;application/json;charset=utf-8&#34;,
  258 + &#34;Content-Length&#34;: &#34;83&#34;
  259 +}</pre>
  260 +
  261 + </td>
  262 + </tr>
  263 +
  264 + <tr>
  265 + <th>body</th>
  266 + <td>
  267 +
  268 + <pre>{
  269 + &#34;password&#34;: &#34;7c4a8d09ca3762af61e59520943dc26494f8941b&#34;,
  270 + &#34;username&#34;: &#34;10000000001&#34;
  271 +}</pre>
  272 +
  273 + </td>
  274 + </tr>
  275 +
  276 + </table>
  277 + </div>
  278 +
  279 + <h3>Response:</h3>
  280 + <div style="overflow: auto">
  281 + <table>
  282 +
  283 + <tr>
  284 + <th>ok</th>
  285 + <td>
  286 +
  287 + True
  288 +
  289 + </td>
  290 + </tr>
  291 +
  292 + <tr>
  293 + <th>url</th>
  294 + <td>
  295 +
  296 + https://public-interface-test.fjmaimaimai.com/partnermg/v1/auth/login
  297 +
  298 + </td>
  299 + </tr>
  300 +
  301 + <tr>
  302 + <th>status_code</th>
  303 + <td>
  304 +
  305 + 200
  306 +
  307 + </td>
  308 + </tr>
  309 +
  310 + <tr>
  311 + <th>reason</th>
  312 + <td>
  313 +
  314 + OK
  315 +
  316 + </td>
  317 + </tr>
  318 +
  319 + <tr>
  320 + <th>cookies</th>
  321 + <td>
  322 +
  323 + {}
  324 +
  325 + </td>
  326 + </tr>
  327 +
  328 + <tr>
  329 + <th>encoding</th>
  330 + <td>
  331 +
  332 + utf-8
  333 +
  334 + </td>
  335 + </tr>
  336 +
  337 + <tr>
  338 + <th>headers</th>
  339 + <td>
  340 +
  341 + <pre>{
  342 + &#34;Date&#34;: &#34;Thu, 06 Aug 2020 02:02:36 GMT&#34;,
  343 + &#34;Content-Type&#34;: &#34;application/json; charset=utf-8&#34;,
  344 + &#34;Transfer-Encoding&#34;: &#34;chunked&#34;,
  345 + &#34;Connection&#34;: &#34;keep-alive&#34;,
  346 + &#34;Vary&#34;: &#34;Accept-Encoding, Accept-Encoding&#34;,
  347 + &#34;Access-Control-Allow-Credentials&#34;: &#34;true&#34;,
  348 + &#34;Access-Control-Allow-Headers&#34;: &#34;Origin,Authorization,Access-Control-Allow-Origin,Content-Type,x-requested-with&#34;,
  349 + &#34;Access-Control-Allow-Methods&#34;: &#34;*&#34;,
  350 + &#34;Access-Control-Allow-Origin&#34;: &#34;*&#34;,
  351 + &#34;Access-Control-Expose-Headers&#34;: &#34;Content-Length&#34;,
  352 + &#34;Strict-Transport-Security&#34;: &#34;max-age=15724800; includeSubDomains&#34;,
  353 + &#34;Content-Encoding&#34;: &#34;gzip&#34;
  354 +}</pre>
  355 +
  356 + </td>
  357 + </tr>
  358 +
  359 + <tr>
  360 + <th>content_type</th>
  361 + <td>
  362 +
  363 + application/json; charset=utf-8
  364 +
  365 + </td>
  366 + </tr>
  367 +
  368 + <tr>
  369 + <th>body</th>
  370 + <td>
  371 +
  372 +
  373 + <pre>{
  374 + &#34;code&#34;: 0,
  375 + &#34;msg&#34;: &#34;ok&#34;,
  376 + &#34;data&#34;: {
  377 + &#34;access&#34;: {
  378 + &#34;accessToken&#34;: &#34;eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE1OTY3MjI1NTYsImlhdCI6MTU5NjY3OTM1NiwiaXNzIjoibW1tX3BhcnRuZXJtZyIsIm5iZiI6MTU5NjY3OTM1NiwidWlkIjoxOH0.JBWKbgqDscAfiTGbRPJd7i_DNRr4NFwHrxD9W3gNiYk&#34;,
  379 + &#34;expiresIn&#34;: 43200
  380 + }
  381 + }
  382 +}</pre>
  383 +
  384 +
  385 + </td>
  386 + </tr>
  387 +
  388 + </table>
  389 + </div>
  390 +
  391 +
  392 + <h3>Validators:</h3>
  393 + <div style="overflow: auto">
  394 +
  395 +
  396 + <table>
  397 + <tr>
  398 + <th>check</th>
  399 + <th>comparator</th>
  400 + <th>expect value</th>
  401 + <th>actual value</th>
  402 + </tr>
  403 +
  404 + <tr>
  405 +
  406 + <td class="passed">
  407 +
  408 + content.msg
  409 + </td>
  410 + <td>equals</td>
  411 + <td>ok</td>
  412 + <td>ok</td>
  413 + </tr>
  414 +
  415 + </table>
  416 +
  417 +
  418 +
  419 +
  420 + </div>
  421 +
  422 + <h3>Statistics:</h3>
  423 + <div style="overflow: auto">
  424 + <table>
  425 + <tr>
  426 + <th>content_size(bytes)</th>
  427 + <td>311</td>
  428 + </tr>
  429 + <tr>
  430 + <th>response_time(ms)</th>
  431 + <td>162.01</td>
  432 + </tr>
  433 + <tr>
  434 + <th>elapsed(ms)</th>
  435 + <td>148.811</td>
  436 + </tr>
  437 + </table>
  438 + </div>
  439 +
  440 + </div>
  441 + </div>
  442 + </div>
  443 +
  444 +
  445 +
  446 +
  447 + </td>
  448 + </tr>
  449 +
  450 +
  451 +
  452 + <tr id="record_1_2">
  453 + <th class="success" style="width:5em;">success</th>
  454 + <td colspan="2">10000000001 新增意向订单</td>
  455 + <td style="text-align:center;width:6em;">42.00 ms</td>
  456 + <td class="detail">
  457 +
  458 +
  459 +
  460 + <a class="button" href="#popup_log_1_2_1">log-1</a>
  461 + <div id="popup_log_1_2_1" class="overlay">
  462 + <div class="popup">
  463 + <h2>Request and Response data</h2>
  464 + <a class="close" href="#record_1_2_1">&times;</a>
  465 +
  466 + <div class="content">
  467 + <h3>Name: 10000000001 新增意向订单</h3>
  468 +
  469 +
  470 +
  471 +
  472 +
  473 + <h3>Request:</h3>
  474 + <div style="overflow: auto">
  475 + <table>
  476 +
  477 + <tr>
  478 + <th>url</th>
  479 + <td>
  480 +
  481 + https://public-interface-test.fjmaimaimai.com/partnermg/v1/order/purpose/update
  482 +
  483 + </td>
  484 + </tr>
  485 +
  486 + <tr>
  487 + <th>method</th>
  488 + <td>
  489 +
  490 + POST
  491 +
  492 + </td>
  493 + </tr>
  494 +
  495 + <tr>
  496 + <th>headers</th>
  497 + <td>
  498 +
  499 + <pre>{
  500 + &#34;User-Agent&#34;: &#34;okhttp/3.12.3&#34;,
  501 + &#34;Accept-Encoding&#34;: &#34;gzip, deflate&#34;,
  502 + &#34;Accept&#34;: &#34;*/*&#34;,
  503 + &#34;Connection&#34;: &#34;keep-alive&#34;,
  504 + &#34;Content-Type&#34;: &#34;application/json;charset=utf-8&#34;,
  505 + &#34;Authorization&#34;: &#34;Bearer bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE1OTY3MjI1NTYsImlhdCI6MTU5NjY3OTM1NiwiaXNzIjoibW1tX3BhcnRuZXJtZyIsIm5iZiI6MTU5NjY3OTM1NiwidWlkIjoxOH0.JBWKbgqDscAfiTGbRPJd7i_DNRr4NFwHrxD9W3gNiYk&#34;,
  506 + &#34;Content-Length&#34;: &#34;378&#34;
  507 +}</pre>
  508 +
  509 + </td>
  510 + </tr>
  511 +
  512 + <tr>
  513 + <th>body</th>
  514 + <td>
  515 +
  516 + <pre>{
  517 + &#34;orderId&#34;: &#34;20200806100235&#34;,
  518 + &#34;buyer&#34;: &#34;我是客户35&#34;,
  519 + &#34;orderDist&#34;: &#34;福建二区&#34;,
  520 + &#34;partnerID&#34;: 29,
  521 + &#34;commissionProportion&#34;: 10.2,
  522 + &#34;product&#34;: [
  523 + {
  524 + &#34;productName&#34;: &#34;产品名称35&#34;,
  525 + &#34;orderNum&#34;: 20,
  526 + &#34;univalence&#34;: 1.12,
  527 + &#34;partnerRatio&#34;: 1.27
  528 + },
  529 + {
  530 + &#34;productName&#34;: &#34;产品名称35&#34;,
  531 + &#34;orderNum&#34;: 25,
  532 + &#34;univalence&#34;: 2.22,
  533 + &#34;partnerRatio&#34;: 5.7
  534 + }
  535 + ]
  536 +}</pre>
  537 +
  538 + </td>
  539 + </tr>
  540 +
  541 + </table>
  542 + </div>
  543 +
  544 + <h3>Response:</h3>
  545 + <div style="overflow: auto">
  546 + <table>
  547 +
  548 + <tr>
  549 + <th>ok</th>
  550 + <td>
  551 +
  552 + True
  553 +
  554 + </td>
  555 + </tr>
  556 +
  557 + <tr>
  558 + <th>url</th>
  559 + <td>
  560 +
  561 + https://public-interface-test.fjmaimaimai.com/partnermg/v1/order/purpose/update
  562 +
  563 + </td>
  564 + </tr>
  565 +
  566 + <tr>
  567 + <th>status_code</th>
  568 + <td>
  569 +
  570 + 200
  571 +
  572 + </td>
  573 + </tr>
  574 +
  575 + <tr>
  576 + <th>reason</th>
  577 + <td>
  578 +
  579 + OK
  580 +
  581 + </td>
  582 + </tr>
  583 +
  584 + <tr>
  585 + <th>cookies</th>
  586 + <td>
  587 +
  588 + {}
  589 +
  590 + </td>
  591 + </tr>
  592 +
  593 + <tr>
  594 + <th>encoding</th>
  595 + <td>
  596 +
  597 + utf-8
  598 +
  599 + </td>
  600 + </tr>
  601 +
  602 + <tr>
  603 + <th>headers</th>
  604 + <td>
  605 +
  606 + <pre>{
  607 + &#34;Date&#34;: &#34;Thu, 06 Aug 2020 02:02:36 GMT&#34;,
  608 + &#34;Content-Type&#34;: &#34;application/json; charset=utf-8&#34;,
  609 + &#34;Content-Length&#34;: &#34;44&#34;,
  610 + &#34;Connection&#34;: &#34;keep-alive&#34;,
  611 + &#34;Access-Control-Allow-Credentials&#34;: &#34;true&#34;,
  612 + &#34;Access-Control-Allow-Headers&#34;: &#34;Origin,Authorization,Access-Control-Allow-Origin,Content-Type,x-requested-with&#34;,
  613 + &#34;Access-Control-Allow-Methods&#34;: &#34;*&#34;,
  614 + &#34;Access-Control-Allow-Origin&#34;: &#34;*&#34;,
  615 + &#34;Access-Control-Expose-Headers&#34;: &#34;Content-Length&#34;,
  616 + &#34;Strict-Transport-Security&#34;: &#34;max-age=15724800; includeSubDomains&#34;
  617 +}</pre>
  618 +
  619 + </td>
  620 + </tr>
  621 +
  622 + <tr>
  623 + <th>content_type</th>
  624 + <td>
  625 +
  626 + application/json; charset=utf-8
  627 +
  628 + </td>
  629 + </tr>
  630 +
  631 + <tr>
  632 + <th>body</th>
  633 + <td>
  634 +
  635 +
  636 + <pre>{
  637 + &#34;code&#34;: 0,
  638 + &#34;msg&#34;: &#34;ok&#34;,
  639 + &#34;data&#34;: {}
  640 +}</pre>
  641 +
  642 +
  643 + </td>
  644 + </tr>
  645 +
  646 + </table>
  647 + </div>
  648 +
  649 +
  650 + <h3>Validators:</h3>
  651 + <div style="overflow: auto">
  652 +
  653 +
  654 + <table>
  655 + <tr>
  656 + <th>check</th>
  657 + <th>comparator</th>
  658 + <th>expect value</th>
  659 + <th>actual value</th>
  660 + </tr>
  661 +
  662 + <tr>
  663 +
  664 + <td class="passed">
  665 +
  666 + content.msg
  667 + </td>
  668 + <td>equals</td>
  669 + <td>ok</td>
  670 + <td>ok</td>
  671 + </tr>
  672 +
  673 + </table>
  674 +
  675 +
  676 +
  677 +
  678 + </div>
  679 +
  680 + <h3>Statistics:</h3>
  681 + <div style="overflow: auto">
  682 + <table>
  683 + <tr>
  684 + <th>content_size(bytes)</th>
  685 + <td>44</td>
  686 + </tr>
  687 + <tr>
  688 + <th>response_time(ms)</th>
  689 + <td>42.0</td>
  690 + </tr>
  691 + <tr>
  692 + <th>elapsed(ms)</th>
  693 + <td>37.245</td>
  694 + </tr>
  695 + </table>
  696 + </div>
  697 +
  698 + </div>
  699 + </div>
  700 + </div>
  701 +
  702 +
  703 +
  704 +
  705 + </td>
  706 + </tr>
  707 +
  708 + </table>
  709 +
  710 +</body>
  1 +<head>
  2 + <meta content="text/html; charset=utf-8" http-equiv="content-type" />
  3 + <meta name="viewport" content="width=device-width, initial-scale=1.0">
  4 + <title> - TestReport</title>
  5 + <style>
  6 + body {
  7 + background-color: #f2f2f2;
  8 + color: #333;
  9 + margin: 0 auto;
  10 + width: 960px;
  11 + }
  12 + #summary {
  13 + width: 960px;
  14 + margin-bottom: 20px;
  15 + }
  16 + #summary th {
  17 + background-color: skyblue;
  18 + padding: 5px 12px;
  19 + }
  20 + #summary td {
  21 + background-color: lightblue;
  22 + text-align: center;
  23 + padding: 4px 8px;
  24 + }
  25 + .details {
  26 + width: 960px;
  27 + margin-bottom: 20px;
  28 + }
  29 + .details th {
  30 + background-color: skyblue;
  31 + padding: 5px 12px;
  32 + }
  33 + .details tr .passed {
  34 + background-color: lightgreen;
  35 + }
  36 + .details tr .failed {
  37 + background-color: red;
  38 + }
  39 + .details tr .unchecked {
  40 + background-color: gray;
  41 + }
  42 + .details td {
  43 + background-color: lightblue;
  44 + padding: 5px 12px;
  45 + }
  46 + .details .detail {
  47 + background-color: lightgrey;
  48 + font-size: smaller;
  49 + padding: 5px 10px;
  50 + line-height: 20px;
  51 + text-align: left;
  52 + }
  53 + .details .success {
  54 + background-color: greenyellow;
  55 + }
  56 + .details .error {
  57 + background-color: red;
  58 + }
  59 + .details .failure {
  60 + background-color: salmon;
  61 + }
  62 + .details .skipped {
  63 + background-color: gray;
  64 + }
  65 +
  66 + .button {
  67 + font-size: 1em;
  68 + padding: 6px;
  69 + width: 4em;
  70 + text-align: center;
  71 + background-color: #06d85f;
  72 + border-radius: 20px/50px;
  73 + cursor: pointer;
  74 + transition: all 0.3s ease-out;
  75 + }
  76 + a.button{
  77 + color: gray;
  78 + text-decoration: none;
  79 + display: inline-block;
  80 + }
  81 + .button:hover {
  82 + background: #2cffbd;
  83 + }
  84 +
  85 + .overlay {
  86 + position: fixed;
  87 + top: 0;
  88 + bottom: 0;
  89 + left: 0;
  90 + right: 0;
  91 + background: rgba(0, 0, 0, 0.7);
  92 + transition: opacity 500ms;
  93 + visibility: hidden;
  94 + opacity: 0;
  95 + line-height: 25px;
  96 + }
  97 + .overlay:target {
  98 + visibility: visible;
  99 + opacity: 1;
  100 + }
  101 +
  102 + .popup {
  103 + margin: 70px auto;
  104 + padding: 20px;
  105 + background: #fff;
  106 + border-radius: 10px;
  107 + width: 50%;
  108 + position: relative;
  109 + transition: all 3s ease-in-out;
  110 + }
  111 +
  112 + .popup h2 {
  113 + margin-top: 0;
  114 + color: #333;
  115 + font-family: Tahoma, Arial, sans-serif;
  116 + }
  117 + .popup .close {
  118 + position: absolute;
  119 + top: 20px;
  120 + right: 30px;
  121 + transition: all 200ms;
  122 + font-size: 30px;
  123 + font-weight: bold;
  124 + text-decoration: none;
  125 + color: #333;
  126 + }
  127 + .popup .close:hover {
  128 + color: #06d85f;
  129 + }
  130 + .popup .content {
  131 + max-height: 80%;
  132 + overflow: auto;
  133 + text-align: left;
  134 + }
  135 + .popup .separator {
  136 + color:royalblue
  137 + }
  138 +
  139 + @media screen and (max-width: 700px) {
  140 + .box {
  141 + width: 70%;
  142 + }
  143 + .popup {
  144 + width: 70%;
  145 + }
  146 + }
  147 +
  148 + </style>
  149 +</head>
  150 +
  151 +<body>
  152 + <h1>Test Report: </h1>
  153 +
  154 + <h2>Summary</h2>
  155 + <table id="summary">
  156 + <tr>
  157 + <th>START AT</th>
  158 + <td colspan="4">2020-08-06T02:02:49.929970</td>
  159 + </tr>
  160 + <tr>
  161 + <th>DURATION</th>
  162 + <td colspan="4">0.488 seconds</td>
  163 + </tr>
  164 + <tr>
  165 + <th>PLATFORM</th>
  166 + <td>HttpRunner 2.5.7 </td>
  167 + <td>CPython 3.8.1 </td>
  168 + <td colspan="2">Windows-7-6.1.7601-SP1</td>
  169 + </tr>
  170 + <tr>
  171 + <th>STAT</th>
  172 + <th colspan="2">TESTCASES (success/fail)</th>
  173 + <th colspan="2">TESTSTEPS (success/fail/error/skip)</th>
  174 + </tr>
  175 + <tr>
  176 + <td>total (details) =></td>
  177 + <td colspan="2">1 (1/0)</td>
  178 + <td colspan="2">2 (2/0/0/0)</td>
  179 + </tr>
  180 + </table>
  181 +
  182 + <h2>Details</h2>
  183 +
  184 +
  185 +
  186 + <h3>PURPOSE001:新增意向订单</h3>
  187 + <table id="suite_1" class="details">
  188 + <tr>
  189 + <td>TOTAL: 2</td>
  190 + <td>SUCCESS: 2</td>
  191 + <td>FAILED: 0</td>
  192 + <td>ERROR: 0</td>
  193 + <td>SKIPPED: 0</td>
  194 + </tr>
  195 + <tr>
  196 + <th>Status</th>
  197 + <th colspan="2">Name</th>
  198 + <th>Response Time</th>
  199 + <th>Detail</th>
  200 + </tr>
  201 +
  202 +
  203 +
  204 +
  205 + <tr id="record_1_1">
  206 + <th class="success" style="width:5em;">success</th>
  207 + <td colspan="2">10000000001 登录系统</td>
  208 + <td style="text-align:center;width:6em;">164.01 ms</td>
  209 + <td class="detail">
  210 +
  211 +
  212 +
  213 + <a class="button" href="#popup_log_1_1_1">log-1</a>
  214 + <div id="popup_log_1_1_1" class="overlay">
  215 + <div class="popup">
  216 + <h2>Request and Response data</h2>
  217 + <a class="close" href="#record_1_1_1">&times;</a>
  218 +
  219 + <div class="content">
  220 + <h3>Name: 10000000001 登录系统</h3>
  221 +
  222 +
  223 +
  224 +
  225 +
  226 + <h3>Request:</h3>
  227 + <div style="overflow: auto">
  228 + <table>
  229 +
  230 + <tr>
  231 + <th>url</th>
  232 + <td>
  233 +
  234 + https://public-interface-test.fjmaimaimai.com/partnermg/v1/auth/login
  235 +
  236 + </td>
  237 + </tr>
  238 +
  239 + <tr>
  240 + <th>method</th>
  241 + <td>
  242 +
  243 + POST
  244 +
  245 + </td>
  246 + </tr>
  247 +
  248 + <tr>
  249 + <th>headers</th>
  250 + <td>
  251 +
  252 + <pre>{
  253 + &#34;User-Agent&#34;: &#34;Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.75 Safari/537.36&#34;,
  254 + &#34;Accept-Encoding&#34;: &#34;gzip, deflate&#34;,
  255 + &#34;Accept&#34;: &#34;*/*&#34;,
  256 + &#34;Connection&#34;: &#34;keep-alive&#34;,
  257 + &#34;Content-Type&#34;: &#34;application/json;charset=utf-8&#34;,
  258 + &#34;Content-Length&#34;: &#34;83&#34;
  259 +}</pre>
  260 +
  261 + </td>
  262 + </tr>
  263 +
  264 + <tr>
  265 + <th>body</th>
  266 + <td>
  267 +
  268 + <pre>{
  269 + &#34;password&#34;: &#34;7c4a8d09ca3762af61e59520943dc26494f8941b&#34;,
  270 + &#34;username&#34;: &#34;10000000001&#34;
  271 +}</pre>
  272 +
  273 + </td>
  274 + </tr>
  275 +
  276 + </table>
  277 + </div>
  278 +
  279 + <h3>Response:</h3>
  280 + <div style="overflow: auto">
  281 + <table>
  282 +
  283 + <tr>
  284 + <th>ok</th>
  285 + <td>
  286 +
  287 + True
  288 +
  289 + </td>
  290 + </tr>
  291 +
  292 + <tr>
  293 + <th>url</th>
  294 + <td>
  295 +
  296 + https://public-interface-test.fjmaimaimai.com/partnermg/v1/auth/login
  297 +
  298 + </td>
  299 + </tr>
  300 +
  301 + <tr>
  302 + <th>status_code</th>
  303 + <td>
  304 +
  305 + 200
  306 +
  307 + </td>
  308 + </tr>
  309 +
  310 + <tr>
  311 + <th>reason</th>
  312 + <td>
  313 +
  314 + OK
  315 +
  316 + </td>
  317 + </tr>
  318 +
  319 + <tr>
  320 + <th>cookies</th>
  321 + <td>
  322 +
  323 + {}
  324 +
  325 + </td>
  326 + </tr>
  327 +
  328 + <tr>
  329 + <th>encoding</th>
  330 + <td>
  331 +
  332 + utf-8
  333 +
  334 + </td>
  335 + </tr>
  336 +
  337 + <tr>
  338 + <th>headers</th>
  339 + <td>
  340 +
  341 + <pre>{
  342 + &#34;Date&#34;: &#34;Thu, 06 Aug 2020 02:02:51 GMT&#34;,
  343 + &#34;Content-Type&#34;: &#34;application/json; charset=utf-8&#34;,
  344 + &#34;Transfer-Encoding&#34;: &#34;chunked&#34;,
  345 + &#34;Connection&#34;: &#34;keep-alive&#34;,
  346 + &#34;Vary&#34;: &#34;Accept-Encoding, Accept-Encoding&#34;,
  347 + &#34;Access-Control-Allow-Credentials&#34;: &#34;true&#34;,
  348 + &#34;Access-Control-Allow-Headers&#34;: &#34;Origin,Authorization,Access-Control-Allow-Origin,Content-Type,x-requested-with&#34;,
  349 + &#34;Access-Control-Allow-Methods&#34;: &#34;*&#34;,
  350 + &#34;Access-Control-Allow-Origin&#34;: &#34;*&#34;,
  351 + &#34;Access-Control-Expose-Headers&#34;: &#34;Content-Length&#34;,
  352 + &#34;Strict-Transport-Security&#34;: &#34;max-age=15724800; includeSubDomains&#34;,
  353 + &#34;Content-Encoding&#34;: &#34;gzip&#34;
  354 +}</pre>
  355 +
  356 + </td>
  357 + </tr>
  358 +
  359 + <tr>
  360 + <th>content_type</th>
  361 + <td>
  362 +
  363 + application/json; charset=utf-8
  364 +
  365 + </td>
  366 + </tr>
  367 +
  368 + <tr>
  369 + <th>body</th>
  370 + <td>
  371 +
  372 +
  373 + <pre>{
  374 + &#34;code&#34;: 0,
  375 + &#34;msg&#34;: &#34;ok&#34;,
  376 + &#34;data&#34;: {
  377 + &#34;access&#34;: {
  378 + &#34;accessToken&#34;: &#34;eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE1OTY3MjI1NzEsImlhdCI6MTU5NjY3OTM3MSwiaXNzIjoibW1tX3BhcnRuZXJtZyIsIm5iZiI6MTU5NjY3OTM3MSwidWlkIjoxOH0.lrnK_7eU-6hP6CgCSEjiZgTGQUrW3LkO358UD14DKBc&#34;,
  379 + &#34;expiresIn&#34;: 43200
  380 + }
  381 + }
  382 +}</pre>
  383 +
  384 +
  385 + </td>
  386 + </tr>
  387 +
  388 + </table>
  389 + </div>
  390 +
  391 +
  392 + <h3>Validators:</h3>
  393 + <div style="overflow: auto">
  394 +
  395 +
  396 + <table>
  397 + <tr>
  398 + <th>check</th>
  399 + <th>comparator</th>
  400 + <th>expect value</th>
  401 + <th>actual value</th>
  402 + </tr>
  403 +
  404 + <tr>
  405 +
  406 + <td class="passed">
  407 +
  408 + content.msg
  409 + </td>
  410 + <td>equals</td>
  411 + <td>ok</td>
  412 + <td>ok</td>
  413 + </tr>
  414 +
  415 + </table>
  416 +
  417 +
  418 +
  419 +
  420 + </div>
  421 +
  422 + <h3>Statistics:</h3>
  423 + <div style="overflow: auto">
  424 + <table>
  425 + <tr>
  426 + <th>content_size(bytes)</th>
  427 + <td>311</td>
  428 + </tr>
  429 + <tr>
  430 + <th>response_time(ms)</th>
  431 + <td>164.01</td>
  432 + </tr>
  433 + <tr>
  434 + <th>elapsed(ms)</th>
  435 + <td>157.814</td>
  436 + </tr>
  437 + </table>
  438 + </div>
  439 +
  440 + </div>
  441 + </div>
  442 + </div>
  443 +
  444 +
  445 +
  446 +
  447 + </td>
  448 + </tr>
  449 +
  450 +
  451 +
  452 + <tr id="record_1_2">
  453 + <th class="success" style="width:5em;">success</th>
  454 + <td colspan="2">10000000001 新增意向订单</td>
  455 + <td style="text-align:center;width:6em;">59.00 ms</td>
  456 + <td class="detail">
  457 +
  458 +
  459 +
  460 + <a class="button" href="#popup_log_1_2_1">log-1</a>
  461 + <div id="popup_log_1_2_1" class="overlay">
  462 + <div class="popup">
  463 + <h2>Request and Response data</h2>
  464 + <a class="close" href="#record_1_2_1">&times;</a>
  465 +
  466 + <div class="content">
  467 + <h3>Name: 10000000001 新增意向订单</h3>
  468 +
  469 +
  470 +
  471 +
  472 +
  473 + <h3>Request:</h3>
  474 + <div style="overflow: auto">
  475 + <table>
  476 +
  477 + <tr>
  478 + <th>url</th>
  479 + <td>
  480 +
  481 + https://public-interface-test.fjmaimaimai.com/partnermg/v1/order/purpose/update
  482 +
  483 + </td>
  484 + </tr>
  485 +
  486 + <tr>
  487 + <th>method</th>
  488 + <td>
  489 +
  490 + POST
  491 +
  492 + </td>
  493 + </tr>
  494 +
  495 + <tr>
  496 + <th>headers</th>
  497 + <td>
  498 +
  499 + <pre>{
  500 + &#34;User-Agent&#34;: &#34;okhttp/3.12.3&#34;,
  501 + &#34;Accept-Encoding&#34;: &#34;gzip, deflate&#34;,
  502 + &#34;Accept&#34;: &#34;*/*&#34;,
  503 + &#34;Connection&#34;: &#34;keep-alive&#34;,
  504 + &#34;Content-Type&#34;: &#34;application/json;charset=utf-8&#34;,
  505 + &#34;Authorization&#34;: &#34;Bearer bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE1OTY3MjI1NzEsImlhdCI6MTU5NjY3OTM3MSwiaXNzIjoibW1tX3BhcnRuZXJtZyIsIm5iZiI6MTU5NjY3OTM3MSwidWlkIjoxOH0.lrnK_7eU-6hP6CgCSEjiZgTGQUrW3LkO358UD14DKBc&#34;,
  506 + &#34;Content-Length&#34;: &#34;274&#34;
  507 +}</pre>
  508 +
  509 + </td>
  510 + </tr>
  511 +
  512 + <tr>
  513 + <th>body</th>
  514 + <td>
  515 +
  516 + <pre>{
  517 + &#34;orderId&#34;: &#34;20200806100250&#34;,
  518 + &#34;buyer&#34;: &#34;我是客户50&#34;,
  519 + &#34;orderDist&#34;: &#34;福建二区&#34;,
  520 + &#34;partnerID&#34;: 29,
  521 + &#34;commissionProportion&#34;: 10.2,
  522 + &#34;product&#34;: [
  523 + {
  524 + &#34;productName&#34;: &#34;产品名称50&#34;,
  525 + &#34;orderNum&#34;: 20,
  526 + &#34;univalence&#34;: 1.12,
  527 + &#34;partnerRatio&#34;: 1.27
  528 + }
  529 + ]
  530 +}</pre>
  531 +
  532 + </td>
  533 + </tr>
  534 +
  535 + </table>
  536 + </div>
  537 +
  538 + <h3>Response:</h3>
  539 + <div style="overflow: auto">
  540 + <table>
  541 +
  542 + <tr>
  543 + <th>ok</th>
  544 + <td>
  545 +
  546 + True
  547 +
  548 + </td>
  549 + </tr>
  550 +
  551 + <tr>
  552 + <th>url</th>
  553 + <td>
  554 +
  555 + https://public-interface-test.fjmaimaimai.com/partnermg/v1/order/purpose/update
  556 +
  557 + </td>
  558 + </tr>
  559 +
  560 + <tr>
  561 + <th>status_code</th>
  562 + <td>
  563 +
  564 + 200
  565 +
  566 + </td>
  567 + </tr>
  568 +
  569 + <tr>
  570 + <th>reason</th>
  571 + <td>
  572 +
  573 + OK
  574 +
  575 + </td>
  576 + </tr>
  577 +
  578 + <tr>
  579 + <th>cookies</th>
  580 + <td>
  581 +
  582 + {}
  583 +
  584 + </td>
  585 + </tr>
  586 +
  587 + <tr>
  588 + <th>encoding</th>
  589 + <td>
  590 +
  591 + utf-8
  592 +
  593 + </td>
  594 + </tr>
  595 +
  596 + <tr>
  597 + <th>headers</th>
  598 + <td>
  599 +
  600 + <pre>{
  601 + &#34;Date&#34;: &#34;Thu, 06 Aug 2020 02:02:51 GMT&#34;,
  602 + &#34;Content-Type&#34;: &#34;application/json; charset=utf-8&#34;,
  603 + &#34;Content-Length&#34;: &#34;44&#34;,
  604 + &#34;Connection&#34;: &#34;keep-alive&#34;,
  605 + &#34;Access-Control-Allow-Credentials&#34;: &#34;true&#34;,
  606 + &#34;Access-Control-Allow-Headers&#34;: &#34;Origin,Authorization,Access-Control-Allow-Origin,Content-Type,x-requested-with&#34;,
  607 + &#34;Access-Control-Allow-Methods&#34;: &#34;*&#34;,
  608 + &#34;Access-Control-Allow-Origin&#34;: &#34;*&#34;,
  609 + &#34;Access-Control-Expose-Headers&#34;: &#34;Content-Length&#34;,
  610 + &#34;Strict-Transport-Security&#34;: &#34;max-age=15724800; includeSubDomains&#34;
  611 +}</pre>
  612 +
  613 + </td>
  614 + </tr>
  615 +
  616 + <tr>
  617 + <th>content_type</th>
  618 + <td>
  619 +
  620 + application/json; charset=utf-8
  621 +
  622 + </td>
  623 + </tr>
  624 +
  625 + <tr>
  626 + <th>body</th>
  627 + <td>
  628 +
  629 +
  630 + <pre>{
  631 + &#34;code&#34;: 0,
  632 + &#34;msg&#34;: &#34;ok&#34;,
  633 + &#34;data&#34;: {}
  634 +}</pre>
  635 +
  636 +
  637 + </td>
  638 + </tr>
  639 +
  640 + </table>
  641 + </div>
  642 +
  643 +
  644 + <h3>Validators:</h3>
  645 + <div style="overflow: auto">
  646 +
  647 +
  648 + <table>
  649 + <tr>
  650 + <th>check</th>
  651 + <th>comparator</th>
  652 + <th>expect value</th>
  653 + <th>actual value</th>
  654 + </tr>
  655 +
  656 + <tr>
  657 +
  658 + <td class="passed">
  659 +
  660 + content.msg
  661 + </td>
  662 + <td>equals</td>
  663 + <td>ok</td>
  664 + <td>ok</td>
  665 + </tr>
  666 +
  667 + </table>
  668 +
  669 +
  670 +
  671 +
  672 + </div>
  673 +
  674 + <h3>Statistics:</h3>
  675 + <div style="overflow: auto">
  676 + <table>
  677 + <tr>
  678 + <th>content_size(bytes)</th>
  679 + <td>44</td>
  680 + </tr>
  681 + <tr>
  682 + <th>response_time(ms)</th>
  683 + <td>59.0</td>
  684 + </tr>
  685 + <tr>
  686 + <th>elapsed(ms)</th>
  687 + <td>53.906</td>
  688 + </tr>
  689 + </table>
  690 + </div>
  691 +
  692 + </div>
  693 + </div>
  694 + </div>
  695 +
  696 +
  697 +
  698 +
  699 + </td>
  700 + </tr>
  701 +
  702 + </table>
  703 +
  704 +</body>
  1 +<head>
  2 + <meta content="text/html; charset=utf-8" http-equiv="content-type" />
  3 + <meta name="viewport" content="width=device-width, initial-scale=1.0">
  4 + <title> - TestReport</title>
  5 + <style>
  6 + body {
  7 + background-color: #f2f2f2;
  8 + color: #333;
  9 + margin: 0 auto;
  10 + width: 960px;
  11 + }
  12 + #summary {
  13 + width: 960px;
  14 + margin-bottom: 20px;
  15 + }
  16 + #summary th {
  17 + background-color: skyblue;
  18 + padding: 5px 12px;
  19 + }
  20 + #summary td {
  21 + background-color: lightblue;
  22 + text-align: center;
  23 + padding: 4px 8px;
  24 + }
  25 + .details {
  26 + width: 960px;
  27 + margin-bottom: 20px;
  28 + }
  29 + .details th {
  30 + background-color: skyblue;
  31 + padding: 5px 12px;
  32 + }
  33 + .details tr .passed {
  34 + background-color: lightgreen;
  35 + }
  36 + .details tr .failed {
  37 + background-color: red;
  38 + }
  39 + .details tr .unchecked {
  40 + background-color: gray;
  41 + }
  42 + .details td {
  43 + background-color: lightblue;
  44 + padding: 5px 12px;
  45 + }
  46 + .details .detail {
  47 + background-color: lightgrey;
  48 + font-size: smaller;
  49 + padding: 5px 10px;
  50 + line-height: 20px;
  51 + text-align: left;
  52 + }
  53 + .details .success {
  54 + background-color: greenyellow;
  55 + }
  56 + .details .error {
  57 + background-color: red;
  58 + }
  59 + .details .failure {
  60 + background-color: salmon;
  61 + }
  62 + .details .skipped {
  63 + background-color: gray;
  64 + }
  65 +
  66 + .button {
  67 + font-size: 1em;
  68 + padding: 6px;
  69 + width: 4em;
  70 + text-align: center;
  71 + background-color: #06d85f;
  72 + border-radius: 20px/50px;
  73 + cursor: pointer;
  74 + transition: all 0.3s ease-out;
  75 + }
  76 + a.button{
  77 + color: gray;
  78 + text-decoration: none;
  79 + display: inline-block;
  80 + }
  81 + .button:hover {
  82 + background: #2cffbd;
  83 + }
  84 +
  85 + .overlay {
  86 + position: fixed;
  87 + top: 0;
  88 + bottom: 0;
  89 + left: 0;
  90 + right: 0;
  91 + background: rgba(0, 0, 0, 0.7);
  92 + transition: opacity 500ms;
  93 + visibility: hidden;
  94 + opacity: 0;
  95 + line-height: 25px;
  96 + }
  97 + .overlay:target {
  98 + visibility: visible;
  99 + opacity: 1;
  100 + }
  101 +
  102 + .popup {
  103 + margin: 70px auto;
  104 + padding: 20px;
  105 + background: #fff;
  106 + border-radius: 10px;
  107 + width: 50%;
  108 + position: relative;
  109 + transition: all 3s ease-in-out;
  110 + }
  111 +
  112 + .popup h2 {
  113 + margin-top: 0;
  114 + color: #333;
  115 + font-family: Tahoma, Arial, sans-serif;
  116 + }
  117 + .popup .close {
  118 + position: absolute;
  119 + top: 20px;
  120 + right: 30px;
  121 + transition: all 200ms;
  122 + font-size: 30px;
  123 + font-weight: bold;
  124 + text-decoration: none;
  125 + color: #333;
  126 + }
  127 + .popup .close:hover {
  128 + color: #06d85f;
  129 + }
  130 + .popup .content {
  131 + max-height: 80%;
  132 + overflow: auto;
  133 + text-align: left;
  134 + }
  135 + .popup .separator {
  136 + color:royalblue
  137 + }
  138 +
  139 + @media screen and (max-width: 700px) {
  140 + .box {
  141 + width: 70%;
  142 + }
  143 + .popup {
  144 + width: 70%;
  145 + }
  146 + }
  147 +
  148 + </style>
  149 +</head>
  150 +
  151 +<body>
  152 + <h1>Test Report: </h1>
  153 +
  154 + <h2>Summary</h2>
  155 + <table id="summary">
  156 + <tr>
  157 + <th>START AT</th>
  158 + <td colspan="4">2020-08-06T02:23:37.373320</td>
  159 + </tr>
  160 + <tr>
  161 + <th>DURATION</th>
  162 + <td colspan="4">0.333 seconds</td>
  163 + </tr>
  164 + <tr>
  165 + <th>PLATFORM</th>
  166 + <td>HttpRunner 2.5.7 </td>
  167 + <td>CPython 3.8.1 </td>
  168 + <td colspan="2">Windows-7-6.1.7601-SP1</td>
  169 + </tr>
  170 + <tr>
  171 + <th>STAT</th>
  172 + <th colspan="2">TESTCASES (success/fail)</th>
  173 + <th colspan="2">TESTSTEPS (success/fail/error/skip)</th>
  174 + </tr>
  175 + <tr>
  176 + <td>total (details) =></td>
  177 + <td colspan="2">1 (1/0)</td>
  178 + <td colspan="2">2 (2/0/0/0)</td>
  179 + </tr>
  180 + </table>
  181 +
  182 + <h2>Details</h2>
  183 +
  184 +
  185 +
  186 + <h3>PURPOSE001:新增意向订单</h3>
  187 + <table id="suite_1" class="details">
  188 + <tr>
  189 + <td>TOTAL: 2</td>
  190 + <td>SUCCESS: 2</td>
  191 + <td>FAILED: 0</td>
  192 + <td>ERROR: 0</td>
  193 + <td>SKIPPED: 0</td>
  194 + </tr>
  195 + <tr>
  196 + <th>Status</th>
  197 + <th colspan="2">Name</th>
  198 + <th>Response Time</th>
  199 + <th>Detail</th>
  200 + </tr>
  201 +
  202 +
  203 +
  204 +
  205 + <tr id="record_1_1">
  206 + <th class="success" style="width:5em;">success</th>
  207 + <td colspan="2">10000000001 登录系统</td>
  208 + <td style="text-align:center;width:6em;">143.01 ms</td>
  209 + <td class="detail">
  210 +
  211 +
  212 +
  213 + <a class="button" href="#popup_log_1_1_1">log-1</a>
  214 + <div id="popup_log_1_1_1" class="overlay">
  215 + <div class="popup">
  216 + <h2>Request and Response data</h2>
  217 + <a class="close" href="#record_1_1_1">&times;</a>
  218 +
  219 + <div class="content">
  220 + <h3>Name: 10000000001 登录系统</h3>
  221 +
  222 +
  223 +
  224 +
  225 +
  226 + <h3>Request:</h3>
  227 + <div style="overflow: auto">
  228 + <table>
  229 +
  230 + <tr>
  231 + <th>url</th>
  232 + <td>
  233 +
  234 + https://public-interface-test.fjmaimaimai.com/partnermg/v1/auth/login
  235 +
  236 + </td>
  237 + </tr>
  238 +
  239 + <tr>
  240 + <th>method</th>
  241 + <td>
  242 +
  243 + POST
  244 +
  245 + </td>
  246 + </tr>
  247 +
  248 + <tr>
  249 + <th>headers</th>
  250 + <td>
  251 +
  252 + <pre>{
  253 + &#34;User-Agent&#34;: &#34;Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.75 Safari/537.36&#34;,
  254 + &#34;Accept-Encoding&#34;: &#34;gzip, deflate&#34;,
  255 + &#34;Accept&#34;: &#34;*/*&#34;,
  256 + &#34;Connection&#34;: &#34;keep-alive&#34;,
  257 + &#34;Content-Type&#34;: &#34;application/json;charset=utf-8&#34;,
  258 + &#34;Content-Length&#34;: &#34;83&#34;
  259 +}</pre>
  260 +
  261 + </td>
  262 + </tr>
  263 +
  264 + <tr>
  265 + <th>body</th>
  266 + <td>
  267 +
  268 + <pre>{
  269 + &#34;password&#34;: &#34;7c4a8d09ca3762af61e59520943dc26494f8941b&#34;,
  270 + &#34;username&#34;: &#34;10000000001&#34;
  271 +}</pre>
  272 +
  273 + </td>
  274 + </tr>
  275 +
  276 + </table>
  277 + </div>
  278 +
  279 + <h3>Response:</h3>
  280 + <div style="overflow: auto">
  281 + <table>
  282 +
  283 + <tr>
  284 + <th>ok</th>
  285 + <td>
  286 +
  287 + True
  288 +
  289 + </td>
  290 + </tr>
  291 +
  292 + <tr>
  293 + <th>url</th>
  294 + <td>
  295 +
  296 + https://public-interface-test.fjmaimaimai.com/partnermg/v1/auth/login
  297 +
  298 + </td>
  299 + </tr>
  300 +
  301 + <tr>
  302 + <th>status_code</th>
  303 + <td>
  304 +
  305 + 200
  306 +
  307 + </td>
  308 + </tr>
  309 +
  310 + <tr>
  311 + <th>reason</th>
  312 + <td>
  313 +
  314 + OK
  315 +
  316 + </td>
  317 + </tr>
  318 +
  319 + <tr>
  320 + <th>cookies</th>
  321 + <td>
  322 +
  323 + {}
  324 +
  325 + </td>
  326 + </tr>
  327 +
  328 + <tr>
  329 + <th>encoding</th>
  330 + <td>
  331 +
  332 + utf-8
  333 +
  334 + </td>
  335 + </tr>
  336 +
  337 + <tr>
  338 + <th>headers</th>
  339 + <td>
  340 +
  341 + <pre>{
  342 + &#34;Date&#34;: &#34;Thu, 06 Aug 2020 02:23:39 GMT&#34;,
  343 + &#34;Content-Type&#34;: &#34;application/json; charset=utf-8&#34;,
  344 + &#34;Transfer-Encoding&#34;: &#34;chunked&#34;,
  345 + &#34;Connection&#34;: &#34;keep-alive&#34;,
  346 + &#34;Vary&#34;: &#34;Accept-Encoding, Accept-Encoding&#34;,
  347 + &#34;Access-Control-Allow-Credentials&#34;: &#34;true&#34;,
  348 + &#34;Access-Control-Allow-Headers&#34;: &#34;Origin,Authorization,Access-Control-Allow-Origin,Content-Type,x-requested-with&#34;,
  349 + &#34;Access-Control-Allow-Methods&#34;: &#34;*&#34;,
  350 + &#34;Access-Control-Allow-Origin&#34;: &#34;*&#34;,
  351 + &#34;Access-Control-Expose-Headers&#34;: &#34;Content-Length&#34;,
  352 + &#34;Strict-Transport-Security&#34;: &#34;max-age=15724800; includeSubDomains&#34;,
  353 + &#34;Content-Encoding&#34;: &#34;gzip&#34;
  354 +}</pre>
  355 +
  356 + </td>
  357 + </tr>
  358 +
  359 + <tr>
  360 + <th>content_type</th>
  361 + <td>
  362 +
  363 + application/json; charset=utf-8
  364 +
  365 + </td>
  366 + </tr>
  367 +
  368 + <tr>
  369 + <th>body</th>
  370 + <td>
  371 +
  372 +
  373 + <pre>{
  374 + &#34;code&#34;: 0,
  375 + &#34;msg&#34;: &#34;ok&#34;,
  376 + &#34;data&#34;: {
  377 + &#34;access&#34;: {
  378 + &#34;accessToken&#34;: &#34;eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE1OTY3MjM4MTksImlhdCI6MTU5NjY4MDYxOSwiaXNzIjoibW1tX3BhcnRuZXJtZyIsIm5iZiI6MTU5NjY4MDYxOSwidWlkIjoxOH0.vsjd1S1RXHC8yEnTE5AzlkE2nYdYowiW7nBqxXxJqTw&#34;,
  379 + &#34;expiresIn&#34;: 43200
  380 + }
  381 + }
  382 +}</pre>
  383 +
  384 +
  385 + </td>
  386 + </tr>
  387 +
  388 + </table>
  389 + </div>
  390 +
  391 +
  392 + <h3>Validators:</h3>
  393 + <div style="overflow: auto">
  394 +
  395 +
  396 + <table>
  397 + <tr>
  398 + <th>check</th>
  399 + <th>comparator</th>
  400 + <th>expect value</th>
  401 + <th>actual value</th>
  402 + </tr>
  403 +
  404 + <tr>
  405 +
  406 + <td class="passed">
  407 +
  408 + content.msg
  409 + </td>
  410 + <td>equals</td>
  411 + <td>ok</td>
  412 + <td>ok</td>
  413 + </tr>
  414 +
  415 + </table>
  416 +
  417 +
  418 +
  419 +
  420 + </div>
  421 +
  422 + <h3>Statistics:</h3>
  423 + <div style="overflow: auto">
  424 + <table>
  425 + <tr>
  426 + <th>content_size(bytes)</th>
  427 + <td>311</td>
  428 + </tr>
  429 + <tr>
  430 + <th>response_time(ms)</th>
  431 + <td>143.01</td>
  432 + </tr>
  433 + <tr>
  434 + <th>elapsed(ms)</th>
  435 + <td>137.372</td>
  436 + </tr>
  437 + </table>
  438 + </div>
  439 +
  440 + </div>
  441 + </div>
  442 + </div>
  443 +
  444 +
  445 +
  446 +
  447 + </td>
  448 + </tr>
  449 +
  450 +
  451 +
  452 + <tr id="record_1_2">
  453 + <th class="success" style="width:5em;">success</th>
  454 + <td colspan="2">10000000001 新增意向订单</td>
  455 + <td style="text-align:center;width:6em;">46.00 ms</td>
  456 + <td class="detail">
  457 +
  458 +
  459 +
  460 + <a class="button" href="#popup_log_1_2_1">log-1</a>
  461 + <div id="popup_log_1_2_1" class="overlay">
  462 + <div class="popup">
  463 + <h2>Request and Response data</h2>
  464 + <a class="close" href="#record_1_2_1">&times;</a>
  465 +
  466 + <div class="content">
  467 + <h3>Name: 10000000001 新增意向订单</h3>
  468 +
  469 +
  470 +
  471 +
  472 +
  473 + <h3>Request:</h3>
  474 + <div style="overflow: auto">
  475 + <table>
  476 +
  477 + <tr>
  478 + <th>url</th>
  479 + <td>
  480 +
  481 + https://public-interface-test.fjmaimaimai.com/partnermg/v1/order/purpose/update
  482 +
  483 + </td>
  484 + </tr>
  485 +
  486 + <tr>
  487 + <th>method</th>
  488 + <td>
  489 +
  490 + POST
  491 +
  492 + </td>
  493 + </tr>
  494 +
  495 + <tr>
  496 + <th>headers</th>
  497 + <td>
  498 +
  499 + <pre>{
  500 + &#34;User-Agent&#34;: &#34;okhttp/3.12.3&#34;,
  501 + &#34;Accept-Encoding&#34;: &#34;gzip, deflate&#34;,
  502 + &#34;Accept&#34;: &#34;*/*&#34;,
  503 + &#34;Connection&#34;: &#34;keep-alive&#34;,
  504 + &#34;Content-Type&#34;: &#34;application/json;charset=utf-8&#34;,
  505 + &#34;Authorization&#34;: &#34;Bearer bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE1OTY3MjM4MTksImlhdCI6MTU5NjY4MDYxOSwiaXNzIjoibW1tX3BhcnRuZXJtZyIsIm5iZiI6MTU5NjY4MDYxOSwidWlkIjoxOH0.vsjd1S1RXHC8yEnTE5AzlkE2nYdYowiW7nBqxXxJqTw&#34;,
  506 + &#34;Content-Length&#34;: &#34;274&#34;
  507 +}</pre>
  508 +
  509 + </td>
  510 + </tr>
  511 +
  512 + <tr>
  513 + <th>body</th>
  514 + <td>
  515 +
  516 + <pre>{
  517 + &#34;orderId&#34;: &#34;20200806102337&#34;,
  518 + &#34;buyer&#34;: &#34;我是客户37&#34;,
  519 + &#34;orderDist&#34;: &#34;福建二区&#34;,
  520 + &#34;partnerID&#34;: 29,
  521 + &#34;commissionProportion&#34;: 10.2,
  522 + &#34;product&#34;: [
  523 + {
  524 + &#34;productName&#34;: &#34;产品名称37&#34;,
  525 + &#34;orderNum&#34;: 20,
  526 + &#34;univalence&#34;: 1.12,
  527 + &#34;partnerRatio&#34;: 1.27
  528 + }
  529 + ]
  530 +}</pre>
  531 +
  532 + </td>
  533 + </tr>
  534 +
  535 + </table>
  536 + </div>
  537 +
  538 + <h3>Response:</h3>
  539 + <div style="overflow: auto">
  540 + <table>
  541 +
  542 + <tr>
  543 + <th>ok</th>
  544 + <td>
  545 +
  546 + True
  547 +
  548 + </td>
  549 + </tr>
  550 +
  551 + <tr>
  552 + <th>url</th>
  553 + <td>
  554 +
  555 + https://public-interface-test.fjmaimaimai.com/partnermg/v1/order/purpose/update
  556 +
  557 + </td>
  558 + </tr>
  559 +
  560 + <tr>
  561 + <th>status_code</th>
  562 + <td>
  563 +
  564 + 200
  565 +
  566 + </td>
  567 + </tr>
  568 +
  569 + <tr>
  570 + <th>reason</th>
  571 + <td>
  572 +
  573 + OK
  574 +
  575 + </td>
  576 + </tr>
  577 +
  578 + <tr>
  579 + <th>cookies</th>
  580 + <td>
  581 +
  582 + {}
  583 +
  584 + </td>
  585 + </tr>
  586 +
  587 + <tr>
  588 + <th>encoding</th>
  589 + <td>
  590 +
  591 + utf-8
  592 +
  593 + </td>
  594 + </tr>
  595 +
  596 + <tr>
  597 + <th>headers</th>
  598 + <td>
  599 +
  600 + <pre>{
  601 + &#34;Date&#34;: &#34;Thu, 06 Aug 2020 02:23:39 GMT&#34;,
  602 + &#34;Content-Type&#34;: &#34;application/json; charset=utf-8&#34;,
  603 + &#34;Content-Length&#34;: &#34;44&#34;,
  604 + &#34;Connection&#34;: &#34;keep-alive&#34;,
  605 + &#34;Access-Control-Allow-Credentials&#34;: &#34;true&#34;,
  606 + &#34;Access-Control-Allow-Headers&#34;: &#34;Origin,Authorization,Access-Control-Allow-Origin,Content-Type,x-requested-with&#34;,
  607 + &#34;Access-Control-Allow-Methods&#34;: &#34;*&#34;,
  608 + &#34;Access-Control-Allow-Origin&#34;: &#34;*&#34;,
  609 + &#34;Access-Control-Expose-Headers&#34;: &#34;Content-Length&#34;,
  610 + &#34;Strict-Transport-Security&#34;: &#34;max-age=15724800; includeSubDomains&#34;
  611 +}</pre>
  612 +
  613 + </td>
  614 + </tr>
  615 +
  616 + <tr>
  617 + <th>content_type</th>
  618 + <td>
  619 +
  620 + application/json; charset=utf-8
  621 +
  622 + </td>
  623 + </tr>
  624 +
  625 + <tr>
  626 + <th>body</th>
  627 + <td>
  628 +
  629 +
  630 + <pre>{
  631 + &#34;code&#34;: 0,
  632 + &#34;msg&#34;: &#34;ok&#34;,
  633 + &#34;data&#34;: {}
  634 +}</pre>
  635 +
  636 +
  637 + </td>
  638 + </tr>
  639 +
  640 + </table>
  641 + </div>
  642 +
  643 +
  644 + <h3>Validators:</h3>
  645 + <div style="overflow: auto">
  646 +
  647 +
  648 + <table>
  649 + <tr>
  650 + <th>check</th>
  651 + <th>comparator</th>
  652 + <th>expect value</th>
  653 + <th>actual value</th>
  654 + </tr>
  655 +
  656 + <tr>
  657 +
  658 + <td class="passed">
  659 +
  660 + content.msg
  661 + </td>
  662 + <td>equals</td>
  663 + <td>ok</td>
  664 + <td>ok</td>
  665 + </tr>
  666 +
  667 + </table>
  668 +
  669 +
  670 +
  671 +
  672 + </div>
  673 +
  674 + <h3>Statistics:</h3>
  675 + <div style="overflow: auto">
  676 + <table>
  677 + <tr>
  678 + <th>content_size(bytes)</th>
  679 + <td>44</td>
  680 + </tr>
  681 + <tr>
  682 + <th>response_time(ms)</th>
  683 + <td>46.0</td>
  684 + </tr>
  685 + <tr>
  686 + <th>elapsed(ms)</th>
  687 + <td>37.876</td>
  688 + </tr>
  689 + </table>
  690 + </div>
  691 +
  692 + </div>
  693 + </div>
  694 + </div>
  695 +
  696 +
  697 +
  698 +
  699 + </td>
  700 + </tr>
  701 +
  702 + </table>
  703 +
  704 +</body>
  1 +<head>
  2 + <meta content="text/html; charset=utf-8" http-equiv="content-type" />
  3 + <meta name="viewport" content="width=device-width, initial-scale=1.0">
  4 + <title> - TestReport</title>
  5 + <style>
  6 + body {
  7 + background-color: #f2f2f2;
  8 + color: #333;
  9 + margin: 0 auto;
  10 + width: 960px;
  11 + }
  12 + #summary {
  13 + width: 960px;
  14 + margin-bottom: 20px;
  15 + }
  16 + #summary th {
  17 + background-color: skyblue;
  18 + padding: 5px 12px;
  19 + }
  20 + #summary td {
  21 + background-color: lightblue;
  22 + text-align: center;
  23 + padding: 4px 8px;
  24 + }
  25 + .details {
  26 + width: 960px;
  27 + margin-bottom: 20px;
  28 + }
  29 + .details th {
  30 + background-color: skyblue;
  31 + padding: 5px 12px;
  32 + }
  33 + .details tr .passed {
  34 + background-color: lightgreen;
  35 + }
  36 + .details tr .failed {
  37 + background-color: red;
  38 + }
  39 + .details tr .unchecked {
  40 + background-color: gray;
  41 + }
  42 + .details td {
  43 + background-color: lightblue;
  44 + padding: 5px 12px;
  45 + }
  46 + .details .detail {
  47 + background-color: lightgrey;
  48 + font-size: smaller;
  49 + padding: 5px 10px;
  50 + line-height: 20px;
  51 + text-align: left;
  52 + }
  53 + .details .success {
  54 + background-color: greenyellow;
  55 + }
  56 + .details .error {
  57 + background-color: red;
  58 + }
  59 + .details .failure {
  60 + background-color: salmon;
  61 + }
  62 + .details .skipped {
  63 + background-color: gray;
  64 + }
  65 +
  66 + .button {
  67 + font-size: 1em;
  68 + padding: 6px;
  69 + width: 4em;
  70 + text-align: center;
  71 + background-color: #06d85f;
  72 + border-radius: 20px/50px;
  73 + cursor: pointer;
  74 + transition: all 0.3s ease-out;
  75 + }
  76 + a.button{
  77 + color: gray;
  78 + text-decoration: none;
  79 + display: inline-block;
  80 + }
  81 + .button:hover {
  82 + background: #2cffbd;
  83 + }
  84 +
  85 + .overlay {
  86 + position: fixed;
  87 + top: 0;
  88 + bottom: 0;
  89 + left: 0;
  90 + right: 0;
  91 + background: rgba(0, 0, 0, 0.7);
  92 + transition: opacity 500ms;
  93 + visibility: hidden;
  94 + opacity: 0;
  95 + line-height: 25px;
  96 + }
  97 + .overlay:target {
  98 + visibility: visible;
  99 + opacity: 1;
  100 + }
  101 +
  102 + .popup {
  103 + margin: 70px auto;
  104 + padding: 20px;
  105 + background: #fff;
  106 + border-radius: 10px;
  107 + width: 50%;
  108 + position: relative;
  109 + transition: all 3s ease-in-out;
  110 + }
  111 +
  112 + .popup h2 {
  113 + margin-top: 0;
  114 + color: #333;
  115 + font-family: Tahoma, Arial, sans-serif;
  116 + }
  117 + .popup .close {
  118 + position: absolute;
  119 + top: 20px;
  120 + right: 30px;
  121 + transition: all 200ms;
  122 + font-size: 30px;
  123 + font-weight: bold;
  124 + text-decoration: none;
  125 + color: #333;
  126 + }
  127 + .popup .close:hover {
  128 + color: #06d85f;
  129 + }
  130 + .popup .content {
  131 + max-height: 80%;
  132 + overflow: auto;
  133 + text-align: left;
  134 + }
  135 + .popup .separator {
  136 + color:royalblue
  137 + }
  138 +
  139 + @media screen and (max-width: 700px) {
  140 + .box {
  141 + width: 70%;
  142 + }
  143 + .popup {
  144 + width: 70%;
  145 + }
  146 + }
  147 +
  148 + </style>
  149 +</head>
  150 +
  151 +<body>
  152 + <h1>Test Report: </h1>
  153 +
  154 + <h2>Summary</h2>
  155 + <table id="summary">
  156 + <tr>
  157 + <th>START AT</th>
  158 + <td colspan="4">2020-08-06T02:26:32.120315</td>
  159 + </tr>
  160 + <tr>
  161 + <th>DURATION</th>
  162 + <td colspan="4">0.404 seconds</td>
  163 + </tr>
  164 + <tr>
  165 + <th>PLATFORM</th>
  166 + <td>HttpRunner 2.5.7 </td>
  167 + <td>CPython 3.8.1 </td>
  168 + <td colspan="2">Windows-7-6.1.7601-SP1</td>
  169 + </tr>
  170 + <tr>
  171 + <th>STAT</th>
  172 + <th colspan="2">TESTCASES (success/fail)</th>
  173 + <th colspan="2">TESTSTEPS (success/fail/error/skip)</th>
  174 + </tr>
  175 + <tr>
  176 + <td>total (details) =></td>
  177 + <td colspan="2">1 (1/0)</td>
  178 + <td colspan="2">2 (2/0/0/0)</td>
  179 + </tr>
  180 + </table>
  181 +
  182 + <h2>Details</h2>
  183 +
  184 +
  185 +
  186 + <h3>PURPOSE001:新增意向订单</h3>
  187 + <table id="suite_1" class="details">
  188 + <tr>
  189 + <td>TOTAL: 2</td>
  190 + <td>SUCCESS: 2</td>
  191 + <td>FAILED: 0</td>
  192 + <td>ERROR: 0</td>
  193 + <td>SKIPPED: 0</td>
  194 + </tr>
  195 + <tr>
  196 + <th>Status</th>
  197 + <th colspan="2">Name</th>
  198 + <th>Response Time</th>
  199 + <th>Detail</th>
  200 + </tr>
  201 +
  202 +
  203 +
  204 +
  205 + <tr id="record_1_1">
  206 + <th class="success" style="width:5em;">success</th>
  207 + <td colspan="2">10000000001 登录系统</td>
  208 + <td style="text-align:center;width:6em;">196.01 ms</td>
  209 + <td class="detail">
  210 +
  211 +
  212 +
  213 + <a class="button" href="#popup_log_1_1_1">log-1</a>
  214 + <div id="popup_log_1_1_1" class="overlay">
  215 + <div class="popup">
  216 + <h2>Request and Response data</h2>
  217 + <a class="close" href="#record_1_1_1">&times;</a>
  218 +
  219 + <div class="content">
  220 + <h3>Name: 10000000001 登录系统</h3>
  221 +
  222 +
  223 +
  224 +
  225 +
  226 + <h3>Request:</h3>
  227 + <div style="overflow: auto">
  228 + <table>
  229 +
  230 + <tr>
  231 + <th>url</th>
  232 + <td>
  233 +
  234 + https://public-interface-test.fjmaimaimai.com/partnermg/v1/auth/login
  235 +
  236 + </td>
  237 + </tr>
  238 +
  239 + <tr>
  240 + <th>method</th>
  241 + <td>
  242 +
  243 + POST
  244 +
  245 + </td>
  246 + </tr>
  247 +
  248 + <tr>
  249 + <th>headers</th>
  250 + <td>
  251 +
  252 + <pre>{
  253 + &#34;User-Agent&#34;: &#34;Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.75 Safari/537.36&#34;,
  254 + &#34;Accept-Encoding&#34;: &#34;gzip, deflate&#34;,
  255 + &#34;Accept&#34;: &#34;*/*&#34;,
  256 + &#34;Connection&#34;: &#34;keep-alive&#34;,
  257 + &#34;Content-Type&#34;: &#34;application/json;charset=utf-8&#34;,
  258 + &#34;Content-Length&#34;: &#34;83&#34;
  259 +}</pre>
  260 +
  261 + </td>
  262 + </tr>
  263 +
  264 + <tr>
  265 + <th>body</th>
  266 + <td>
  267 +
  268 + <pre>{
  269 + &#34;password&#34;: &#34;7c4a8d09ca3762af61e59520943dc26494f8941b&#34;,
  270 + &#34;username&#34;: &#34;10000000001&#34;
  271 +}</pre>
  272 +
  273 + </td>
  274 + </tr>
  275 +
  276 + </table>
  277 + </div>
  278 +
  279 + <h3>Response:</h3>
  280 + <div style="overflow: auto">
  281 + <table>
  282 +
  283 + <tr>
  284 + <th>ok</th>
  285 + <td>
  286 +
  287 + True
  288 +
  289 + </td>
  290 + </tr>
  291 +
  292 + <tr>
  293 + <th>url</th>
  294 + <td>
  295 +
  296 + https://public-interface-test.fjmaimaimai.com/partnermg/v1/auth/login
  297 +
  298 + </td>
  299 + </tr>
  300 +
  301 + <tr>
  302 + <th>status_code</th>
  303 + <td>
  304 +
  305 + 200
  306 +
  307 + </td>
  308 + </tr>
  309 +
  310 + <tr>
  311 + <th>reason</th>
  312 + <td>
  313 +
  314 + OK
  315 +
  316 + </td>
  317 + </tr>
  318 +
  319 + <tr>
  320 + <th>cookies</th>
  321 + <td>
  322 +
  323 + {}
  324 +
  325 + </td>
  326 + </tr>
  327 +
  328 + <tr>
  329 + <th>encoding</th>
  330 + <td>
  331 +
  332 + utf-8
  333 +
  334 + </td>
  335 + </tr>
  336 +
  337 + <tr>
  338 + <th>headers</th>
  339 + <td>
  340 +
  341 + <pre>{
  342 + &#34;Date&#34;: &#34;Thu, 06 Aug 2020 02:26:33 GMT&#34;,
  343 + &#34;Content-Type&#34;: &#34;application/json; charset=utf-8&#34;,
  344 + &#34;Transfer-Encoding&#34;: &#34;chunked&#34;,
  345 + &#34;Connection&#34;: &#34;keep-alive&#34;,
  346 + &#34;Vary&#34;: &#34;Accept-Encoding, Accept-Encoding&#34;,
  347 + &#34;Access-Control-Allow-Credentials&#34;: &#34;true&#34;,
  348 + &#34;Access-Control-Allow-Headers&#34;: &#34;Origin,Authorization,Access-Control-Allow-Origin,Content-Type,x-requested-with&#34;,
  349 + &#34;Access-Control-Allow-Methods&#34;: &#34;*&#34;,
  350 + &#34;Access-Control-Allow-Origin&#34;: &#34;*&#34;,
  351 + &#34;Access-Control-Expose-Headers&#34;: &#34;Content-Length&#34;,
  352 + &#34;Strict-Transport-Security&#34;: &#34;max-age=15724800; includeSubDomains&#34;,
  353 + &#34;Content-Encoding&#34;: &#34;gzip&#34;
  354 +}</pre>
  355 +
  356 + </td>
  357 + </tr>
  358 +
  359 + <tr>
  360 + <th>content_type</th>
  361 + <td>
  362 +
  363 + application/json; charset=utf-8
  364 +
  365 + </td>
  366 + </tr>
  367 +
  368 + <tr>
  369 + <th>body</th>
  370 + <td>
  371 +
  372 +
  373 + <pre>{
  374 + &#34;code&#34;: 0,
  375 + &#34;msg&#34;: &#34;ok&#34;,
  376 + &#34;data&#34;: {
  377 + &#34;access&#34;: {
  378 + &#34;accessToken&#34;: &#34;eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE1OTY3MjM5OTMsImlhdCI6MTU5NjY4MDc5MywiaXNzIjoibW1tX3BhcnRuZXJtZyIsIm5iZiI6MTU5NjY4MDc5MywidWlkIjoxOH0.tDnIQQP26PPEf4tdLye8_s4nyq8RbDGnDOtU-TZN_4Q&#34;,
  379 + &#34;expiresIn&#34;: 43200
  380 + }
  381 + }
  382 +}</pre>
  383 +
  384 +
  385 + </td>
  386 + </tr>
  387 +
  388 + </table>
  389 + </div>
  390 +
  391 +
  392 + <h3>Validators:</h3>
  393 + <div style="overflow: auto">
  394 +
  395 +
  396 + <table>
  397 + <tr>
  398 + <th>check</th>
  399 + <th>comparator</th>
  400 + <th>expect value</th>
  401 + <th>actual value</th>
  402 + </tr>
  403 +
  404 + <tr>
  405 +
  406 + <td class="passed">
  407 +
  408 + content.msg
  409 + </td>
  410 + <td>equals</td>
  411 + <td>ok</td>
  412 + <td>ok</td>
  413 + </tr>
  414 +
  415 + </table>
  416 +
  417 +
  418 +
  419 +
  420 + </div>
  421 +
  422 + <h3>Statistics:</h3>
  423 + <div style="overflow: auto">
  424 + <table>
  425 + <tr>
  426 + <th>content_size(bytes)</th>
  427 + <td>311</td>
  428 + </tr>
  429 + <tr>
  430 + <th>response_time(ms)</th>
  431 + <td>196.01</td>
  432 + </tr>
  433 + <tr>
  434 + <th>elapsed(ms)</th>
  435 + <td>187.138</td>
  436 + </tr>
  437 + </table>
  438 + </div>
  439 +
  440 + </div>
  441 + </div>
  442 + </div>
  443 +
  444 +
  445 +
  446 +
  447 + </td>
  448 + </tr>
  449 +
  450 +
  451 +
  452 + <tr id="record_1_2">
  453 + <th class="success" style="width:5em;">success</th>
  454 + <td colspan="2">10000000001 新增意向订单</td>
  455 + <td style="text-align:center;width:6em;">56.00 ms</td>
  456 + <td class="detail">
  457 +
  458 +
  459 +
  460 + <a class="button" href="#popup_log_1_2_1">log-1</a>
  461 + <div id="popup_log_1_2_1" class="overlay">
  462 + <div class="popup">
  463 + <h2>Request and Response data</h2>
  464 + <a class="close" href="#record_1_2_1">&times;</a>
  465 +
  466 + <div class="content">
  467 + <h3>Name: 10000000001 新增意向订单</h3>
  468 +
  469 +
  470 +
  471 +
  472 +
  473 + <h3>Request:</h3>
  474 + <div style="overflow: auto">
  475 + <table>
  476 +
  477 + <tr>
  478 + <th>url</th>
  479 + <td>
  480 +
  481 + https://public-interface-test.fjmaimaimai.com/partnermg/v1/order/purpose/update
  482 +
  483 + </td>
  484 + </tr>
  485 +
  486 + <tr>
  487 + <th>method</th>
  488 + <td>
  489 +
  490 + POST
  491 +
  492 + </td>
  493 + </tr>
  494 +
  495 + <tr>
  496 + <th>headers</th>
  497 + <td>
  498 +
  499 + <pre>{
  500 + &#34;User-Agent&#34;: &#34;okhttp/3.12.3&#34;,
  501 + &#34;Accept-Encoding&#34;: &#34;gzip, deflate&#34;,
  502 + &#34;Accept&#34;: &#34;*/*&#34;,
  503 + &#34;Connection&#34;: &#34;keep-alive&#34;,
  504 + &#34;Content-Type&#34;: &#34;application/json;charset=utf-8&#34;,
  505 + &#34;Authorization&#34;: &#34;Bearer bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE1OTY3MjM5OTMsImlhdCI6MTU5NjY4MDc5MywiaXNzIjoibW1tX3BhcnRuZXJtZyIsIm5iZiI6MTU5NjY4MDc5MywidWlkIjoxOH0.tDnIQQP26PPEf4tdLye8_s4nyq8RbDGnDOtU-TZN_4Q&#34;,
  506 + &#34;Content-Length&#34;: &#34;274&#34;
  507 +}</pre>
  508 +
  509 + </td>
  510 + </tr>
  511 +
  512 + <tr>
  513 + <th>body</th>
  514 + <td>
  515 +
  516 + <pre>{
  517 + &#34;orderId&#34;: &#34;20200806102632&#34;,
  518 + &#34;buyer&#34;: &#34;我是客户32&#34;,
  519 + &#34;orderDist&#34;: &#34;福建二区&#34;,
  520 + &#34;partnerID&#34;: 29,
  521 + &#34;commissionProportion&#34;: 10.2,
  522 + &#34;product&#34;: [
  523 + {
  524 + &#34;productName&#34;: &#34;产品名称32&#34;,
  525 + &#34;orderNum&#34;: 20,
  526 + &#34;univalence&#34;: 1.12,
  527 + &#34;partnerRatio&#34;: 1.27
  528 + }
  529 + ]
  530 +}</pre>
  531 +
  532 + </td>
  533 + </tr>
  534 +
  535 + </table>
  536 + </div>
  537 +
  538 + <h3>Response:</h3>
  539 + <div style="overflow: auto">
  540 + <table>
  541 +
  542 + <tr>
  543 + <th>ok</th>
  544 + <td>
  545 +
  546 + True
  547 +
  548 + </td>
  549 + </tr>
  550 +
  551 + <tr>
  552 + <th>url</th>
  553 + <td>
  554 +
  555 + https://public-interface-test.fjmaimaimai.com/partnermg/v1/order/purpose/update
  556 +
  557 + </td>
  558 + </tr>
  559 +
  560 + <tr>
  561 + <th>status_code</th>
  562 + <td>
  563 +
  564 + 200
  565 +
  566 + </td>
  567 + </tr>
  568 +
  569 + <tr>
  570 + <th>reason</th>
  571 + <td>
  572 +
  573 + OK
  574 +
  575 + </td>
  576 + </tr>
  577 +
  578 + <tr>
  579 + <th>cookies</th>
  580 + <td>
  581 +
  582 + {}
  583 +
  584 + </td>
  585 + </tr>
  586 +
  587 + <tr>
  588 + <th>encoding</th>
  589 + <td>
  590 +
  591 + utf-8
  592 +
  593 + </td>
  594 + </tr>
  595 +
  596 + <tr>
  597 + <th>headers</th>
  598 + <td>
  599 +
  600 + <pre>{
  601 + &#34;Date&#34;: &#34;Thu, 06 Aug 2020 02:26:34 GMT&#34;,
  602 + &#34;Content-Type&#34;: &#34;application/json; charset=utf-8&#34;,
  603 + &#34;Content-Length&#34;: &#34;44&#34;,
  604 + &#34;Connection&#34;: &#34;keep-alive&#34;,
  605 + &#34;Access-Control-Allow-Credentials&#34;: &#34;true&#34;,
  606 + &#34;Access-Control-Allow-Headers&#34;: &#34;Origin,Authorization,Access-Control-Allow-Origin,Content-Type,x-requested-with&#34;,
  607 + &#34;Access-Control-Allow-Methods&#34;: &#34;*&#34;,
  608 + &#34;Access-Control-Allow-Origin&#34;: &#34;*&#34;,
  609 + &#34;Access-Control-Expose-Headers&#34;: &#34;Content-Length&#34;,
  610 + &#34;Strict-Transport-Security&#34;: &#34;max-age=15724800; includeSubDomains&#34;
  611 +}</pre>
  612 +
  613 + </td>
  614 + </tr>
  615 +
  616 + <tr>
  617 + <th>content_type</th>
  618 + <td>
  619 +
  620 + application/json; charset=utf-8
  621 +
  622 + </td>
  623 + </tr>
  624 +
  625 + <tr>
  626 + <th>body</th>
  627 + <td>
  628 +
  629 +
  630 + <pre>{
  631 + &#34;code&#34;: 0,
  632 + &#34;msg&#34;: &#34;ok&#34;,
  633 + &#34;data&#34;: {}
  634 +}</pre>
  635 +
  636 +
  637 + </td>
  638 + </tr>
  639 +
  640 + </table>
  641 + </div>
  642 +
  643 +
  644 + <h3>Validators:</h3>
  645 + <div style="overflow: auto">
  646 +
  647 +
  648 + <table>
  649 + <tr>
  650 + <th>check</th>
  651 + <th>comparator</th>
  652 + <th>expect value</th>
  653 + <th>actual value</th>
  654 + </tr>
  655 +
  656 + <tr>
  657 +
  658 + <td class="passed">
  659 +
  660 + content.msg
  661 + </td>
  662 + <td>equals</td>
  663 + <td>ok</td>
  664 + <td>ok</td>
  665 + </tr>
  666 +
  667 + </table>
  668 +
  669 +
  670 +
  671 +
  672 + </div>
  673 +
  674 + <h3>Statistics:</h3>
  675 + <div style="overflow: auto">
  676 + <table>
  677 + <tr>
  678 + <th>content_size(bytes)</th>
  679 + <td>44</td>
  680 + </tr>
  681 + <tr>
  682 + <th>response_time(ms)</th>
  683 + <td>56.0</td>
  684 + </tr>
  685 + <tr>
  686 + <th>elapsed(ms)</th>
  687 + <td>52.105</td>
  688 + </tr>
  689 + </table>
  690 + </div>
  691 +
  692 + </div>
  693 + </div>
  694 + </div>
  695 +
  696 +
  697 +
  698 +
  699 + </td>
  700 + </tr>
  701 +
  702 + </table>
  703 +
  704 +</body>