提交 676ef25a3918260dfa12816db465f7d541ba0919
1 个父辈
ed1fd747
1.0.2
1.新增的专业与新增的院系id做关联 2。新增教师用例 3。已知bug优化
正在显示
17 个修改的文件
包含
519 行增加
和
190 行删除
| 1 | <?xml version="1.0" encoding="UTF-8"?> | 1 | <?xml version="1.0" encoding="UTF-8"?> |
| 2 | <project version="4"> | 2 | <project version="4"> |
| 3 | <component name="ChangeListManager"> | 3 | <component name="ChangeListManager"> |
| 4 | - <list default="true" id="129454fc-5415-4c7e-9855-d0293355ede5" name="Default Changelist" comment="1.0.1 1.新增fixture.py 2.新增查看院系接口测试用例 4.新增整理Excel表格数据入参问题 3.代码优化"> | ||
| 5 | - <change afterPath="$PROJECT_DIR$/.gitignore" afterDir="false" /> | 4 | + <list default="true" id="129454fc-5415-4c7e-9855-d0293355ede5" name="Default Changelist" comment="1.0.1 1.新增发送邮件"> |
| 5 | + <change afterPath="$PROJECT_DIR$/data/system/test_02_specialty.xlsx" afterDir="false" /> | ||
| 6 | + <change afterPath="$PROJECT_DIR$/data/teaching_affairs/test_03_class.xlsx" afterDir="false" /> | ||
| 7 | + <change afterPath="$PROJECT_DIR$/data/teaching_affairs/test_03_teacher.xlsx" afterDir="false" /> | ||
| 6 | <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" /> | 8 | <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" /> |
| 9 | + <change beforePath="$PROJECT_DIR$/common/handle_excel.py" beforeDir="false" afterPath="$PROJECT_DIR$/common/handle_excel.py" afterDir="false" /> | ||
| 10 | + <change beforePath="$PROJECT_DIR$/data/system/test_02_department.xlsx" beforeDir="false" afterPath="$PROJECT_DIR$/data/system/test_02_department.xlsx" afterDir="false" /> | ||
| 11 | + <change beforePath="$PROJECT_DIR$/data/system/test_03_specialty.xlsx" beforeDir="false" /> | ||
| 12 | + <change beforePath="$PROJECT_DIR$/data/system/test_04_term.xlsx" beforeDir="false" afterPath="$PROJECT_DIR$/data/system/test_02_term.xlsx" afterDir="false" /> | ||
| 13 | + <change beforePath="$PROJECT_DIR$/data/test_01_login.xlsx" beforeDir="false" afterPath="$PROJECT_DIR$/data/test_01_login.xlsx" afterDir="false" /> | ||
| 14 | + <change beforePath="$PROJECT_DIR$/logs/log.log" beforeDir="false" afterPath="$PROJECT_DIR$/logs/log.log" afterDir="false" /> | ||
| 15 | + <change beforePath="$PROJECT_DIR$/report/history.json" beforeDir="false" afterPath="$PROJECT_DIR$/report/history.json" afterDir="false" /> | ||
| 16 | + <change beforePath="$PROJECT_DIR$/report/report.html" beforeDir="false" afterPath="$PROJECT_DIR$/report/report.html" afterDir="false" /> | ||
| 7 | <change beforePath="$PROJECT_DIR$/run.py" beforeDir="false" afterPath="$PROJECT_DIR$/run.py" afterDir="false" /> | 17 | <change beforePath="$PROJECT_DIR$/run.py" beforeDir="false" afterPath="$PROJECT_DIR$/run.py" afterDir="false" /> |
| 18 | + <change beforePath="$PROJECT_DIR$/testcase/test_01_login.py" beforeDir="false" afterPath="$PROJECT_DIR$/testcase/test_01_login.py" afterDir="false" /> | ||
| 19 | + <change beforePath="$PROJECT_DIR$/testcase/test_02_system_management.py" beforeDir="false" afterPath="$PROJECT_DIR$/testcase/test_02_system_management.py" afterDir="false" /> | ||
| 20 | + <change beforePath="$PROJECT_DIR$/testcase/test_03_teaching_affairs.py" beforeDir="false" afterPath="$PROJECT_DIR$/testcase/test_03_teaching_affairs.py" afterDir="false" /> | ||
| 21 | + <change beforePath="$PROJECT_DIR$/tools/fixture.py" beforeDir="false" afterPath="$PROJECT_DIR$/tools/fixture.py" afterDir="false" /> | ||
| 8 | </list> | 22 | </list> |
| 9 | <option name="SHOW_DIALOG" value="false" /> | 23 | <option name="SHOW_DIALOG" value="false" /> |
| 10 | <option name="HIGHLIGHT_CONFLICTS" value="true" /> | 24 | <option name="HIGHLIGHT_CONFLICTS" value="true" /> |
| @@ -53,16 +67,17 @@ | @@ -53,16 +67,17 @@ | ||
| 53 | <property name="RunOnceActivity.OpenProjectViewOnStart" value="true" /> | 67 | <property name="RunOnceActivity.OpenProjectViewOnStart" value="true" /> |
| 54 | <property name="RunOnceActivity.ShowReadmeOnStart" value="true" /> | 68 | <property name="RunOnceActivity.ShowReadmeOnStart" value="true" /> |
| 55 | <property name="WebServerToolWindowFactoryState" value="false" /> | 69 | <property name="WebServerToolWindowFactoryState" value="false" /> |
| 56 | - <property name="last_opened_file_path" value="$PROJECT_DIR$/tools" /> | 70 | + <property name="last_opened_file_path" value="$PROJECT_DIR$/data/teaching_affairs" /> |
| 57 | <property name="settings.editor.selected.configurable" value="preferences.pluginManager" /> | 71 | <property name="settings.editor.selected.configurable" value="preferences.pluginManager" /> |
| 58 | </component> | 72 | </component> |
| 59 | <component name="RecentsManager"> | 73 | <component name="RecentsManager"> |
| 60 | <key name="CopyFile.RECENT_KEYS"> | 74 | <key name="CopyFile.RECENT_KEYS"> |
| 75 | + <recent name="$PROJECT_DIR$/data/teaching_affairs" /> | ||
| 61 | <recent name="$PROJECT_DIR$/tools" /> | 76 | <recent name="$PROJECT_DIR$/tools" /> |
| 62 | </key> | 77 | </key> |
| 63 | </component> | 78 | </component> |
| 64 | <component name="RunManager" selected="Python.run"> | 79 | <component name="RunManager" selected="Python.run"> |
| 65 | - <configuration name="fixture" type="PythonConfigurationType" factoryName="Python" temporary="true" nameIsGenerated="true"> | 80 | + <configuration name="fixture (1)" type="PythonConfigurationType" factoryName="Python" temporary="true" nameIsGenerated="true"> |
| 66 | <module name="yxly2" /> | 81 | <module name="yxly2" /> |
| 67 | <option name="INTERPRETER_OPTIONS" value="" /> | 82 | <option name="INTERPRETER_OPTIONS" value="" /> |
| 68 | <option name="PARENT_ENVS" value="true" /> | 83 | <option name="PARENT_ENVS" value="true" /> |
| @@ -70,12 +85,12 @@ | @@ -70,12 +85,12 @@ | ||
| 70 | <env name="PYTHONUNBUFFERED" value="1" /> | 85 | <env name="PYTHONUNBUFFERED" value="1" /> |
| 71 | </envs> | 86 | </envs> |
| 72 | <option name="SDK_HOME" value="" /> | 87 | <option name="SDK_HOME" value="" /> |
| 73 | - <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$/testcase" /> | 88 | + <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$/tools" /> |
| 74 | <option name="IS_MODULE_SDK" value="true" /> | 89 | <option name="IS_MODULE_SDK" value="true" /> |
| 75 | <option name="ADD_CONTENT_ROOTS" value="true" /> | 90 | <option name="ADD_CONTENT_ROOTS" value="true" /> |
| 76 | <option name="ADD_SOURCE_ROOTS" value="true" /> | 91 | <option name="ADD_SOURCE_ROOTS" value="true" /> |
| 77 | <EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" /> | 92 | <EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" /> |
| 78 | - <option name="SCRIPT_NAME" value="$PROJECT_DIR$/testcase/fixture.py" /> | 93 | + <option name="SCRIPT_NAME" value="$PROJECT_DIR$/tools/fixture.py" /> |
| 79 | <option name="PARAMETERS" value="" /> | 94 | <option name="PARAMETERS" value="" /> |
| 80 | <option name="SHOW_COMMAND_LINE" value="false" /> | 95 | <option name="SHOW_COMMAND_LINE" value="false" /> |
| 81 | <option name="EMULATE_TERMINAL" value="false" /> | 96 | <option name="EMULATE_TERMINAL" value="false" /> |
| @@ -106,7 +121,7 @@ | @@ -106,7 +121,7 @@ | ||
| 106 | <option name="INPUT_FILE" value="" /> | 121 | <option name="INPUT_FILE" value="" /> |
| 107 | <method v="2" /> | 122 | <method v="2" /> |
| 108 | </configuration> | 123 | </configuration> |
| 109 | - <configuration name="Unittests in fixture.py" type="tests" factoryName="Unittests" temporary="true" nameIsGenerated="true"> | 124 | + <configuration name="Unittests in test_01_login.py" type="tests" factoryName="Unittests" temporary="true" nameIsGenerated="true"> |
| 110 | <module name="yxly2" /> | 125 | <module name="yxly2" /> |
| 111 | <option name="INTERPRETER_OPTIONS" value="" /> | 126 | <option name="INTERPRETER_OPTIONS" value="" /> |
| 112 | <option name="PARENT_ENVS" value="true" /> | 127 | <option name="PARENT_ENVS" value="true" /> |
| @@ -117,7 +132,7 @@ | @@ -117,7 +132,7 @@ | ||
| 117 | <option name="ADD_SOURCE_ROOTS" value="true" /> | 132 | <option name="ADD_SOURCE_ROOTS" value="true" /> |
| 118 | <EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" /> | 133 | <EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" /> |
| 119 | <option name="_new_additionalArguments" value="""" /> | 134 | <option name="_new_additionalArguments" value="""" /> |
| 120 | - <option name="_new_target" value=""$PROJECT_DIR$/testcase/fixture.py"" /> | 135 | + <option name="_new_target" value=""$PROJECT_DIR$/testcase/test_01_login.py"" /> |
| 121 | <option name="_new_targetType" value=""PATH"" /> | 136 | <option name="_new_targetType" value=""PATH"" /> |
| 122 | <method v="2" /> | 137 | <method v="2" /> |
| 123 | </configuration> | 138 | </configuration> |
| @@ -136,18 +151,35 @@ | @@ -136,18 +151,35 @@ | ||
| 136 | <option name="_new_targetType" value=""PATH"" /> | 151 | <option name="_new_targetType" value=""PATH"" /> |
| 137 | <method v="2" /> | 152 | <method v="2" /> |
| 138 | </configuration> | 153 | </configuration> |
| 154 | + <configuration name="Unittests in test_03_teaching_affairs.py" type="tests" factoryName="Unittests" temporary="true" nameIsGenerated="true"> | ||
| 155 | + <module name="yxly2" /> | ||
| 156 | + <option name="INTERPRETER_OPTIONS" value="" /> | ||
| 157 | + <option name="PARENT_ENVS" value="true" /> | ||
| 158 | + <option name="SDK_HOME" value="" /> | ||
| 159 | + <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$/testcase" /> | ||
| 160 | + <option name="IS_MODULE_SDK" value="true" /> | ||
| 161 | + <option name="ADD_CONTENT_ROOTS" value="true" /> | ||
| 162 | + <option name="ADD_SOURCE_ROOTS" value="true" /> | ||
| 163 | + <EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" /> | ||
| 164 | + <option name="_new_additionalArguments" value="""" /> | ||
| 165 | + <option name="_new_target" value=""$PROJECT_DIR$/testcase/test_03_teaching_affairs.py"" /> | ||
| 166 | + <option name="_new_targetType" value=""PATH"" /> | ||
| 167 | + <method v="2" /> | ||
| 168 | + </configuration> | ||
| 139 | <list> | 169 | <list> |
| 140 | <item itemvalue="Python.run" /> | 170 | <item itemvalue="Python.run" /> |
| 141 | - <item itemvalue="Python.fixture" /> | ||
| 142 | <item itemvalue="Python tests.Unittests in test_02_system_management.py" /> | 171 | <item itemvalue="Python tests.Unittests in test_02_system_management.py" /> |
| 143 | - <item itemvalue="Python tests.Unittests in fixture.py" /> | 172 | + <item itemvalue="Python tests.Unittests in test_01_login.py" /> |
| 173 | + <item itemvalue="Python.fixture (1)" /> | ||
| 174 | + <item itemvalue="Python tests.Unittests in test_03_teaching_affairs.py" /> | ||
| 144 | </list> | 175 | </list> |
| 145 | <recent_temporary> | 176 | <recent_temporary> |
| 146 | <list> | 177 | <list> |
| 147 | <item itemvalue="Python.run" /> | 178 | <item itemvalue="Python.run" /> |
| 148 | <item itemvalue="Python tests.Unittests in test_02_system_management.py" /> | 179 | <item itemvalue="Python tests.Unittests in test_02_system_management.py" /> |
| 149 | - <item itemvalue="Python.fixture" /> | ||
| 150 | - <item itemvalue="Python tests.Unittests in fixture.py" /> | 180 | + <item itemvalue="Python tests.Unittests in test_03_teaching_affairs.py" /> |
| 181 | + <item itemvalue="Python.fixture (1)" /> | ||
| 182 | + <item itemvalue="Python tests.Unittests in test_01_login.py" /> | ||
| 151 | </list> | 183 | </list> |
| 152 | </recent_temporary> | 184 | </recent_temporary> |
| 153 | </component> | 185 | </component> |
| @@ -164,7 +196,8 @@ | @@ -164,7 +196,8 @@ | ||
| 164 | <workItem from="1671554332302" duration="650000" /> | 196 | <workItem from="1671554332302" duration="650000" /> |
| 165 | <workItem from="1671612580435" duration="100000" /> | 197 | <workItem from="1671612580435" duration="100000" /> |
| 166 | <workItem from="1671612709033" duration="18069000" /> | 198 | <workItem from="1671612709033" duration="18069000" /> |
| 167 | - <workItem from="1671637473856" duration="796000" /> | 199 | + <workItem from="1671637473856" duration="5050000" /> |
| 200 | + <workItem from="1671683905863" duration="21393000" /> | ||
| 168 | </task> | 201 | </task> |
| 169 | <task id="LOCAL-00001" summary="1.0.0 首次提交"> | 202 | <task id="LOCAL-00001" summary="1.0.0 首次提交"> |
| 170 | <created>1671544396986</created> | 203 | <created>1671544396986</created> |
| @@ -180,7 +213,14 @@ | @@ -180,7 +213,14 @@ | ||
| 180 | <option name="project" value="LOCAL" /> | 213 | <option name="project" value="LOCAL" /> |
| 181 | <updated>1671636040241</updated> | 214 | <updated>1671636040241</updated> |
| 182 | </task> | 215 | </task> |
| 183 | - <option name="localTasksCounter" value="3" /> | 216 | + <task id="LOCAL-00003" summary="1.0.1 1.新增发送邮件"> |
| 217 | + <created>1671638407457</created> | ||
| 218 | + <option name="number" value="00003" /> | ||
| 219 | + <option name="presentableId" value="LOCAL-00003" /> | ||
| 220 | + <option name="project" value="LOCAL" /> | ||
| 221 | + <updated>1671638407457</updated> | ||
| 222 | + </task> | ||
| 223 | + <option name="localTasksCounter" value="4" /> | ||
| 184 | <servers /> | 224 | <servers /> |
| 185 | </component> | 225 | </component> |
| 186 | <component name="TypeScriptGeneratedFilesManager"> | 226 | <component name="TypeScriptGeneratedFilesManager"> |
| @@ -213,34 +253,85 @@ | @@ -213,34 +253,85 @@ | ||
| 213 | <component name="VcsManagerConfiguration"> | 253 | <component name="VcsManagerConfiguration"> |
| 214 | <MESSAGE value="1.0.0 首次提交" /> | 254 | <MESSAGE value="1.0.0 首次提交" /> |
| 215 | <MESSAGE value="1.0.1 1.新增fixture.py 2.新增查看院系接口测试用例 4.新增整理Excel表格数据入参问题 3.代码优化" /> | 255 | <MESSAGE value="1.0.1 1.新增fixture.py 2.新增查看院系接口测试用例 4.新增整理Excel表格数据入参问题 3.代码优化" /> |
| 216 | - <option name="LAST_COMMIT_MESSAGE" value="1.0.1 1.新增fixture.py 2.新增查看院系接口测试用例 4.新增整理Excel表格数据入参问题 3.代码优化" /> | 256 | + <MESSAGE value="1.0.1 1.新增发送邮件" /> |
| 257 | + <option name="LAST_COMMIT_MESSAGE" value="1.0.1 1.新增发送邮件" /> | ||
| 217 | </component> | 258 | </component> |
| 218 | <component name="XDebuggerManager"> | 259 | <component name="XDebuggerManager"> |
| 219 | <breakpoint-manager> | 260 | <breakpoint-manager> |
| 220 | <breakpoints> | 261 | <breakpoints> |
| 221 | - <line-breakpoint enabled="true" suspend="THREAD" type="python-line"> | 262 | + <line-breakpoint suspend="THREAD" type="python-line"> |
| 222 | <url>file://$PROJECT_DIR$/testcase/test_02_system_management.py</url> | 263 | <url>file://$PROJECT_DIR$/testcase/test_02_system_management.py</url> |
| 223 | - <line>147</line> | 264 | + <line>148</line> |
| 224 | <option name="timeStamp" value="5" /> | 265 | <option name="timeStamp" value="5" /> |
| 225 | </line-breakpoint> | 266 | </line-breakpoint> |
| 226 | - <line-breakpoint enabled="true" suspend="THREAD" type="python-line"> | 267 | + <line-breakpoint suspend="THREAD" type="python-line"> |
| 227 | <url>file://$PROJECT_DIR$/testcase/test_02_system_management.py</url> | 268 | <url>file://$PROJECT_DIR$/testcase/test_02_system_management.py</url> |
| 228 | - <line>180</line> | 269 | + <line>184</line> |
| 229 | <option name="timeStamp" value="10" /> | 270 | <option name="timeStamp" value="10" /> |
| 230 | </line-breakpoint> | 271 | </line-breakpoint> |
| 231 | - <line-breakpoint enabled="true" suspend="THREAD" type="python-line"> | 272 | + <line-breakpoint suspend="THREAD" type="python-line"> |
| 232 | <url>file://$PROJECT_DIR$/testcase/test_02_system_management.py</url> | 273 | <url>file://$PROJECT_DIR$/testcase/test_02_system_management.py</url> |
| 233 | <line>88</line> | 274 | <line>88</line> |
| 234 | <option name="timeStamp" value="11" /> | 275 | <option name="timeStamp" value="11" /> |
| 235 | </line-breakpoint> | 276 | </line-breakpoint> |
| 277 | + <line-breakpoint suspend="THREAD" type="python-line"> | ||
| 278 | + <url>file://$PROJECT_DIR$/testcase/test_01_login.py</url> | ||
| 279 | + <line>27</line> | ||
| 280 | + <option name="timeStamp" value="12" /> | ||
| 281 | + </line-breakpoint> | ||
| 282 | + <line-breakpoint suspend="THREAD" type="python-line"> | ||
| 283 | + <url>file://$PROJECT_DIR$/testcase/test_01_login.py</url> | ||
| 284 | + <line>40</line> | ||
| 285 | + <option name="timeStamp" value="13" /> | ||
| 286 | + </line-breakpoint> | ||
| 287 | + <line-breakpoint suspend="THREAD" type="python-line"> | ||
| 288 | + <url>file://$PROJECT_DIR$/testcase/test_01_login.py</url> | ||
| 289 | + <line>37</line> | ||
| 290 | + <option name="timeStamp" value="14" /> | ||
| 291 | + </line-breakpoint> | ||
| 292 | + <line-breakpoint enabled="true" suspend="THREAD" type="python-line"> | ||
| 293 | + <url>file://$PROJECT_DIR$/tools/fixture.py</url> | ||
| 294 | + <line>31</line> | ||
| 295 | + <option name="timeStamp" value="16" /> | ||
| 296 | + </line-breakpoint> | ||
| 297 | + <line-breakpoint enabled="true" suspend="THREAD" type="python-line"> | ||
| 298 | + <url>file://$PROJECT_DIR$/testcase/test_03_teaching_affairs.py</url> | ||
| 299 | + <line>90</line> | ||
| 300 | + <option name="timeStamp" value="22" /> | ||
| 301 | + </line-breakpoint> | ||
| 302 | + <line-breakpoint enabled="true" suspend="THREAD" type="python-line"> | ||
| 303 | + <url>file://$PROJECT_DIR$/testcase/test_03_teaching_affairs.py</url> | ||
| 304 | + <line>107</line> | ||
| 305 | + <option name="timeStamp" value="23" /> | ||
| 306 | + </line-breakpoint> | ||
| 307 | + <line-breakpoint enabled="true" suspend="THREAD" type="python-line"> | ||
| 308 | + <url>file://$PROJECT_DIR$/testcase/test_02_system_management.py</url> | ||
| 309 | + <line>178</line> | ||
| 310 | + <option name="timeStamp" value="24" /> | ||
| 311 | + </line-breakpoint> | ||
| 312 | + <line-breakpoint enabled="true" suspend="THREAD" type="python-line"> | ||
| 313 | + <url>file://$PROJECT_DIR$/testcase/test_02_system_management.py</url> | ||
| 314 | + <line>176</line> | ||
| 315 | + <option name="timeStamp" value="25" /> | ||
| 316 | + </line-breakpoint> | ||
| 236 | </breakpoints> | 317 | </breakpoints> |
| 318 | + <default-breakpoints> | ||
| 319 | + <breakpoint type="python-exception"> | ||
| 320 | + <properties notifyOnTerminate="true" exception="BaseException"> | ||
| 321 | + <option name="notifyOnTerminate" value="true" /> | ||
| 322 | + </properties> | ||
| 323 | + </breakpoint> | ||
| 324 | + </default-breakpoints> | ||
| 237 | </breakpoint-manager> | 325 | </breakpoint-manager> |
| 238 | </component> | 326 | </component> |
| 239 | <component name="com.intellij.coverage.CoverageDataManagerImpl"> | 327 | <component name="com.intellij.coverage.CoverageDataManagerImpl"> |
| 240 | - <SUITE FILE_PATH="coverage/yxly$Unittests_in_test_02_system_management_py.coverage" NAME="Unittests in test_02_system_management.py Coverage Results" MODIFIED="1671628771276" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/testcase" /> | 328 | + <SUITE FILE_PATH="coverage/yxly$fixture__1_.coverage" NAME="fixture (1) Coverage Results" MODIFIED="1671721079921" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/tools" /> |
| 329 | + <SUITE FILE_PATH="coverage/yxly$Unittests_in_test_02_system_management_py.coverage" NAME="Unittests in test_02_system_management.py Coverage Results" MODIFIED="1671721675550" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/testcase" /> | ||
| 330 | + <SUITE FILE_PATH="coverage/yxly$Unittests_in_test_01_login_py.coverage" NAME="Unittests in test_01_login.py Coverage Results" MODIFIED="1671641941612" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/testcase" /> | ||
| 241 | <SUITE FILE_PATH="coverage/yxly$fixture.coverage" NAME="fixture Coverage Results" MODIFIED="1671628017395" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/testcase" /> | 331 | <SUITE FILE_PATH="coverage/yxly$fixture.coverage" NAME="fixture Coverage Results" MODIFIED="1671628017395" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/testcase" /> |
| 242 | <SUITE FILE_PATH="coverage/yxly$Unittests_in_fixture_py.coverage" NAME="Unittests in fixture.py Coverage Results" MODIFIED="1671625806027" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/testcase" /> | 332 | <SUITE FILE_PATH="coverage/yxly$Unittests_in_fixture_py.coverage" NAME="Unittests in fixture.py Coverage Results" MODIFIED="1671625806027" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/testcase" /> |
| 333 | + <SUITE FILE_PATH="coverage/yxly$Unittests_in_test_03_teaching_affairs_py.coverage" NAME="Unittests in test_03_teaching_affairs.py Coverage Results" MODIFIED="1671721363914" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/testcase" /> | ||
| 243 | <SUITE FILE_PATH="coverage/yxly$pytest_in_test_02_system_management_py.coverage" NAME="pytest in test_02_system_management.py Coverage Results" MODIFIED="1671617451891" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/testcase" /> | 334 | <SUITE FILE_PATH="coverage/yxly$pytest_in_test_02_system_management_py.coverage" NAME="pytest in test_02_system_management.py Coverage Results" MODIFIED="1671617451891" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/testcase" /> |
| 244 | - <SUITE FILE_PATH="coverage/yxly$run.coverage" NAME="run Coverage Results" MODIFIED="1671635454441" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" /> | 335 | + <SUITE FILE_PATH="coverage/yxly$run.coverage" NAME="run Coverage Results" MODIFIED="1671721748026" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" /> |
| 245 | </component> | 336 | </component> |
| 246 | </project> | 337 | </project> |
不能预览此文件类型
data/system/test_02_specialty.xlsx
0 → 100644
不能预览此文件类型
data/system/test_03_specialty.xlsx
已删除
100644 → 0
不能预览此文件类型
data/teaching_affairs/test_03_class.xlsx
0 → 100644
不能预览此文件类型
data/teaching_affairs/test_03_teacher.xlsx
0 → 100644
不能预览此文件类型
不能预览此文件类型
此 diff 太大无法显示。
| 1 | -[{"success": 9, "all": 24, "fail": 15, "skip": 0, "error": 0, "runtime": "12.67 S", "begin_time": "2022-12-19 17:56:09", "pass_rate": "37.50"}, {"success": 9, "all": 24, "fail": 15, "skip": 0, "error": 0, "runtime": "7.87 S", "begin_time": "2022-12-19 17:58:06", "pass_rate": "37.50"}, {"success": 9, "all": 24, "fail": 15, "skip": 0, "error": 0, "runtime": "7.24 S", "begin_time": "2022-12-19 18:17:28", "pass_rate": "37.50"}, {"success": 9, "all": 24, "fail": 15, "skip": 0, "error": 0, "runtime": "7.45 S", "begin_time": "2022-12-19 18:19:47", "pass_rate": "37.50"}, {"success": 9, "all": 24, "fail": 15, "skip": 0, "error": 0, "runtime": "7.72 S", "begin_time": "2022-12-19 19:32:22", "pass_rate": "37.50"}, {"success": 9, "all": 24, "fail": 15, "skip": 0, "error": 0, "runtime": "103.32 S", "begin_time": "2022-12-19 20:35:55", "pass_rate": "37.50"}, {"success": 9, "all": 24, "fail": 15, "skip": 0, "error": 0, "runtime": "6.95 S", "begin_time": "2022-12-20 12:06:06", "pass_rate": "37.50"}, {"success": 9, "all": 24, "fail": 15, "skip": 0, "error": 0, "runtime": "6.92 S", "begin_time": "2022-12-20 21:34:11", "pass_rate": "37.50"}, {"success": 9, "all": 24, "fail": 15, "skip": 0, "error": 0, "runtime": "6.77 S", "begin_time": "2022-12-20 21:35:13", "pass_rate": "37.50"}, {"success": 8, "all": 25, "fail": 12, "skip": 0, "error": 5, "runtime": "14.41 S", "begin_time": "2022-12-21 22:40:23", "pass_rate": "32.00"}, {"success": 8, "all": 25, "fail": 12, "skip": 0, "error": 5, "runtime": "14.73 S", "begin_time": "2022-12-21 22:52:34", "pass_rate": "32.00"}, {"success": 9, "all": 25, "fail": 12, "skip": 0, "error": 4, "runtime": "14.49 S", "begin_time": "2022-12-21 22:55:57", "pass_rate": "36.00"}, {"success": 9, "all": 25, "fail": 12, "skip": 0, "error": 4, "runtime": "14.04 S", "begin_time": "2022-12-21 22:57:36", "pass_rate": "36.00"}, {"success": 9, "all": 25, "fail": 16, "skip": 0, "error": 0, "runtime": "14.09 S", "begin_time": "2022-12-21 23:02:18", "pass_rate": "36.00"}, {"success": 9, "all": 25, "fail": 16, "skip": 0, "error": 0, "runtime": "14.30 S", "begin_time": "2022-12-21 23:10:55", "pass_rate": "36.00"}] | ||
| 1 | +[{"success": 9, "all": 24, "fail": 15, "skip": 0, "error": 0, "runtime": "12.67 S", "begin_time": "2022-12-19 17:56:09", "pass_rate": "37.50"}, {"success": 9, "all": 24, "fail": 15, "skip": 0, "error": 0, "runtime": "7.87 S", "begin_time": "2022-12-19 17:58:06", "pass_rate": "37.50"}, {"success": 9, "all": 24, "fail": 15, "skip": 0, "error": 0, "runtime": "7.24 S", "begin_time": "2022-12-19 18:17:28", "pass_rate": "37.50"}, {"success": 9, "all": 24, "fail": 15, "skip": 0, "error": 0, "runtime": "7.45 S", "begin_time": "2022-12-19 18:19:47", "pass_rate": "37.50"}, {"success": 9, "all": 24, "fail": 15, "skip": 0, "error": 0, "runtime": "7.72 S", "begin_time": "2022-12-19 19:32:22", "pass_rate": "37.50"}, {"success": 9, "all": 24, "fail": 15, "skip": 0, "error": 0, "runtime": "103.32 S", "begin_time": "2022-12-19 20:35:55", "pass_rate": "37.50"}, {"success": 9, "all": 24, "fail": 15, "skip": 0, "error": 0, "runtime": "6.95 S", "begin_time": "2022-12-20 12:06:06", "pass_rate": "37.50"}, {"success": 9, "all": 24, "fail": 15, "skip": 0, "error": 0, "runtime": "6.92 S", "begin_time": "2022-12-20 21:34:11", "pass_rate": "37.50"}, {"success": 9, "all": 24, "fail": 15, "skip": 0, "error": 0, "runtime": "6.77 S", "begin_time": "2022-12-20 21:35:13", "pass_rate": "37.50"}, {"success": 8, "all": 25, "fail": 12, "skip": 0, "error": 5, "runtime": "14.41 S", "begin_time": "2022-12-21 22:40:23", "pass_rate": "32.00"}, {"success": 8, "all": 25, "fail": 12, "skip": 0, "error": 5, "runtime": "14.73 S", "begin_time": "2022-12-21 22:52:34", "pass_rate": "32.00"}, {"success": 9, "all": 25, "fail": 12, "skip": 0, "error": 4, "runtime": "14.49 S", "begin_time": "2022-12-21 22:55:57", "pass_rate": "36.00"}, {"success": 9, "all": 25, "fail": 12, "skip": 0, "error": 4, "runtime": "14.04 S", "begin_time": "2022-12-21 22:57:36", "pass_rate": "36.00"}, {"success": 9, "all": 25, "fail": 16, "skip": 0, "error": 0, "runtime": "14.09 S", "begin_time": "2022-12-21 23:02:18", "pass_rate": "36.00"}, {"success": 9, "all": 25, "fail": 16, "skip": 0, "error": 0, "runtime": "14.30 S", "begin_time": "2022-12-21 23:10:55", "pass_rate": "36.00"}, {"success": 9, "all": 25, "fail": 16, "skip": 0, "error": 0, "runtime": "14.19 S", "begin_time": "2022-12-22 00:05:50", "pass_rate": "36.00"}, {"success": 5, "all": 25, "fail": 16, "skip": 0, "error": 4, "runtime": "13.92 S", "begin_time": "2022-12-22 00:26:21", "pass_rate": "20.00"}, {"success": 9, "all": 25, "fail": 16, "skip": 0, "error": 0, "runtime": "15.25 S", "begin_time": "2022-12-22 00:32:39", "pass_rate": "36.00"}, {"success": 0, "all": 8, "fail": 0, "skip": 0, "error": 8, "runtime": "0.71 S", "begin_time": "2022-12-22 00:47:52", "pass_rate": "0.00"}, {"success": 8, "all": 25, "fail": 17, "skip": 0, "error": 0, "runtime": "12.65 S", "begin_time": "2022-12-22 00:54:19", "pass_rate": "32.00"}, {"success": 4, "all": 15, "fail": 11, "skip": 0, "error": 0, "runtime": "10.52 S", "begin_time": "2022-12-22 15:54:09", "pass_rate": "26.67"}, {"success": 4, "all": 15, "fail": 11, "skip": 0, "error": 0, "runtime": "10.60 S", "begin_time": "2022-12-22 15:59:15", "pass_rate": "26.67"}, {"success": 7, "all": 26, "fail": 9, "skip": 0, "error": 10, "runtime": "13.48 S", "begin_time": "2022-12-22 23:03:40", "pass_rate": "26.92"}, {"success": 6, "all": 16, "fail": 10, "skip": 0, "error": 0, "runtime": "11.90 S", "begin_time": "2022-12-22 23:08:12", "pass_rate": "37.50"}, {"success": 10, "all": 26, "fail": 16, "skip": 0, "error": 0, "runtime": "15.15 S", "begin_time": "2022-12-22 23:09:09", "pass_rate": "38.46"}] |
| @@ -156,15 +156,15 @@ | @@ -156,15 +156,15 @@ | ||
| 156 | </li> | 156 | </li> |
| 157 | <li class="list-group-item"> | 157 | <li class="list-group-item"> |
| 158 | <button type="button" class="btn btn-success">开始时间</button> | 158 | <button type="button" class="btn btn-success">开始时间</button> |
| 159 | - <span class="text-dark">2022-12-21 23:10:55</span> | 159 | + <span class="text-dark">2022-12-22 23:09:09</span> |
| 160 | </li> | 160 | </li> |
| 161 | <li class="list-group-item"> | 161 | <li class="list-group-item"> |
| 162 | <button type="button" class="btn btn-success">执行时间</button> | 162 | <button type="button" class="btn btn-success">执行时间</button> |
| 163 | - <span class="text-dark">14.30 S</span> | 163 | + <span class="text-dark">15.15 S</span> |
| 164 | </li> | 164 | </li> |
| 165 | <li class="list-group-item"> | 165 | <li class="list-group-item"> |
| 166 | <button type="button" class="btn btn-success">用例总数</button> | 166 | <button type="button" class="btn btn-success">用例总数</button> |
| 167 | - <span class="text-dark">25</span> | 167 | + <span class="text-dark">26</span> |
| 168 | </li> | 168 | </li> |
| 169 | 169 | ||
| 170 | 170 | ||
| @@ -175,7 +175,7 @@ | @@ -175,7 +175,7 @@ | ||
| 175 | 175 | ||
| 176 | <li class="list-group-item"> | 176 | <li class="list-group-item"> |
| 177 | <button type="button" class="btn btn-success">成功用例</button> | 177 | <button type="button" class="btn btn-success">成功用例</button> |
| 178 | - <span class="text-success">9</span> | 178 | + <span class="text-success">10</span> |
| 179 | </li> | 179 | </li> |
| 180 | <li class="list-group-item"> | 180 | <li class="list-group-item"> |
| 181 | <button type="button" class="btn btn-warning">失败用例</button> | 181 | <button type="button" class="btn btn-warning">失败用例</button> |
| @@ -225,14 +225,16 @@ | @@ -225,14 +225,16 @@ | ||
| 225 | <select id="testClass"> | 225 | <select id="testClass"> |
| 226 | <option>所有</option> | 226 | <option>所有</option> |
| 227 | 227 | ||
| 228 | - <option>Test03Year</option> | 228 | + <option>TestLogin</option> |
| 229 | 229 | ||
| 230 | - <option>Test02Specialty</option> | 230 | + <option>Test01CTeacher</option> |
| 231 | 231 | ||
| 232 | - <option>TestLogin</option> | 232 | + <option>Test02Specialty</option> |
| 233 | 233 | ||
| 234 | <option>Test01Department</option> | 234 | <option>Test01Department</option> |
| 235 | 235 | ||
| 236 | + <option>Test03Year</option> | ||
| 237 | + | ||
| 236 | </select> | 238 | </select> |
| 237 | 239 | ||
| 238 | </th> | 240 | </th> |
| @@ -262,7 +264,7 @@ | @@ -262,7 +264,7 @@ | ||
| 262 | <td class="TestLogin">TestLogin</td> | 264 | <td class="TestLogin">TestLogin</td> |
| 263 | <td>test_login_1</td> | 265 | <td>test_login_1</td> |
| 264 | <td>登陆成功</td> | 266 | <td>登陆成功</td> |
| 265 | - <td>0.558s</td> | 267 | + <td>0.522s</td> |
| 266 | 268 | ||
| 267 | <td class="text-success">成功</td> | 269 | <td class="text-success">成功</td> |
| 268 | 270 | ||
| @@ -278,7 +280,7 @@ | @@ -278,7 +280,7 @@ | ||
| 278 | 280 | ||
| 279 | <pre>用例入参:{'way': 'name', 'password': 'f85eea0e15e424aba8675f8848e2cb83', 'type': 'teacher', 'username': '17301249975'} | 281 | <pre>用例入参:{'way': 'name', 'password': 'f85eea0e15e424aba8675f8848e2cb83', 'type': 'teacher', 'username': '17301249975'} |
| 280 | 预期结果:{'msg': 'success', 'code': 200} | 282 | 预期结果:{'msg': 'success', 'code': 200} |
| 281 | -实际结果:{'msg': 'success', 'code': 200, 'data': {'access_token': 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0ZW5hbnRUeXBlIjoiIiwiYnJva2VySWQiOiIiLCJocm9Vc2VyVG9rZW4iOm51bGwsInVzZXJfbmFtZSI6IjE3MzAxMjQ5OTc1IiwiYXV0aFN0YXR1cyI6IiIsImF1dGhlbnRpY2F0aW9uSWRlbnRpdHkiOiJsb2dpbiIsInR5cGUiOiJ0ZWFjaGVyIiwidXNlcklkIjoiMTUxOTk1OTIwODUyOTg2Njc1MyIsImNsaWVudF9pZCI6IndvcmthaSIsInN0dWRlbnRJZCI6IiIsInRlYWNoZXJJZCI6IjE1MTk5NTkyMDkyNzY0NTI4NjUiLCJ0ZW5hbnROYW1lIjoiIiwicGhvbmUiOiIxNzMwMTI0OTk3NSIsInNjb3BlIjpbImFsbCJdLCJzY2hvb2xJZCI6IjE1MTk5NTg1NjYxMzAyNTc5MjIiLCJ0ZW5hbnRJZCI6IiIsIm5hbWUiOiLmoKHplb8iLCJzdHVkZW50U3RhdHVzIjoiIiwiZXhwIjoxNjcxNjcxNDU1LCJzY2hvb2xOYW1lIjoi5rWL6K-V5aSn5a2mIiwianRpIjoiM2Q1MDkxYzAtM2ZlYy00ZWMxLWJjY2ItYjcyYmM3OGZhNWUwIiwic3RhdHVzIjoiYWN0aXZlIn0.AzyaOjNsF1cSheQAzVWLyXS-H3LhbjLCDsQ8QoKMWrEE-b_3wXi5W7NVVwlYIXkf2rbsuhXpauXLQd6drjpqCzswPKqxu1zObV0WBQ_ej9Mh-n3sLbdwzk1-Hug3tm4tryPEWzt5ysCa8pSUChjlosvo_e23KCPUohENyp2uvI1LcDZJpn0ZgpGHWf6XcBDA7FoICJC3SvbU_NKBxjetgnNdcoNWekmk_xULKgG6hJKNdd1MT6FhI0kw2uQGZJ5RWYdFwv5gVqg5-GH3cNSoGPw6YY0SvYQZaaUaUHyOu8Pr7cCnRtQJPdEFDXpARgd13jpXYudKf9KcUJnFgFCoBQ', 'token_type': 'bearer', 'refresh_token': 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0ZW5hbnRUeXBlIjoiIiwiYnJva2VySWQiOiIiLCJocm9Vc2VyVG9rZW4iOm51bGwsInVzZXJfbmFtZSI6IjE3MzAxMjQ5OTc1IiwiYXV0aFN0YXR1cyI6IiIsImF1dGhlbnRpY2F0aW9uSWRlbnRpdHkiOiJsb2dpbiIsInR5cGUiOiJ0ZWFjaGVyIiwidXNlcklkIjoiMTUxOTk1OTIwODUyOTg2Njc1MyIsImNsaWVudF9pZCI6IndvcmthaSIsInN0dWRlbnRJZCI6IiIsInRlYWNoZXJJZCI6IjE1MTk5NTkyMDkyNzY0NTI4NjUiLCJ0ZW5hbnROYW1lIjoiIiwicGhvbmUiOiIxNzMwMTI0OTk3NSIsInNjb3BlIjpbImFsbCJdLCJzY2hvb2xJZCI6IjE1MTk5NTg1NjYxMzAyNTc5MjIiLCJhdGkiOiIzZDUwOTFjMC0zZmVjLTRlYzEtYmNjYi1iNzJiYzc4ZmE1ZTAiLCJ0ZW5hbnRJZCI6IiIsIm5hbWUiOiLmoKHplb8iLCJzdHVkZW50U3RhdHVzIjoiIiwiZXhwIjoxNjcxNzA3NDU1LCJzY2hvb2xOYW1lIjoi5rWL6K-V5aSn5a2mIiwianRpIjoiNjllYWIyZGQtZmFmOS00YTU5LWFlOTEtYTYzNDJjZDQxZGIzIiwic3RhdHVzIjoiYWN0aXZlIn0.CyO8dx_qojewAsZDglQISHRqucAjA4AmxFgrXLOpv0sSCU8c5NwPDWA2rGMD2AtbDuWn2HohqrvB_Vp1ryzGrIdRqd8YkSssVedQQbcuA2YlrUiT6htpI5ezjsaDeAkFc75Ijl_BWXbyafsz0Geow6EvfMoiBn3cCrqsJHeDoUc5VBKtE-F8sh6eE0PGoLwnIfmPsiJSsQpxNVJLMGIyYCVZztSHIJhqvzlwclwOnOaGrBnhkq9BIIQU0mfACJXTDUIsI2EjB8Wl6rSoEVKjmTTGbNgbat_n23hRWOv-GXga_IGXDBoKmyRy6dyhyoFWjVXRzItP2AVnt-momBov9g', 'expires_in': 35999, 'scope': 'all', 'tenantType': '', 'brokerId': '', 'hroUserToken': None, 'authStatus': '', 'authenticationIdentity': 'login', 'type': 'teacher', 'userId': '1519959208529866753', 'studentId': '', 'teacherId': '1519959209276452865', 'tenantName': '', 'phone': '17301249975', 'schoolId': '1519958566130257922', 'tenantId': '', 'name': '校长', 'studentStatus': '', 'schoolName': '测试大学', 'status': 'active', 'jti': '3d5091c0-3fec-4ec1-bccb-b72bc78fa5e0'}} | 283 | +实际结果:{'msg': 'success', 'code': 200, 'data': {'access_token': 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0ZW5hbnRUeXBlIjoiIiwiYnJva2VySWQiOiIiLCJocm9Vc2VyVG9rZW4iOm51bGwsInVzZXJfbmFtZSI6IjE3MzAxMjQ5OTc1IiwiYXV0aFN0YXR1cyI6IiIsImF1dGhlbnRpY2F0aW9uSWRlbnRpdHkiOiJsb2dpbiIsInR5cGUiOiJ0ZWFjaGVyIiwidXNlcklkIjoiMTUxOTk1OTIwODUyOTg2Njc1MyIsImNsaWVudF9pZCI6IndvcmthaSIsInN0dWRlbnRJZCI6IiIsInRlYWNoZXJJZCI6IjE1MTk5NTkyMDkyNzY0NTI4NjUiLCJ0ZW5hbnROYW1lIjoiIiwicGhvbmUiOiIxNzMwMTI0OTk3NSIsInNjb3BlIjpbImFsbCJdLCJzY2hvb2xJZCI6IjE1MTk5NTg1NjYxMzAyNTc5MjIiLCJ0ZW5hbnRJZCI6IiIsIm5hbWUiOiLmoKHplb8iLCJzdHVkZW50U3RhdHVzIjoiIiwiZXhwIjoxNjcxNzU3NzQ5LCJzY2hvb2xOYW1lIjoi5rWL6K-V5aSn5a2mIiwianRpIjoiMDliZGY3YmItMjQ1OS00MzFkLWJkMjctYzlkNDAzZDJmNWU5Iiwic3RhdHVzIjoiYWN0aXZlIn0.SL0fKv0hKIY0754w_Ms-mcQeTyWntEiDqsblj6HqGluYqdNO8gpGp2cuA-k0LqgtUNpYHoWzHtwkUyEJ8qJW8XZl0cTZQwJxnPcQYHyug-YcNn9lBumeKd-NnmgPDvAZYW81IYYugNRYxExn9pTmscFAe3z6sLLwg8XDnXYGOoGtMQ8bbcjc-CAmB0Ppb9Pmy_hF2rSvAfKgtqM59bxJT3yEKePY4LLXTSBWty-aGvuvnyGRN2yrQt4-N0hrGHtk9ZjsFCCOxaZuWQotJDOc8hMCh4YGhVvfuAvT-Z8uxIfiJj7vx4aR88zq3SDUae3zWsbPzQ4dUN5d7pBIK71Q7w', 'token_type': 'bearer', 'refresh_token': 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0ZW5hbnRUeXBlIjoiIiwiYnJva2VySWQiOiIiLCJocm9Vc2VyVG9rZW4iOm51bGwsInVzZXJfbmFtZSI6IjE3MzAxMjQ5OTc1IiwiYXV0aFN0YXR1cyI6IiIsImF1dGhlbnRpY2F0aW9uSWRlbnRpdHkiOiJsb2dpbiIsInR5cGUiOiJ0ZWFjaGVyIiwidXNlcklkIjoiMTUxOTk1OTIwODUyOTg2Njc1MyIsImNsaWVudF9pZCI6IndvcmthaSIsInN0dWRlbnRJZCI6IiIsInRlYWNoZXJJZCI6IjE1MTk5NTkyMDkyNzY0NTI4NjUiLCJ0ZW5hbnROYW1lIjoiIiwicGhvbmUiOiIxNzMwMTI0OTk3NSIsInNjb3BlIjpbImFsbCJdLCJzY2hvb2xJZCI6IjE1MTk5NTg1NjYxMzAyNTc5MjIiLCJhdGkiOiIwOWJkZjdiYi0yNDU5LTQzMWQtYmQyNy1jOWQ0MDNkMmY1ZTkiLCJ0ZW5hbnRJZCI6IiIsIm5hbWUiOiLmoKHplb8iLCJzdHVkZW50U3RhdHVzIjoiIiwiZXhwIjoxNjcxNzkzNzQ5LCJzY2hvb2xOYW1lIjoi5rWL6K-V5aSn5a2mIiwianRpIjoiYzk5ZDRmOTktZmNmMS00YzkyLThmMmQtYTRmY2JjYjAyMjE2Iiwic3RhdHVzIjoiYWN0aXZlIn0.WAYJK0CJtF1lJZcU4APZMllGn7mL5UKWKAgQEHbmbleGw2vcC8_mG0l1UkYqa2FCJ20AjLuLwEeo2LctfXecSnkuEegTV4_uICr1Uay4EjSCfvQYc4co-ztGPczBiNvHbW3SqMJ8XSOEtDilJPTaHti28Fb9gYwUdhki11rpnqFZkrx900gkr57WqA20VB2yEtQc1OG8Eb64FLqsC-2YURzz4yoCmxlCIo3t6b49YyuLJOoHTgY7lwPKyVdH9IleICPeUYsHSF0rCh3sYKfKkmKOLODhXDZynRaf0nHUr9nC8y0fVhKpD3N_6-RI563UCc9KUFyX8qEE0e3CiwrW8Q', 'expires_in': 35999, 'scope': 'all', 'tenantType': '', 'brokerId': '', 'hroUserToken': None, 'authStatus': '', 'authenticationIdentity': 'login', 'type': 'teacher', 'userId': '1519959208529866753', 'studentId': '', 'teacherId': '1519959209276452865', 'tenantName': '', 'phone': '17301249975', 'schoolId': '1519958566130257922', 'tenantId': '', 'name': '校长', 'studentStatus': '', 'schoolName': '测试大学', 'status': 'active', 'jti': '09bdf7bb-2459-431d-bd27-c9d403d2f5e9'}} |
| 282 | test_login_1 (test_01_login.TestLogin)执行——>【通过】 | 284 | test_login_1 (test_01_login.TestLogin)执行——>【通过】 |
| 283 | </pre> | 285 | </pre> |
| 284 | 286 | ||
| @@ -291,7 +293,7 @@ test_login_1 (test_01_login.TestLogin)銵> | @@ -291,7 +293,7 @@ test_login_1 (test_01_login.TestLogin)銵> | ||
| 291 | <td class="TestLogin">TestLogin</td> | 293 | <td class="TestLogin">TestLogin</td> |
| 292 | <td>test_login_2</td> | 294 | <td>test_login_2</td> |
| 293 | <td>手机号填写错误的</td> | 295 | <td>手机号填写错误的</td> |
| 294 | - <td>0.237s</td> | 296 | + <td>0.22s</td> |
| 295 | 297 | ||
| 296 | <td class="text-warning">失败</td> | 298 | <td class="text-warning">失败</td> |
| 297 | 299 | ||
| @@ -331,12 +333,12 @@ test_login_2 (test_01_login.TestLogin)銵>仃韐乓 | @@ -331,12 +333,12 @@ test_login_2 (test_01_login.TestLogin)銵>仃韐乓 | ||
| 331 | </pre> | 333 | </pre> |
| 332 | 334 | ||
| 333 | 335 | ||
| 334 | - <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_01_login.py", line 56, in test_login | 336 | + <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_01_login.py", line 57, in test_login |
| 335 | raise e | 337 | raise e |
| 336 | </pre> | 338 | </pre> |
| 337 | 339 | ||
| 338 | 340 | ||
| 339 | - <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_01_login.py", line 48, in test_login | 341 | + <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_01_login.py", line 49, in test_login |
| 340 | self.assertEqual(expected['msg'], res['msg']) | 342 | self.assertEqual(expected['msg'], res['msg']) |
| 341 | </pre> | 343 | </pre> |
| 342 | 344 | ||
| @@ -371,7 +373,7 @@ test_login_2 (test_01_login.TestLogin)銵>仃韐乓 | @@ -371,7 +373,7 @@ test_login_2 (test_01_login.TestLogin)銵>仃韐乓 | ||
| 371 | <td class="TestLogin">TestLogin</td> | 373 | <td class="TestLogin">TestLogin</td> |
| 372 | <td>test_login_3</td> | 374 | <td>test_login_3</td> |
| 373 | <td>手机号不进行填写</td> | 375 | <td>手机号不进行填写</td> |
| 374 | - <td>0.235s</td> | 376 | + <td>0.214s</td> |
| 375 | 377 | ||
| 376 | <td class="text-warning">失败</td> | 378 | <td class="text-warning">失败</td> |
| 377 | 379 | ||
| @@ -411,12 +413,12 @@ test_login_3 (test_01_login.TestLogin)銵>仃韐乓 | @@ -411,12 +413,12 @@ test_login_3 (test_01_login.TestLogin)銵>仃韐乓 | ||
| 411 | </pre> | 413 | </pre> |
| 412 | 414 | ||
| 413 | 415 | ||
| 414 | - <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_01_login.py", line 56, in test_login | 416 | + <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_01_login.py", line 57, in test_login |
| 415 | raise e | 417 | raise e |
| 416 | </pre> | 418 | </pre> |
| 417 | 419 | ||
| 418 | 420 | ||
| 419 | - <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_01_login.py", line 48, in test_login | 421 | + <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_01_login.py", line 49, in test_login |
| 420 | self.assertEqual(expected['msg'], res['msg']) | 422 | self.assertEqual(expected['msg'], res['msg']) |
| 421 | </pre> | 423 | </pre> |
| 422 | 424 | ||
| @@ -451,7 +453,7 @@ test_login_3 (test_01_login.TestLogin)銵>仃韐乓 | @@ -451,7 +453,7 @@ test_login_3 (test_01_login.TestLogin)銵>仃韐乓 | ||
| 451 | <td class="TestLogin">TestLogin</td> | 453 | <td class="TestLogin">TestLogin</td> |
| 452 | <td>test_login_4</td> | 454 | <td>test_login_4</td> |
| 453 | <td>密码填写错误</td> | 455 | <td>密码填写错误</td> |
| 454 | - <td>0.219s</td> | 456 | + <td>0.199s</td> |
| 455 | 457 | ||
| 456 | <td class="text-warning">失败</td> | 458 | <td class="text-warning">失败</td> |
| 457 | 459 | ||
| @@ -491,12 +493,12 @@ test_login_4 (test_01_login.TestLogin)銵>仃韐乓 | @@ -491,12 +493,12 @@ test_login_4 (test_01_login.TestLogin)銵>仃韐乓 | ||
| 491 | </pre> | 493 | </pre> |
| 492 | 494 | ||
| 493 | 495 | ||
| 494 | - <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_01_login.py", line 56, in test_login | 496 | + <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_01_login.py", line 57, in test_login |
| 495 | raise e | 497 | raise e |
| 496 | </pre> | 498 | </pre> |
| 497 | 499 | ||
| 498 | 500 | ||
| 499 | - <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_01_login.py", line 48, in test_login | 501 | + <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_01_login.py", line 49, in test_login |
| 500 | self.assertEqual(expected['msg'], res['msg']) | 502 | self.assertEqual(expected['msg'], res['msg']) |
| 501 | </pre> | 503 | </pre> |
| 502 | 504 | ||
| @@ -531,7 +533,7 @@ test_login_4 (test_01_login.TestLogin)銵>仃韐乓 | @@ -531,7 +533,7 @@ test_login_4 (test_01_login.TestLogin)銵>仃韐乓 | ||
| 531 | <td class="TestLogin">TestLogin</td> | 533 | <td class="TestLogin">TestLogin</td> |
| 532 | <td>test_login_5</td> | 534 | <td>test_login_5</td> |
| 533 | <td>密码不进行填写</td> | 535 | <td>密码不进行填写</td> |
| 534 | - <td>0.268s</td> | 536 | + <td>0.217s</td> |
| 535 | 537 | ||
| 536 | <td class="text-warning">失败</td> | 538 | <td class="text-warning">失败</td> |
| 537 | 539 | ||
| @@ -571,12 +573,12 @@ test_login_5 (test_01_login.TestLogin)銵>仃韐乓 | @@ -571,12 +573,12 @@ test_login_5 (test_01_login.TestLogin)銵>仃韐乓 | ||
| 571 | </pre> | 573 | </pre> |
| 572 | 574 | ||
| 573 | 575 | ||
| 574 | - <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_01_login.py", line 56, in test_login | 576 | + <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_01_login.py", line 57, in test_login |
| 575 | raise e | 577 | raise e |
| 576 | </pre> | 578 | </pre> |
| 577 | 579 | ||
| 578 | 580 | ||
| 579 | - <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_01_login.py", line 48, in test_login | 581 | + <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_01_login.py", line 49, in test_login |
| 580 | self.assertEqual(expected['msg'], res['msg']) | 582 | self.assertEqual(expected['msg'], res['msg']) |
| 581 | </pre> | 583 | </pre> |
| 582 | 584 | ||
| @@ -611,7 +613,7 @@ test_login_5 (test_01_login.TestLogin)銵>仃韐乓 | @@ -611,7 +613,7 @@ test_login_5 (test_01_login.TestLogin)銵>仃韐乓 | ||
| 611 | <td class="Test01Department">Test01Department</td> | 613 | <td class="Test01Department">Test01Department</td> |
| 612 | <td>test_add_department_1</td> | 614 | <td>test_add_department_1</td> |
| 613 | <td>新增院系成功</td> | 615 | <td>新增院系成功</td> |
| 614 | - <td>0.297s</td> | 616 | + <td>0.275s</td> |
| 615 | 617 | ||
| 616 | <td class="text-success">成功</td> | 618 | <td class="text-success">成功</td> |
| 617 | 619 | ||
| @@ -625,7 +627,7 @@ test_login_5 (test_01_login.TestLogin)銵>仃韐乓 | @@ -625,7 +627,7 @@ test_login_5 (test_01_login.TestLogin)銵>仃韐乓 | ||
| 625 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> | 627 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> |
| 626 | 628 | ||
| 627 | 629 | ||
| 628 | - <pre>用例入参:{'name': 'py自动化院系20221221_23:10:57_1', 'code': 'py_code20221221_23:10:57_1'} | 630 | + <pre>用例入参:{'name': 'py自动化院系20221222_23:09:11_1', 'code': 'py_code20221222_23:09:11_1'} |
| 629 | 预期结果: {'msg': 'success', 'code': 200, 'data': True} | 631 | 预期结果: {'msg': 'success', 'code': 200, 'data': True} |
| 630 | 实际结果: {'msg': 'success', 'code': 200, 'data': True} | 632 | 实际结果: {'msg': 'success', 'code': 200, 'data': True} |
| 631 | test_add_department_1 (test_02_system_management.Test01Department)执行——>【通过】 | 633 | test_add_department_1 (test_02_system_management.Test01Department)执行——>【通过】 |
| @@ -640,7 +642,7 @@ test_add_department_1 (test_02_system_management.Test01Department)銵> | @@ -640,7 +642,7 @@ test_add_department_1 (test_02_system_management.Test01Department)銵> | ||
| 640 | <td class="Test01Department">Test01Department</td> | 642 | <td class="Test01Department">Test01Department</td> |
| 641 | <td>test_add_department_2</td> | 643 | <td>test_add_department_2</td> |
| 642 | <td>院系名称未填写</td> | 644 | <td>院系名称未填写</td> |
| 643 | - <td>0.242s</td> | 645 | + <td>0.225s</td> |
| 644 | 646 | ||
| 645 | <td class="text-warning">失败</td> | 647 | <td class="text-warning">失败</td> |
| 646 | 648 | ||
| @@ -654,7 +656,7 @@ test_add_department_1 (test_02_system_management.Test01Department)銵> | @@ -654,7 +656,7 @@ test_add_department_1 (test_02_system_management.Test01Department)銵> | ||
| 654 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> | 656 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> |
| 655 | 657 | ||
| 656 | 658 | ||
| 657 | - <pre>用例入参:{'name': '', 'code': 'py_code20221221_23:10:57_2'} | 659 | + <pre>用例入参:{'name': '', 'code': 'py_code20221222_23:09:11_2'} |
| 658 | 预期结果: {'msg': '院系名称未填写', 'code': 500, 'data': None} | 660 | 预期结果: {'msg': '院系名称未填写', 'code': 500, 'data': None} |
| 659 | 实际结果: {'msg': 'size must be between 1 and 30', 'code': 500, 'data': None} | 661 | 实际结果: {'msg': 'size must be between 1 and 30', 'code': 500, 'data': None} |
| 660 | test_add_department_2 (test_02_system_management.Test01Department)执行——>【失败】 | 662 | test_add_department_2 (test_02_system_management.Test01Department)执行——>【失败】 |
| @@ -720,7 +722,7 @@ test_add_department_2 (test_02_system_management.Test01Department)銵> | @@ -720,7 +722,7 @@ test_add_department_2 (test_02_system_management.Test01Department)銵> | ||
| 720 | <td class="Test01Department">Test01Department</td> | 722 | <td class="Test01Department">Test01Department</td> |
| 721 | <td>test_add_department_3</td> | 723 | <td>test_add_department_3</td> |
| 722 | <td>院系名称重复</td> | 724 | <td>院系名称重复</td> |
| 723 | - <td>0.27s</td> | 725 | + <td>0.282s</td> |
| 724 | 726 | ||
| 725 | <td class="text-success">成功</td> | 727 | <td class="text-success">成功</td> |
| 726 | 728 | ||
| @@ -734,7 +736,7 @@ test_add_department_2 (test_02_system_management.Test01Department)銵> | @@ -734,7 +736,7 @@ test_add_department_2 (test_02_system_management.Test01Department)銵> | ||
| 734 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> | 736 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> |
| 735 | 737 | ||
| 736 | 738 | ||
| 737 | - <pre>用例入参:{'name': '院系1', 'code': 'py_code20221221_23:10:58_3'} | 739 | + <pre>用例入参:{'name': '院系1', 'code': 'py_code20221222_23:09:11_3'} |
| 738 | 预期结果: {'msg': '院系名称已存在,请确认', 'code': 500, 'data': None} | 740 | 预期结果: {'msg': '院系名称已存在,请确认', 'code': 500, 'data': None} |
| 739 | 实际结果: {'msg': '院系名称已存在,请确认', 'code': 500, 'data': None} | 741 | 实际结果: {'msg': '院系名称已存在,请确认', 'code': 500, 'data': None} |
| 740 | test_add_department_3 (test_02_system_management.Test01Department)执行——>【通过】 | 742 | test_add_department_3 (test_02_system_management.Test01Department)执行——>【通过】 |
| @@ -749,7 +751,7 @@ test_add_department_3 (test_02_system_management.Test01Department)銵> | @@ -749,7 +751,7 @@ test_add_department_3 (test_02_system_management.Test01Department)銵> | ||
| 749 | <td class="Test01Department">Test01Department</td> | 751 | <td class="Test01Department">Test01Department</td> |
| 750 | <td>test_add_department_4</td> | 752 | <td>test_add_department_4</td> |
| 751 | <td>院系名称长度不可大于30位</td> | 753 | <td>院系名称长度不可大于30位</td> |
| 752 | - <td>0.201s</td> | 754 | + <td>0.222s</td> |
| 753 | 755 | ||
| 754 | <td class="text-warning">失败</td> | 756 | <td class="text-warning">失败</td> |
| 755 | 757 | ||
| @@ -763,7 +765,7 @@ test_add_department_3 (test_02_system_management.Test01Department)銵> | @@ -763,7 +765,7 @@ test_add_department_3 (test_02_system_management.Test01Department)銵> | ||
| 763 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> | 765 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> |
| 764 | 766 | ||
| 765 | 767 | ||
| 766 | - <pre>用例入参:{'name': '院系名称长度大于30的测试院系名称长度大于30的测试院系名称长度大于30的测试院系名称长度大于30的测试', 'code': 'py_code20221221_23:10:58_4'} | 768 | + <pre>用例入参:{'name': '院系名称长度大于30的测试院系名称长度大于30的测试院系名称长度大于30的测试院系名称长度大于30的测试', 'code': 'py_code20221222_23:09:11_4'} |
| 767 | 预期结果: {'msg': '院系名称长度不可大于30', 'code': 500, 'data': None} | 769 | 预期结果: {'msg': '院系名称长度不可大于30', 'code': 500, 'data': None} |
| 768 | 实际结果: {'msg': 'size must be between 1 and 30', 'code': 500, 'data': None} | 770 | 实际结果: {'msg': 'size must be between 1 and 30', 'code': 500, 'data': None} |
| 769 | test_add_department_4 (test_02_system_management.Test01Department)执行——>【失败】 | 771 | test_add_department_4 (test_02_system_management.Test01Department)执行——>【失败】 |
| @@ -829,7 +831,7 @@ test_add_department_4 (test_02_system_management.Test01Department)銵> | @@ -829,7 +831,7 @@ test_add_department_4 (test_02_system_management.Test01Department)銵> | ||
| 829 | <td class="Test01Department">Test01Department</td> | 831 | <td class="Test01Department">Test01Department</td> |
| 830 | <td>test_add_department_5</td> | 832 | <td>test_add_department_5</td> |
| 831 | <td>院系代码不能为空</td> | 833 | <td>院系代码不能为空</td> |
| 832 | - <td>0.241s</td> | 834 | + <td>0.216s</td> |
| 833 | 835 | ||
| 834 | <td class="text-warning">失败</td> | 836 | <td class="text-warning">失败</td> |
| 835 | 837 | ||
| @@ -843,7 +845,7 @@ test_add_department_4 (test_02_system_management.Test01Department)銵> | @@ -843,7 +845,7 @@ test_add_department_4 (test_02_system_management.Test01Department)銵> | ||
| 843 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> | 845 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> |
| 844 | 846 | ||
| 845 | 847 | ||
| 846 | - <pre>用例入参:{'name': 'py自动化院系20221221_23:10:58_5', 'code': ''} | 848 | + <pre>用例入参:{'name': 'py自动化院系20221222_23:09:12_5', 'code': ''} |
| 847 | 预期结果: {'msg': '院系代码不能为空', 'code': 500, 'data': None} | 849 | 预期结果: {'msg': '院系代码不能为空', 'code': 500, 'data': None} |
| 848 | 实际结果: {'msg': 'size must be between 1 and 30', 'code': 500, 'data': None} | 850 | 实际结果: {'msg': 'size must be between 1 and 30', 'code': 500, 'data': None} |
| 849 | test_add_department_5 (test_02_system_management.Test01Department)执行——>【失败】 | 851 | test_add_department_5 (test_02_system_management.Test01Department)执行——>【失败】 |
| @@ -909,7 +911,7 @@ test_add_department_5 (test_02_system_management.Test01Department)銵> | @@ -909,7 +911,7 @@ test_add_department_5 (test_02_system_management.Test01Department)銵> | ||
| 909 | <td class="Test01Department">Test01Department</td> | 911 | <td class="Test01Department">Test01Department</td> |
| 910 | <td>test_add_department_6</td> | 912 | <td>test_add_department_6</td> |
| 911 | <td>院系代码长度不可大于30</td> | 913 | <td>院系代码长度不可大于30</td> |
| 912 | - <td>0.266s</td> | 914 | + <td>0.271s</td> |
| 913 | 915 | ||
| 914 | <td class="text-warning">失败</td> | 916 | <td class="text-warning">失败</td> |
| 915 | 917 | ||
| @@ -923,7 +925,7 @@ test_add_department_5 (test_02_system_management.Test01Department)銵> | @@ -923,7 +925,7 @@ test_add_department_5 (test_02_system_management.Test01Department)銵> | ||
| 923 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> | 925 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> |
| 924 | 926 | ||
| 925 | 927 | ||
| 926 | - <pre>用例入参:{'name': 'py自动化院系20221221_23:10:58_6', 'code': '院系代码长度大于30的测试院系代码长度大于30的测试院系代码长度大于30的测试'} | 928 | + <pre>用例入参:{'name': 'py自动化院系20221222_23:09:12_6', 'code': '院系代码长度大于30的测试院系代码长度大于30的测试院系代码长度大于30的测试'} |
| 927 | 预期结果: {'msg': '院系代码不可大于30', 'code': 500, 'data': None} | 929 | 预期结果: {'msg': '院系代码不可大于30', 'code': 500, 'data': None} |
| 928 | 实际结果: {'msg': 'size must be between 1 and 30', 'code': 500, 'data': None} | 930 | 实际结果: {'msg': 'size must be between 1 and 30', 'code': 500, 'data': None} |
| 929 | test_add_department_6 (test_02_system_management.Test01Department)执行——>【失败】 | 931 | test_add_department_6 (test_02_system_management.Test01Department)执行——>【失败】 |
| @@ -989,7 +991,7 @@ test_add_department_6 (test_02_system_management.Test01Department)銵> | @@ -989,7 +991,7 @@ test_add_department_6 (test_02_system_management.Test01Department)銵> | ||
| 989 | <td class="Test01Department">Test01Department</td> | 991 | <td class="Test01Department">Test01Department</td> |
| 990 | <td>test_add_department_7</td> | 992 | <td>test_add_department_7</td> |
| 991 | <td>新增院系成功</td> | 993 | <td>新增院系成功</td> |
| 992 | - <td>0.295s</td> | 994 | + <td>0.301s</td> |
| 993 | 995 | ||
| 994 | <td class="text-success">成功</td> | 996 | <td class="text-success">成功</td> |
| 995 | 997 | ||
| @@ -1003,7 +1005,7 @@ test_add_department_6 (test_02_system_management.Test01Department)銵> | @@ -1003,7 +1005,7 @@ test_add_department_6 (test_02_system_management.Test01Department)銵> | ||
| 1003 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> | 1005 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> |
| 1004 | 1006 | ||
| 1005 | 1007 | ||
| 1006 | - <pre>用例入参:{'name': 'py自动化院系20221221_23:10:58_7', 'code': 'py_code20221221_23:10:58_7'} | 1008 | + <pre>用例入参:{'name': 'py自动化院系20221222_23:09:12_7', 'code': 'py_code20221222_23:09:12_7'} |
| 1007 | 预期结果: {'msg': 'success', 'code': 200, 'data': True} | 1009 | 预期结果: {'msg': 'success', 'code': 200, 'data': True} |
| 1008 | 实际结果: {'msg': 'success', 'code': 200, 'data': True} | 1010 | 实际结果: {'msg': 'success', 'code': 200, 'data': True} |
| 1009 | test_add_department_7 (test_02_system_management.Test01Department)执行——>【通过】 | 1011 | test_add_department_7 (test_02_system_management.Test01Department)执行——>【通过】 |
| @@ -1018,7 +1020,7 @@ test_add_department_7 (test_02_system_management.Test01Department)銵> | @@ -1018,7 +1020,7 @@ test_add_department_7 (test_02_system_management.Test01Department)銵> | ||
| 1018 | <td class="Test01Department">Test01Department</td> | 1020 | <td class="Test01Department">Test01Department</td> |
| 1019 | <td>test_select_department_1</td> | 1021 | <td>test_select_department_1</td> |
| 1020 | <td>查看院系列表</td> | 1022 | <td>查看院系列表</td> |
| 1021 | - <td>0.348s</td> | 1023 | + <td>0.337s</td> |
| 1022 | 1024 | ||
| 1023 | <td class="text-success">成功</td> | 1025 | <td class="text-success">成功</td> |
| 1024 | 1026 | ||
| @@ -1034,7 +1036,7 @@ test_add_department_7 (test_02_system_management.Test01Department)銵> | @@ -1034,7 +1036,7 @@ test_add_department_7 (test_02_system_management.Test01Department)銵> | ||
| 1034 | 1036 | ||
| 1035 | <pre>用例入参:{'pageNumber': '0', 'pageSize': '3'} | 1037 | <pre>用例入参:{'pageNumber': '0', 'pageSize': '3'} |
| 1036 | 预期结果: {'msg': 'success', 'code': 200} | 1038 | 预期结果: {'msg': 'success', 'code': 200} |
| 1037 | -实际结果: {'msg': 'success', 'code': 200, 'data': {'records': [{'id': '1605581603290345473', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221221_23:10:58_7', 'code': 'py_code20221221_23:10:58_7', 'createdBy': '1519959209276452865', 'createdTime': 1671635459000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605581596885643265', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221221_23:10:57_1', 'code': 'py_code20221221_23:10:57_1', 'createdBy': '1519959209276452865', 'createdTime': 1671635458000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605579433342005250', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221221_23:02:21_7', 'code': 'py_code20221221_23:02:21_7', 'createdBy': '1519959209276452865', 'createdTime': 1671634942000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605579427339956226', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221221_23:02:20_1', 'code': 'py_code20221221_23:02:20_1', 'createdBy': '1519959209276452865', 'createdTime': 1671634940000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605578250598608898', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221221_22:57:39_7', 'code': 'py_code20221221_22:57:39_7', 'createdBy': '1519959209276452865', 'createdTime': 1671634660000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605578245234094081', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221221_22:57:38_1', 'code': 'py_code20221221_22:57:38_1', 'createdBy': '1519959209276452865', 'createdTime': 1671634659000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605577836889239554', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221221_22:56:01_7', 'code': 'py_code20221221_22:56:01_7', 'createdBy': '1519959209276452865', 'createdTime': 1671634561000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605577831612805121', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221221_22:55:59_1', 'code': 'py_code20221221_22:55:59_1', 'createdBy': '1519959209276452865', 'createdTime': 1671634560000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605576985835597825', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221221_22:52:38_7', 'code': 'py_code20221221_22:52:38_7', 'createdBy': '1519959209276452865', 'createdTime': 1671634358000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605576980399779842', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221221_22:52:36_1', 'code': 'py_code20221221_22:52:36_1', 'createdBy': '1519959209276452865', 'createdTime': 1671634357000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605573916599119873', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221221_22:40:26_7', 'code': 'py_code20221221_22:40:26_7', 'createdBy': '1519959209276452865', 'createdTime': 1671633626000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605573911159107585', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221221_22:40:25_1', 'code': 'py_code20221221_22:40:25_1', 'createdBy': '1519959209276452865', 'createdTime': 1671633625000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605553566536560642', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221221_21:19:34_7', 'code': 'py_code20221221_21:19:34_7', 'createdBy': '1519959209276452865', 'createdTime': 1671628775000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605553558311530498', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221221_21:19:32_1', 'code': 'py_code20221221_21:19:32_1', 'createdBy': '1519959209276452865', 'createdTime': 1671628773000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605552693366353921', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221221_21:16:06_7', 'code': 'py_code20221221_21:16:06_7', 'createdBy': '1519959209276452865', 'createdTime': 1671628566000, 'updatedBy': None, 'updatedTime': None}], 'total': 376, 'size': 15, 'current': 1, 'orders': [], 'optimizeCountSql': True, 'searchCount': True, 'countId': '', 'maxLimit': None, 'pages': 26}} | 1039 | +实际结果: {'msg': 'success', 'code': 200, 'data': {'records': [{'id': '1605943544424820738', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221222_23:09:12_7', 'code': 'py_code20221222_23:09:12_7', 'createdBy': '1519959209276452865', 'createdTime': 1671721753000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605943538108198913', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221222_23:09:11_1', 'code': 'py_code20221222_23:09:11_1', 'createdBy': '1519959209276452865', 'createdTime': 1671721751000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605942164523970561', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221222_23:03:43_7', 'code': 'py_code20221222_23:03:43_7', 'createdBy': '1519959209276452865', 'createdTime': 1671721424000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605942157955690498', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221222_23:03:41_1', 'code': 'py_code20221222_23:03:41_1', 'createdBy': '1519959209276452865', 'createdTime': 1671721422000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605840585850482690', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221222_16:20:05_7', 'code': 'py_code20221222_16:20:05_7', 'createdBy': '1519959209276452865', 'createdTime': 1671697205000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605840579781324801', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221222_16:20:03_1', 'code': 'py_code20221222_16:20:03_1', 'createdBy': '1519959209276452865', 'createdTime': 1671697204000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605839199377158145', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221222_16:14:34_7', 'code': 'py_code20221222_16:14:34_7', 'createdBy': '1519959209276452865', 'createdTime': 1671696875000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605839193396080641', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221222_16:14:33_1', 'code': 'py_code20221222_16:14:33_1', 'createdBy': '1519959209276452865', 'createdTime': 1671696873000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605602173553864706', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221222_00:32:43_7', 'code': 'py_code20221222_00:32:43_7', 'createdBy': '1519959209276452865', 'createdTime': 1671640363000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605602164590637057', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221222_00:32:41_1', 'code': 'py_code20221222_00:32:41_1', 'createdBy': '1519959209276452865', 'createdTime': 1671640361000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605600586030772226', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221222_00:26:24_7', 'code': 'py_code20221222_00:26:24_7', 'createdBy': '1519959209276452865', 'createdTime': 1671639985000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605600579462492161', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221222_00:26:23_1', 'code': 'py_code20221222_00:26:23_1', 'createdBy': '1519959209276452865', 'createdTime': 1671639983000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605595424071479298', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221222_00:05:54_7', 'code': 'py_code20221222_00:05:54_7', 'createdBy': '1519959209276452865', 'createdTime': 1671638754000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605595417662582785', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221222_00:05:52_1', 'code': 'py_code20221222_00:05:52_1', 'createdBy': '1519959209276452865', 'createdTime': 1671638753000, 'updatedBy': None, 'updatedTime': None}, {'id': '1605594240384364546', 'schoolId': '1519958566130257922', 'name': 'py自动化院系20221222_00:01:11_7', 'code': 'py_code20221222_00:01:11_7', 'createdBy': '1519959209276452865', 'createdTime': 1671638472000, 'updatedBy': None, 'updatedTime': None}], 'total': 392, 'size': 15, 'current': 1, 'orders': [], 'optimizeCountSql': True, 'searchCount': True, 'countId': '', 'maxLimit': None, 'pages': 27}} |
| 1038 | test_select_department_1 (test_02_system_management.Test01Department)执行——>【通过】 | 1040 | test_select_department_1 (test_02_system_management.Test01Department)执行——>【通过】 |
| 1039 | </pre> | 1041 | </pre> |
| 1040 | 1042 | ||
| @@ -1047,7 +1049,7 @@ test_select_department_1 (test_02_system_management.Test01Department)銵 | @@ -1047,7 +1049,7 @@ test_select_department_1 (test_02_system_management.Test01Department)銵 | ||
| 1047 | <td class="Test02Specialty">Test02Specialty</td> | 1049 | <td class="Test02Specialty">Test02Specialty</td> |
| 1048 | <td>test_add_specialty_01</td> | 1050 | <td>test_add_specialty_01</td> |
| 1049 | <td>新增专业成功</td> | 1051 | <td>新增专业成功</td> |
| 1050 | - <td>0.884s</td> | 1052 | + <td>0.971s</td> |
| 1051 | 1053 | ||
| 1052 | <td class="text-success">成功</td> | 1054 | <td class="text-success">成功</td> |
| 1053 | 1055 | ||
| @@ -1061,7 +1063,7 @@ test_select_department_1 (test_02_system_management.Test01Department)銵 | @@ -1061,7 +1063,7 @@ test_select_department_1 (test_02_system_management.Test01Department)銵 | ||
| 1061 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> | 1063 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> |
| 1062 | 1064 | ||
| 1063 | 1065 | ||
| 1064 | - <pre>用例入参:{'name': 'py专业23:11:00_1', 'code': 'py_code23:11:00_1', 'departmentId': '1605581603290345473', 'category': 'science'} | 1066 | + <pre>用例入参:{'name': 'py专业23:09:13_1', 'code': 'py_code23:09:13_1', 'departmentId': '1605943544424820738', 'category': 'science'} |
| 1065 | 预期结果: {'msg': 'success', 'code': 200, 'data': True} | 1067 | 预期结果: {'msg': 'success', 'code': 200, 'data': True} |
| 1066 | 实际结果: {'msg': 'success', 'code': 200, 'data': True} | 1068 | 实际结果: {'msg': 'success', 'code': 200, 'data': True} |
| 1067 | test_add_specialty_01 (test_02_system_management.Test02Specialty)执行——>【通过】 | 1069 | test_add_specialty_01 (test_02_system_management.Test02Specialty)执行——>【通过】 |
| @@ -1076,7 +1078,7 @@ test_add_specialty_01 (test_02_system_management.Test02Specialty)銵> | @@ -1076,7 +1078,7 @@ test_add_specialty_01 (test_02_system_management.Test02Specialty)銵> | ||
| 1076 | <td class="Test02Specialty">Test02Specialty</td> | 1078 | <td class="Test02Specialty">Test02Specialty</td> |
| 1077 | <td>test_add_specialty_02</td> | 1079 | <td>test_add_specialty_02</td> |
| 1078 | <td>新增专业失败,院系未填写</td> | 1080 | <td>新增专业失败,院系未填写</td> |
| 1079 | - <td>0.813s</td> | 1081 | + <td>0.867s</td> |
| 1080 | 1082 | ||
| 1081 | <td class="text-success">成功</td> | 1083 | <td class="text-success">成功</td> |
| 1082 | 1084 | ||
| @@ -1090,7 +1092,7 @@ test_add_specialty_01 (test_02_system_management.Test02Specialty)銵> | @@ -1090,7 +1092,7 @@ test_add_specialty_01 (test_02_system_management.Test02Specialty)銵> | ||
| 1090 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> | 1092 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> |
| 1091 | 1093 | ||
| 1092 | 1094 | ||
| 1093 | - <pre>用例入参:{'name': 'py专业23:11:00_2', 'code': 'py_code23:11:00_2', 'departmentId': '', 'category': 'science'} | 1095 | + <pre>用例入参:{'name': 'py专业23:09:14_2', 'code': 'py_code23:09:14_2', 'departmentId': '', 'category': 'science'} |
| 1094 | 预期结果: {'msg': '院系不能为空', 'code': 500, 'data': None} | 1096 | 预期结果: {'msg': '院系不能为空', 'code': 500, 'data': None} |
| 1095 | 实际结果: {'msg': '院系不能为空', 'code': 500, 'data': None} | 1097 | 实际结果: {'msg': '院系不能为空', 'code': 500, 'data': None} |
| 1096 | test_add_specialty_02 (test_02_system_management.Test02Specialty)执行——>【通过】 | 1098 | test_add_specialty_02 (test_02_system_management.Test02Specialty)执行——>【通过】 |
| @@ -1105,7 +1107,7 @@ test_add_specialty_02 (test_02_system_management.Test02Specialty)銵> | @@ -1105,7 +1107,7 @@ test_add_specialty_02 (test_02_system_management.Test02Specialty)銵> | ||
| 1105 | <td class="Test02Specialty">Test02Specialty</td> | 1107 | <td class="Test02Specialty">Test02Specialty</td> |
| 1106 | <td>test_add_specialty_03</td> | 1108 | <td>test_add_specialty_03</td> |
| 1107 | <td>新增专业失败,院系不存在</td> | 1109 | <td>新增专业失败,院系不存在</td> |
| 1108 | - <td>0.858s</td> | 1110 | + <td>0.938s</td> |
| 1109 | 1111 | ||
| 1110 | <td class="text-warning">失败</td> | 1112 | <td class="text-warning">失败</td> |
| 1111 | 1113 | ||
| @@ -1119,7 +1121,7 @@ test_add_specialty_02 (test_02_system_management.Test02Specialty)銵> | @@ -1119,7 +1121,7 @@ test_add_specialty_02 (test_02_system_management.Test02Specialty)銵> | ||
| 1119 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> | 1121 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> |
| 1120 | 1122 | ||
| 1121 | 1123 | ||
| 1122 | - <pre>用例入参:{'name': 'py专业23:11:01_3', 'code': 'py_code23:11:01_3', 'departmentId': '1605581603290345473', 'category': 'science'} | 1124 | + <pre>用例入参:{'name': 'py专业23:09:15_3', 'code': 'py_code23:09:15_3', 'departmentId': '1605943544424820738', 'category': 'science'} |
| 1123 | 预期结果: {'msg': '院系不存在', 'code': 500, 'data': None} | 1125 | 预期结果: {'msg': '院系不存在', 'code': 500, 'data': None} |
| 1124 | 实际结果: {'msg': 'success', 'code': 200, 'data': True} | 1126 | 实际结果: {'msg': 'success', 'code': 200, 'data': True} |
| 1125 | test_add_specialty_03 (test_02_system_management.Test02Specialty)执行——>【失败】 | 1127 | test_add_specialty_03 (test_02_system_management.Test02Specialty)执行——>【失败】 |
| @@ -1145,12 +1147,12 @@ test_add_specialty_03 (test_02_system_management.Test02Specialty)銵> | @@ -1145,12 +1147,12 @@ test_add_specialty_03 (test_02_system_management.Test02Specialty)銵> | ||
| 1145 | </pre> | 1147 | </pre> |
| 1146 | 1148 | ||
| 1147 | 1149 | ||
| 1148 | - <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 203, in test_add_specialty | 1150 | + <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 207, in test_add_specialty |
| 1149 | raise e | 1151 | raise e |
| 1150 | </pre> | 1152 | </pre> |
| 1151 | 1153 | ||
| 1152 | 1154 | ||
| 1153 | - <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 197, in test_add_specialty | 1155 | + <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 201, in test_add_specialty |
| 1154 | self.assertEqual(expected["msg"], res["msg"]) | 1156 | self.assertEqual(expected["msg"], res["msg"]) |
| 1155 | </pre> | 1157 | </pre> |
| 1156 | 1158 | ||
| @@ -1185,7 +1187,7 @@ test_add_specialty_03 (test_02_system_management.Test02Specialty)銵> | @@ -1185,7 +1187,7 @@ test_add_specialty_03 (test_02_system_management.Test02Specialty)銵> | ||
| 1185 | <td class="Test02Specialty">Test02Specialty</td> | 1187 | <td class="Test02Specialty">Test02Specialty</td> |
| 1186 | <td>test_add_specialty_04</td> | 1188 | <td>test_add_specialty_04</td> |
| 1187 | <td>新增专业失败,专业名称未填写</td> | 1189 | <td>新增专业失败,专业名称未填写</td> |
| 1188 | - <td>0.804s</td> | 1190 | + <td>0.867s</td> |
| 1189 | 1191 | ||
| 1190 | <td class="text-warning">失败</td> | 1192 | <td class="text-warning">失败</td> |
| 1191 | 1193 | ||
| @@ -1199,7 +1201,7 @@ test_add_specialty_03 (test_02_system_management.Test02Specialty)銵> | @@ -1199,7 +1201,7 @@ test_add_specialty_03 (test_02_system_management.Test02Specialty)銵> | ||
| 1199 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> | 1201 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> |
| 1200 | 1202 | ||
| 1201 | 1203 | ||
| 1202 | - <pre>用例入参:{'name': '', 'code': 'py_code23:11:02_4', 'departmentId': '1605581603290345473', 'category': 'science'} | 1204 | + <pre>用例入参:{'name': '', 'code': 'py_code23:09:16_4', 'departmentId': '1605943544424820738', 'category': 'science'} |
| 1203 | 预期结果: {'msg': '专业名称未填写', 'code': 500, 'data': None} | 1205 | 预期结果: {'msg': '专业名称未填写', 'code': 500, 'data': None} |
| 1204 | 实际结果: {'msg': 'size must be between 1 and 30', 'code': 500, 'data': None} | 1206 | 实际结果: {'msg': 'size must be between 1 and 30', 'code': 500, 'data': None} |
| 1205 | test_add_specialty_04 (test_02_system_management.Test02Specialty)执行——>【失败】 | 1207 | test_add_specialty_04 (test_02_system_management.Test02Specialty)执行——>【失败】 |
| @@ -1225,12 +1227,12 @@ test_add_specialty_04 (test_02_system_management.Test02Specialty)銵> | @@ -1225,12 +1227,12 @@ test_add_specialty_04 (test_02_system_management.Test02Specialty)銵> | ||
| 1225 | </pre> | 1227 | </pre> |
| 1226 | 1228 | ||
| 1227 | 1229 | ||
| 1228 | - <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 203, in test_add_specialty | 1230 | + <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 207, in test_add_specialty |
| 1229 | raise e | 1231 | raise e |
| 1230 | </pre> | 1232 | </pre> |
| 1231 | 1233 | ||
| 1232 | 1234 | ||
| 1233 | - <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 197, in test_add_specialty | 1235 | + <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 201, in test_add_specialty |
| 1234 | self.assertEqual(expected["msg"], res["msg"]) | 1236 | self.assertEqual(expected["msg"], res["msg"]) |
| 1235 | </pre> | 1237 | </pre> |
| 1236 | 1238 | ||
| @@ -1265,7 +1267,7 @@ test_add_specialty_04 (test_02_system_management.Test02Specialty)銵> | @@ -1265,7 +1267,7 @@ test_add_specialty_04 (test_02_system_management.Test02Specialty)銵> | ||
| 1265 | <td class="Test02Specialty">Test02Specialty</td> | 1267 | <td class="Test02Specialty">Test02Specialty</td> |
| 1266 | <td>test_add_specialty_05</td> | 1268 | <td>test_add_specialty_05</td> |
| 1267 | <td>新增专业失败,专业名称长度不能大于30</td> | 1269 | <td>新增专业失败,专业名称长度不能大于30</td> |
| 1268 | - <td>0.948s</td> | 1270 | + <td>0.871s</td> |
| 1269 | 1271 | ||
| 1270 | <td class="text-warning">失败</td> | 1272 | <td class="text-warning">失败</td> |
| 1271 | 1273 | ||
| @@ -1279,7 +1281,7 @@ test_add_specialty_04 (test_02_system_management.Test02Specialty)銵> | @@ -1279,7 +1281,7 @@ test_add_specialty_04 (test_02_system_management.Test02Specialty)銵> | ||
| 1279 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> | 1281 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> |
| 1280 | 1282 | ||
| 1281 | 1283 | ||
| 1282 | - <pre>用例入参:{'name': '专业大于301234567890专业大于301234567890', 'code': 'py_code23:11:03_5', 'departmentId': '1605581603290345473', 'category': 'science'} | 1284 | + <pre>用例入参:{'name': '专业大于301234567890专业大于301234567890', 'code': 'py_code23:09:17_5', 'departmentId': '1605943544424820738', 'category': 'science'} |
| 1283 | 预期结果: {'msg': '专业名称不能大于30', 'code': 500, 'data': None} | 1285 | 预期结果: {'msg': '专业名称不能大于30', 'code': 500, 'data': None} |
| 1284 | 实际结果: {'msg': 'size must be between 1 and 30', 'code': 500, 'data': None} | 1286 | 实际结果: {'msg': 'size must be between 1 and 30', 'code': 500, 'data': None} |
| 1285 | test_add_specialty_05 (test_02_system_management.Test02Specialty)执行——>【失败】 | 1287 | test_add_specialty_05 (test_02_system_management.Test02Specialty)执行——>【失败】 |
| @@ -1305,12 +1307,12 @@ test_add_specialty_05 (test_02_system_management.Test02Specialty)銵> | @@ -1305,12 +1307,12 @@ test_add_specialty_05 (test_02_system_management.Test02Specialty)銵> | ||
| 1305 | </pre> | 1307 | </pre> |
| 1306 | 1308 | ||
| 1307 | 1309 | ||
| 1308 | - <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 203, in test_add_specialty | 1310 | + <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 207, in test_add_specialty |
| 1309 | raise e | 1311 | raise e |
| 1310 | </pre> | 1312 | </pre> |
| 1311 | 1313 | ||
| 1312 | 1314 | ||
| 1313 | - <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 197, in test_add_specialty | 1315 | + <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 201, in test_add_specialty |
| 1314 | self.assertEqual(expected["msg"], res["msg"]) | 1316 | self.assertEqual(expected["msg"], res["msg"]) |
| 1315 | </pre> | 1317 | </pre> |
| 1316 | 1318 | ||
| @@ -1345,7 +1347,7 @@ test_add_specialty_05 (test_02_system_management.Test02Specialty)銵> | @@ -1345,7 +1347,7 @@ test_add_specialty_05 (test_02_system_management.Test02Specialty)銵> | ||
| 1345 | <td class="Test02Specialty">Test02Specialty</td> | 1347 | <td class="Test02Specialty">Test02Specialty</td> |
| 1346 | <td>test_add_specialty_06</td> | 1348 | <td>test_add_specialty_06</td> |
| 1347 | <td>新增专业失败,专业名称重复</td> | 1349 | <td>新增专业失败,专业名称重复</td> |
| 1348 | - <td>1.01s</td> | 1350 | + <td>1.02s</td> |
| 1349 | 1351 | ||
| 1350 | <td class="text-success">成功</td> | 1352 | <td class="text-success">成功</td> |
| 1351 | 1353 | ||
| @@ -1359,7 +1361,7 @@ test_add_specialty_05 (test_02_system_management.Test02Specialty)銵> | @@ -1359,7 +1361,7 @@ test_add_specialty_05 (test_02_system_management.Test02Specialty)銵> | ||
| 1359 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> | 1361 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> |
| 1360 | 1362 | ||
| 1361 | 1363 | ||
| 1362 | - <pre>用例入参:{'name': '第二个专业-2-1', 'code': 'py_code23:11:04_6', 'departmentId': '1605581603290345473', 'category': 'science'} | 1364 | + <pre>用例入参:{'name': '第二个专业-2-1', 'code': 'py_code23:09:18_6', 'departmentId': '1605943544424820738', 'category': 'science'} |
| 1363 | 预期结果: {'msg': '专业名称已存在,请确认', 'code': 500, 'data': None} | 1365 | 预期结果: {'msg': '专业名称已存在,请确认', 'code': 500, 'data': None} |
| 1364 | 实际结果: {'msg': '专业名称已存在,请确认', 'code': 500, 'data': None} | 1366 | 实际结果: {'msg': '专业名称已存在,请确认', 'code': 500, 'data': None} |
| 1365 | test_add_specialty_06 (test_02_system_management.Test02Specialty)执行——>【通过】 | 1367 | test_add_specialty_06 (test_02_system_management.Test02Specialty)执行——>【通过】 |
| @@ -1374,7 +1376,7 @@ test_add_specialty_06 (test_02_system_management.Test02Specialty)銵> | @@ -1374,7 +1376,7 @@ test_add_specialty_06 (test_02_system_management.Test02Specialty)銵> | ||
| 1374 | <td class="Test02Specialty">Test02Specialty</td> | 1376 | <td class="Test02Specialty">Test02Specialty</td> |
| 1375 | <td>test_add_specialty_07</td> | 1377 | <td>test_add_specialty_07</td> |
| 1376 | <td>新增专业失败,专业代码未填写</td> | 1378 | <td>新增专业失败,专业代码未填写</td> |
| 1377 | - <td>0.936s</td> | 1379 | + <td>0.891s</td> |
| 1378 | 1380 | ||
| 1379 | <td class="text-warning">失败</td> | 1381 | <td class="text-warning">失败</td> |
| 1380 | 1382 | ||
| @@ -1388,7 +1390,7 @@ test_add_specialty_06 (test_02_system_management.Test02Specialty)銵> | @@ -1388,7 +1390,7 @@ test_add_specialty_06 (test_02_system_management.Test02Specialty)銵> | ||
| 1388 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> | 1390 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> |
| 1389 | 1391 | ||
| 1390 | 1392 | ||
| 1391 | - <pre>用例入参:{'name': 'py专业23:11:05_7', 'code': '', 'departmentId': '1605581603290345473', 'category': 'science'} | 1393 | + <pre>用例入参:{'name': 'py专业23:09:19_7', 'code': '', 'departmentId': '1605943544424820738', 'category': 'science'} |
| 1392 | 预期结果: {'msg': '专业代码不能为空', 'code': 500, 'data': None} | 1394 | 预期结果: {'msg': '专业代码不能为空', 'code': 500, 'data': None} |
| 1393 | 实际结果: {'msg': 'size must be between 1 and 30', 'code': 500, 'data': None} | 1395 | 实际结果: {'msg': 'size must be between 1 and 30', 'code': 500, 'data': None} |
| 1394 | test_add_specialty_07 (test_02_system_management.Test02Specialty)执行——>【失败】 | 1396 | test_add_specialty_07 (test_02_system_management.Test02Specialty)执行——>【失败】 |
| @@ -1414,12 +1416,12 @@ test_add_specialty_07 (test_02_system_management.Test02Specialty)銵> | @@ -1414,12 +1416,12 @@ test_add_specialty_07 (test_02_system_management.Test02Specialty)銵> | ||
| 1414 | </pre> | 1416 | </pre> |
| 1415 | 1417 | ||
| 1416 | 1418 | ||
| 1417 | - <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 203, in test_add_specialty | 1419 | + <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 207, in test_add_specialty |
| 1418 | raise e | 1420 | raise e |
| 1419 | </pre> | 1421 | </pre> |
| 1420 | 1422 | ||
| 1421 | 1423 | ||
| 1422 | - <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 197, in test_add_specialty | 1424 | + <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 201, in test_add_specialty |
| 1423 | self.assertEqual(expected["msg"], res["msg"]) | 1425 | self.assertEqual(expected["msg"], res["msg"]) |
| 1424 | </pre> | 1426 | </pre> |
| 1425 | 1427 | ||
| @@ -1454,7 +1456,7 @@ test_add_specialty_07 (test_02_system_management.Test02Specialty)銵> | @@ -1454,7 +1456,7 @@ test_add_specialty_07 (test_02_system_management.Test02Specialty)銵> | ||
| 1454 | <td class="Test02Specialty">Test02Specialty</td> | 1456 | <td class="Test02Specialty">Test02Specialty</td> |
| 1455 | <td>test_add_specialty_08</td> | 1457 | <td>test_add_specialty_08</td> |
| 1456 | <td>新增专业失败,专业代码长度不能大于30</td> | 1458 | <td>新增专业失败,专业代码长度不能大于30</td> |
| 1457 | - <td>0.887s</td> | 1459 | + <td>0.933s</td> |
| 1458 | 1460 | ||
| 1459 | <td class="text-warning">失败</td> | 1461 | <td class="text-warning">失败</td> |
| 1460 | 1462 | ||
| @@ -1468,7 +1470,7 @@ test_add_specialty_07 (test_02_system_management.Test02Specialty)銵> | @@ -1468,7 +1470,7 @@ test_add_specialty_07 (test_02_system_management.Test02Specialty)銵> | ||
| 1468 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> | 1470 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> |
| 1469 | 1471 | ||
| 1470 | 1472 | ||
| 1471 | - <pre>用例入参:{'name': 'py专业23:11:06_8', 'code': '专业代码大于301234567890专业大于301234567890', 'departmentId': '1605581603290345473', 'category': 'science'} | 1473 | + <pre>用例入参:{'name': 'py专业23:09:20_8', 'code': '专业代码大于301234567890专业大于301234567890', 'departmentId': '1605943544424820738', 'category': 'science'} |
| 1472 | 预期结果: {'msg': '专业代码不能大于30', 'code': 500, 'data': None} | 1474 | 预期结果: {'msg': '专业代码不能大于30', 'code': 500, 'data': None} |
| 1473 | 实际结果: {'msg': 'size must be between 1 and 30', 'code': 500, 'data': None} | 1475 | 实际结果: {'msg': 'size must be between 1 and 30', 'code': 500, 'data': None} |
| 1474 | test_add_specialty_08 (test_02_system_management.Test02Specialty)执行——>【失败】 | 1476 | test_add_specialty_08 (test_02_system_management.Test02Specialty)执行——>【失败】 |
| @@ -1494,12 +1496,12 @@ test_add_specialty_08 (test_02_system_management.Test02Specialty)銵> | @@ -1494,12 +1496,12 @@ test_add_specialty_08 (test_02_system_management.Test02Specialty)銵> | ||
| 1494 | </pre> | 1496 | </pre> |
| 1495 | 1497 | ||
| 1496 | 1498 | ||
| 1497 | - <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 203, in test_add_specialty | 1499 | + <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 207, in test_add_specialty |
| 1498 | raise e | 1500 | raise e |
| 1499 | </pre> | 1501 | </pre> |
| 1500 | 1502 | ||
| 1501 | 1503 | ||
| 1502 | - <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 197, in test_add_specialty | 1504 | + <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 201, in test_add_specialty |
| 1503 | self.assertEqual(expected["msg"], res["msg"]) | 1505 | self.assertEqual(expected["msg"], res["msg"]) |
| 1504 | </pre> | 1506 | </pre> |
| 1505 | 1507 | ||
| @@ -1534,7 +1536,7 @@ test_add_specialty_08 (test_02_system_management.Test02Specialty)銵> | @@ -1534,7 +1536,7 @@ test_add_specialty_08 (test_02_system_management.Test02Specialty)銵> | ||
| 1534 | <td class="Test02Specialty">Test02Specialty</td> | 1536 | <td class="Test02Specialty">Test02Specialty</td> |
| 1535 | <td>test_add_specialty_09</td> | 1537 | <td>test_add_specialty_09</td> |
| 1536 | <td>新增专业失败,学科门类未填写</td> | 1538 | <td>新增专业失败,学科门类未填写</td> |
| 1537 | - <td>0.873s</td> | 1539 | + <td>0.903s</td> |
| 1538 | 1540 | ||
| 1539 | <td class="text-warning">失败</td> | 1541 | <td class="text-warning">失败</td> |
| 1540 | 1542 | ||
| @@ -1548,9 +1550,9 @@ test_add_specialty_08 (test_02_system_management.Test02Specialty)銵> | @@ -1548,9 +1550,9 @@ test_add_specialty_08 (test_02_system_management.Test02Specialty)銵> | ||
| 1548 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> | 1550 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> |
| 1549 | 1551 | ||
| 1550 | 1552 | ||
| 1551 | - <pre>用例入参:{'name': 'py专业23:11:07_9', 'code': 'py_code23:11:07_9', 'departmentId': '1605581603290345473', 'category': ''} | 1553 | + <pre>用例入参:{'name': 'py专业23:09:20_9', 'code': 'py_code23:09:20_9', 'departmentId': '1605943544424820738', 'category': ''} |
| 1552 | 预期结果: {'msg': '学科门类不能为空', 'code': 500, 'data': None} | 1554 | 预期结果: {'msg': '学科门类不能为空', 'code': 500, 'data': None} |
| 1553 | -实际结果: {'msg': 'success', 'code': 200, 'data': True} | 1555 | +实际结果: {'msg': '学科门类不存在', 'code': 500, 'data': None} |
| 1554 | test_add_specialty_09 (test_02_system_management.Test02Specialty)执行——>【失败】 | 1556 | test_add_specialty_09 (test_02_system_management.Test02Specialty)执行——>【失败】 |
| 1555 | </pre> | 1557 | </pre> |
| 1556 | 1558 | ||
| @@ -1574,12 +1576,12 @@ test_add_specialty_09 (test_02_system_management.Test02Specialty)銵> | @@ -1574,12 +1576,12 @@ test_add_specialty_09 (test_02_system_management.Test02Specialty)銵> | ||
| 1574 | </pre> | 1576 | </pre> |
| 1575 | 1577 | ||
| 1576 | 1578 | ||
| 1577 | - <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 203, in test_add_specialty | 1579 | + <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 207, in test_add_specialty |
| 1578 | raise e | 1580 | raise e |
| 1579 | </pre> | 1581 | </pre> |
| 1580 | 1582 | ||
| 1581 | 1583 | ||
| 1582 | - <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 197, in test_add_specialty | 1584 | + <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 201, in test_add_specialty |
| 1583 | self.assertEqual(expected["msg"], res["msg"]) | 1585 | self.assertEqual(expected["msg"], res["msg"]) |
| 1584 | </pre> | 1586 | </pre> |
| 1585 | 1587 | ||
| @@ -1599,9 +1601,9 @@ test_add_specialty_09 (test_02_system_management.Test02Specialty)銵> | @@ -1599,9 +1601,9 @@ test_add_specialty_09 (test_02_system_management.Test02Specialty)銵> | ||
| 1599 | </pre> | 1601 | </pre> |
| 1600 | 1602 | ||
| 1601 | 1603 | ||
| 1602 | - <pre>AssertionError: '学科门类不能为空' != 'success' | 1604 | + <pre>AssertionError: '学科门类不能为空' != '学科门类不存在' |
| 1603 | - 学科门类不能为空 | 1605 | - 学科门类不能为空 |
| 1604 | -+ success | 1606 | ++ 学科门类不存在 |
| 1605 | 1607 | ||
| 1606 | </pre> | 1608 | </pre> |
| 1607 | 1609 | ||
| @@ -1614,9 +1616,9 @@ test_add_specialty_09 (test_02_system_management.Test02Specialty)銵> | @@ -1614,9 +1616,9 @@ test_add_specialty_09 (test_02_system_management.Test02Specialty)銵> | ||
| 1614 | <td class="Test02Specialty">Test02Specialty</td> | 1616 | <td class="Test02Specialty">Test02Specialty</td> |
| 1615 | <td>test_add_specialty_10</td> | 1617 | <td>test_add_specialty_10</td> |
| 1616 | <td>新增专业失败,学科门类填写错误</td> | 1618 | <td>新增专业失败,学科门类填写错误</td> |
| 1617 | - <td>0.88s</td> | 1619 | + <td>0.928s</td> |
| 1618 | 1620 | ||
| 1619 | - <td class="text-warning">失败</td> | 1621 | + <td class="text-success">成功</td> |
| 1620 | 1622 | ||
| 1621 | <td> | 1623 | <td> |
| 1622 | <button type="button" class="btn btn-success btn_info">查看详情</button> | 1624 | <button type="button" class="btn btn-success btn_info">查看详情</button> |
| @@ -1628,10 +1630,68 @@ test_add_specialty_09 (test_02_system_management.Test02Specialty)銵> | @@ -1628,10 +1630,68 @@ test_add_specialty_09 (test_02_system_management.Test02Specialty)銵> | ||
| 1628 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> | 1630 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> |
| 1629 | 1631 | ||
| 1630 | 1632 | ||
| 1631 | - <pre>用例入参:{'name': 'py专业23:11:08_10', 'code': 'py_code23:11:08_10', 'departmentId': '1605581603290345473', 'category': 'scienwce'} | 1633 | + <pre>用例入参:{'name': 'py专业23:09:21_10', 'code': 'py_code23:09:21_10', 'departmentId': '1605943544424820738', 'category': 'scienwce'} |
| 1632 | 预期结果: {'msg': '学科门类不存在', 'code': 500, 'data': None} | 1634 | 预期结果: {'msg': '学科门类不存在', 'code': 500, 'data': None} |
| 1635 | +实际结果: {'msg': '学科门类不存在', 'code': 500, 'data': None} | ||
| 1636 | +test_add_specialty_10 (test_02_system_management.Test02Specialty)执行——>【通过】 | ||
| 1637 | +</pre> | ||
| 1638 | + | ||
| 1639 | + | ||
| 1640 | + </td> | ||
| 1641 | + </tr> | ||
| 1642 | + | ||
| 1643 | + <tr> | ||
| 1644 | + <td>24</td> | ||
| 1645 | + <td class="Test03Year">Test03Year</td> | ||
| 1646 | + <td>test_add_year_1</td> | ||
| 1647 | + <td>新增学年学期成功</td> | ||
| 1648 | + <td>0.288s</td> | ||
| 1649 | + | ||
| 1650 | + <td class="text-success">成功</td> | ||
| 1651 | + | ||
| 1652 | + <td> | ||
| 1653 | + <button type="button" class="btn btn-success btn_info">查看详情</button> | ||
| 1654 | + </td> | ||
| 1655 | + </tr> | ||
| 1656 | + | ||
| 1657 | + <tr class="test_log"> | ||
| 1658 | + | ||
| 1659 | + <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> | ||
| 1660 | + | ||
| 1661 | + | ||
| 1662 | + <pre>用例入参:{'year': 'py学年23:09:23_1', 'remark': 'py_comment备注23:09:23_1', 'terms': [{'sort': 1, 'startTime': 1667376499000, 'endTime': 1704115459000}]} | ||
| 1663 | +预期结果: {'msg': 'success', 'code': 200, 'data': True} | ||
| 1664 | +实际结果: {'msg': 'success', 'code': 200, 'data': True} | ||
| 1665 | +test_add_year_1 (test_02_system_management.Test03Year)执行——>【通过】 | ||
| 1666 | +</pre> | ||
| 1667 | + | ||
| 1668 | + | ||
| 1669 | + </td> | ||
| 1670 | + </tr> | ||
| 1671 | + | ||
| 1672 | + <tr> | ||
| 1673 | + <td>25</td> | ||
| 1674 | + <td class="Test03Year">Test03Year</td> | ||
| 1675 | + <td>test_add_year_2</td> | ||
| 1676 | + <td>学年学期开始时间和结束时间不可交叉</td> | ||
| 1677 | + <td>0.231s</td> | ||
| 1678 | + | ||
| 1679 | + <td class="text-warning">失败</td> | ||
| 1680 | + | ||
| 1681 | + <td> | ||
| 1682 | + <button type="button" class="btn btn-success btn_info">查看详情</button> | ||
| 1683 | + </td> | ||
| 1684 | + </tr> | ||
| 1685 | + | ||
| 1686 | + <tr class="test_log"> | ||
| 1687 | + | ||
| 1688 | + <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> | ||
| 1689 | + | ||
| 1690 | + | ||
| 1691 | + <pre>用例入参:{'year': 'py学年23:09:23_2', 'remark': 'py_comment备注23:09:23_2', 'terms': [{'sort': 1, 'startTime': 1667376499000, 'endTime': 1704115459000}, {'sort': 2, 'startTime': 1667376499000, 'endTime': 1704115459000}]} | ||
| 1692 | +预期结果: {'msg': '学期起止时间不能交叉', 'code': 500, 'data': None} | ||
| 1633 | 实际结果: {'msg': 'success', 'code': 200, 'data': True} | 1693 | 实际结果: {'msg': 'success', 'code': 200, 'data': True} |
| 1634 | -test_add_specialty_10 (test_02_system_management.Test02Specialty)执行——>【失败】 | 1694 | +test_add_year_2 (test_02_system_management.Test03Year)执行——>【失败】 |
| 1635 | </pre> | 1695 | </pre> |
| 1636 | 1696 | ||
| 1637 | 1697 | ||
| @@ -1654,12 +1714,12 @@ test_add_specialty_10 (test_02_system_management.Test02Specialty)銵> | @@ -1654,12 +1714,12 @@ test_add_specialty_10 (test_02_system_management.Test02Specialty)銵> | ||
| 1654 | </pre> | 1714 | </pre> |
| 1655 | 1715 | ||
| 1656 | 1716 | ||
| 1657 | - <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 203, in test_add_specialty | 1717 | + <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 272, in test_add_year |
| 1658 | raise e | 1718 | raise e |
| 1659 | </pre> | 1719 | </pre> |
| 1660 | 1720 | ||
| 1661 | 1721 | ||
| 1662 | - <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 197, in test_add_specialty | 1722 | + <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 266, in test_add_year |
| 1663 | self.assertEqual(expected["msg"], res["msg"]) | 1723 | self.assertEqual(expected["msg"], res["msg"]) |
| 1664 | </pre> | 1724 | </pre> |
| 1665 | 1725 | ||
| @@ -1679,8 +1739,8 @@ test_add_specialty_10 (test_02_system_management.Test02Specialty)銵> | @@ -1679,8 +1739,8 @@ test_add_specialty_10 (test_02_system_management.Test02Specialty)銵> | ||
| 1679 | </pre> | 1739 | </pre> |
| 1680 | 1740 | ||
| 1681 | 1741 | ||
| 1682 | - <pre>AssertionError: '学科门类不存在' != 'success' | ||
| 1683 | -- 学科门类不存在 | 1742 | + <pre>AssertionError: '学期起止时间不能交叉' != 'success' |
| 1743 | +- 学期起止时间不能交叉 | ||
| 1684 | + success | 1744 | + success |
| 1685 | 1745 | ||
| 1686 | </pre> | 1746 | </pre> |
| @@ -1690,40 +1750,11 @@ test_add_specialty_10 (test_02_system_management.Test02Specialty)銵> | @@ -1690,40 +1750,11 @@ test_add_specialty_10 (test_02_system_management.Test02Specialty)銵> | ||
| 1690 | </tr> | 1750 | </tr> |
| 1691 | 1751 | ||
| 1692 | <tr> | 1752 | <tr> |
| 1693 | - <td>24</td> | ||
| 1694 | - <td class="Test03Year">Test03Year</td> | ||
| 1695 | - <td>test_add_year_1</td> | ||
| 1696 | - <td>新增学年学期成功</td> | ||
| 1697 | - <td>0.235s</td> | ||
| 1698 | - | ||
| 1699 | - <td class="text-success">成功</td> | ||
| 1700 | - | ||
| 1701 | - <td> | ||
| 1702 | - <button type="button" class="btn btn-success btn_info">查看详情</button> | ||
| 1703 | - </td> | ||
| 1704 | - </tr> | ||
| 1705 | - | ||
| 1706 | - <tr class="test_log"> | ||
| 1707 | - | ||
| 1708 | - <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> | ||
| 1709 | - | ||
| 1710 | - | ||
| 1711 | - <pre>用例入参:{'year': 'py学年23:11:09_1', 'remark': 'py_comment备注23:11:09_1', 'terms': [{'sort': 1, 'startTime': 1667376499000, 'endTime': 1704115459000}]} | ||
| 1712 | -预期结果: {'msg': 'success', 'code': 200, 'data': True} | ||
| 1713 | -实际结果: {'msg': 'success', 'code': 200, 'data': True} | ||
| 1714 | -test_add_year_1 (test_02_system_management.Test03Year)执行——>【通过】 | ||
| 1715 | -</pre> | ||
| 1716 | - | ||
| 1717 | - | ||
| 1718 | - </td> | ||
| 1719 | - </tr> | ||
| 1720 | - | ||
| 1721 | - <tr> | ||
| 1722 | - <td>25</td> | ||
| 1723 | - <td class="Test03Year">Test03Year</td> | ||
| 1724 | - <td>test_add_year_2</td> | ||
| 1725 | - <td>学年学期开始时间和结束时间不可交叉</td> | ||
| 1726 | - <td>0.233s</td> | 1753 | + <td>26</td> |
| 1754 | + <td class="Test01CTeacher">Test01CTeacher</td> | ||
| 1755 | + <td>test_add_class_info_1</td> | ||
| 1756 | + <td>新增教师</td> | ||
| 1757 | + <td>0.239s</td> | ||
| 1727 | 1758 | ||
| 1728 | <td class="text-warning">失败</td> | 1759 | <td class="text-warning">失败</td> |
| 1729 | 1760 | ||
| @@ -1737,10 +1768,10 @@ test_add_year_1 (test_02_system_management.Test03Year)銵> | @@ -1737,10 +1768,10 @@ test_add_year_1 (test_02_system_management.Test03Year)銵> | ||
| 1737 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> | 1768 | <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all"> |
| 1738 | 1769 | ||
| 1739 | 1770 | ||
| 1740 | - <pre>用例入参:{'year': 'py学年23:11:09_2', 'remark': 'py_comment备注23:11:09_2', 'terms': [{'sort': 1, 'startTime': 1667376499000, 'endTime': 1704115459000}, {'sort': 2, 'startTime': 1667376499000, 'endTime': 1704115459000}]} | ||
| 1741 | -预期结果: {'msg': '学期起止时间不能交叉', 'code': 500, 'data': None} | ||
| 1742 | -实际结果: {'msg': 'success', 'code': 200, 'data': True} | ||
| 1743 | -test_add_year_2 (test_02_system_management.Test03Year)执行——>【失败】 | 1771 | + <pre>用例入参:{'name': 'py自动化教师20221222_23:09:24_1', 'number': '17398240152', 'departmentIds': ['1605942164523970561'], 'phone': '17398240152', 'classInfoId': '', 'idType': 'identity_card', 'idNumber': '660101198601061863', 'gender': 0, 'entryTime': 1663084800000, 'email': '34662811782@163.com', 'professionalIds': [], 'roleIds': ['968160378070540291'], 'permissionScope': '1605942164523970561'} |
| 1772 | +预期结果: {'msg': 'success', 'code': 200, 'data': True} | ||
| 1773 | +实际结果: {'msg': '该身份证号不合法,请确认', 'code': 500, 'data': None} | ||
| 1774 | +test_add_class_info_1 (test_03_teaching_affairs.Test01CTeacher)执行——>【失败】 | ||
| 1744 | </pre> | 1775 | </pre> |
| 1745 | 1776 | ||
| 1746 | 1777 | ||
| @@ -1763,13 +1794,13 @@ test_add_year_2 (test_02_system_management.Test03Year)銵>仃韐乓 | @@ -1763,13 +1794,13 @@ test_add_year_2 (test_02_system_management.Test03Year)銵>仃韐乓 | ||
| 1763 | </pre> | 1794 | </pre> |
| 1764 | 1795 | ||
| 1765 | 1796 | ||
| 1766 | - <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 265, in test_add_year | 1797 | + <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_03_teaching_affairs.py", line 106, in test_add_class_info |
| 1767 | raise e | 1798 | raise e |
| 1768 | </pre> | 1799 | </pre> |
| 1769 | 1800 | ||
| 1770 | 1801 | ||
| 1771 | - <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_02_system_management.py", line 259, in test_add_year | ||
| 1772 | - self.assertEqual(expected["msg"], res["msg"]) | 1802 | + <pre> File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_03_teaching_affairs.py", line 99, in test_add_class_info |
| 1803 | + self.assertEqual(expected['msg'], res['msg']) | ||
| 1773 | </pre> | 1804 | </pre> |
| 1774 | 1805 | ||
| 1775 | 1806 | ||
| @@ -1788,9 +1819,9 @@ test_add_year_2 (test_02_system_management.Test03Year)銵>仃韐乓 | @@ -1788,9 +1819,9 @@ test_add_year_2 (test_02_system_management.Test03Year)銵>仃韐乓 | ||
| 1788 | </pre> | 1819 | </pre> |
| 1789 | 1820 | ||
| 1790 | 1821 | ||
| 1791 | - <pre>AssertionError: '学期起止时间不能交叉' != 'success' | ||
| 1792 | -- 学期起止时间不能交叉 | ||
| 1793 | -+ success | 1822 | + <pre>AssertionError: 'success' != '该身份证号不合法,请确认' |
| 1823 | +- success | ||
| 1824 | ++ 该身份证号不合法,请确认 | ||
| 1794 | 1825 | ||
| 1795 | </pre> | 1826 | </pre> |
| 1796 | 1827 | ||
| @@ -1923,7 +1954,7 @@ test_add_year_2 (test_02_system_management.Test03Year)銵>仃韐乓 | @@ -1923,7 +1954,7 @@ test_add_year_2 (test_02_system_management.Test03Year)銵>仃韐乓 | ||
| 1923 | show: false | 1954 | show: false |
| 1924 | }, | 1955 | }, |
| 1925 | data: [ | 1956 | data: [ |
| 1926 | - {value: 9, name: '通过'}, | 1957 | + {value: 10, name: '通过'}, |
| 1927 | {value: 16, name: '失败'}, | 1958 | {value: 16, name: '失败'}, |
| 1928 | {value: 0, name: '错误'}, | 1959 | {value: 0, name: '错误'}, |
| 1929 | {value: 0, name: '跳过'} | 1960 | {value: 0, name: '跳过'} |
| @@ -1945,8 +1976,8 @@ test_add_year_2 (test_02_system_management.Test03Year)銵>仃韐乓 | @@ -1945,8 +1976,8 @@ test_add_year_2 (test_02_system_management.Test03Year)銵>仃韐乓 | ||
| 1945 | { | 1976 | { |
| 1946 | name: '测试结果', | 1977 | name: '测试结果', |
| 1947 | type: 'gauge', | 1978 | type: 'gauge', |
| 1948 | - detail: {formatter: '36.00%'}, | ||
| 1949 | - data: [{value: '36.00', name: '用例通过率'}], | 1979 | + detail: {formatter: '38.46%'}, |
| 1980 | + data: [{value: '38.46', name: '用例通过率'}], | ||
| 1950 | axisLine: { | 1981 | axisLine: { |
| 1951 | lineStyle: { | 1982 | lineStyle: { |
| 1952 | color: [ | 1983 | color: [ |
| @@ -36,9 +36,9 @@ runner.run() | @@ -36,9 +36,9 @@ runner.run() | ||
| 36 | # QQ邮箱SMTP服务器地址为“smtp.qq.com” | 36 | # QQ邮箱SMTP服务器地址为“smtp.qq.com” |
| 37 | # 163邮箱smtp.163.com 465 | 37 | # 163邮箱smtp.163.com 465 |
| 38 | # 阿里云smtp.qiye.aliyun.com 465 | 38 | # 阿里云smtp.qiye.aliyun.com 465 |
| 39 | -runner.send_email(host="smtp.qiye.aliyun.com", | ||
| 40 | - port=465, | ||
| 41 | - user="shishut@workai.com.cn", | ||
| 42 | - password="mKh50p89DqvqJ7pd", | ||
| 43 | - to_addrs=["1171621168@qq.com", "shishut@workai.com.cn"] | ||
| 44 | - ) | 39 | +# runner.send_email(host="smtp.qiye.aliyun.com", |
| 40 | +# port=465, | ||
| 41 | +# user="shishut@workai.com.cn", | ||
| 42 | +# password="mKh50p89DqvqJ7pd", | ||
| 43 | +# to_addrs=["1171621168@qq.com", "shishut@workai.com.cn"] | ||
| 44 | +# ) |
| @@ -27,6 +27,7 @@ headers = { | @@ -27,6 +27,7 @@ headers = { | ||
| 27 | class TestLogin(unittest.TestCase): | 27 | class TestLogin(unittest.TestCase): |
| 28 | open_excel = Excel(os.path.join(DataExcel_Path, "test_01_login.xlsx"), "login") | 28 | open_excel = Excel(os.path.join(DataExcel_Path, "test_01_login.xlsx"), "login") |
| 29 | test_case = open_excel.read_excel() | 29 | test_case = open_excel.read_excel() |
| 30 | + | ||
| 30 | @myddt.data(*test_case) | 31 | @myddt.data(*test_case) |
| 31 | def test_login(self, case): | 32 | def test_login(self, case): |
| 32 | 33 | ||
| @@ -36,8 +37,8 @@ class TestLogin(unittest.TestCase): | @@ -36,8 +37,8 @@ class TestLogin(unittest.TestCase): | ||
| 36 | # 请求接口 | 37 | # 请求接口 |
| 37 | url = conf.get("url", "url_ip") + case['url'] | 38 | url = conf.get("url", "url_ip") + case['url'] |
| 38 | method = case['method'] | 39 | method = case['method'] |
| 39 | - # req = requests.request(method=method, url=url, json=data, headers=headers) | ||
| 40 | - req = requests.post(url=url, json=data, headers=headers) | 40 | + req = requests.request(method=method, url=url, json=data, headers=headers) |
| 41 | + # req = requests.post(url=url, json=data, headers=headers) | ||
| 41 | res = req.json() | 42 | res = req.json() |
| 42 | # 将数据在测试报告中进行展示 | 43 | # 将数据在测试报告中进行展示 |
| 43 | print("用例入参:{}".format(data)) | 44 | print("用例入参:{}".format(data)) |
| @@ -58,4 +59,3 @@ class TestLogin(unittest.TestCase): | @@ -58,4 +59,3 @@ class TestLogin(unittest.TestCase): | ||
| 58 | # 结果写入到excel中 | 59 | # 结果写入到excel中 |
| 59 | self.open_excel.write_excel(row=case['id'] + 1, column=7, value="通过") | 60 | self.open_excel.write_excel(row=case['id'] + 1, column=7, value="通过") |
| 60 | HandleLog.log.error("用例标题{},通过".format(case['title'])) | 61 | HandleLog.log.error("用例标题{},通过".format(case['title'])) |
| 61 | - |
| @@ -19,7 +19,7 @@ from common.handle_log import HandleLog | @@ -19,7 +19,7 @@ from common.handle_log import HandleLog | ||
| 19 | from common.handle_path import DataExcel_Path | 19 | from common.handle_path import DataExcel_Path |
| 20 | from common.handle_config import conf | 20 | from common.handle_config import conf |
| 21 | from tools.handle_token import LoginToken | 21 | from tools.handle_token import LoginToken |
| 22 | -from tools.fixture import SystemManagement | 22 | +from tools.fixture import SelectData |
| 23 | from jsonpath import jsonpath | 23 | from jsonpath import jsonpath |
| 24 | 24 | ||
| 25 | # 系统管理相关的用例目录 | 25 | # 系统管理相关的用例目录 |
| @@ -138,11 +138,12 @@ class Test01Department(unittest.TestCase): | @@ -138,11 +138,12 @@ class Test01Department(unittest.TestCase): | ||
| 138 | HandleLog.log.info("用例{},执行通过".format(select_case["title"])) | 138 | HandleLog.log.info("用例{},执行通过".format(select_case["title"])) |
| 139 | 139 | ||
| 140 | 140 | ||
| 141 | + | ||
| 141 | # ==================专业相关的用例================== | 142 | # ==================专业相关的用例================== |
| 142 | @myddt.ddt | 143 | @myddt.ddt |
| 143 | class Test02Specialty(unittest.TestCase): | 144 | class Test02Specialty(unittest.TestCase): |
| 144 | """专业相关的用例""" | 145 | """专业相关的用例""" |
| 145 | - open_speciality_excel = Excel(os.path.join(System_path, "test_03_specialty.xlsx"), "add_specialty") | 146 | + open_speciality_excel = Excel(os.path.join(System_path, "test_02_specialty.xlsx"), "add_specialty") |
| 146 | test_data = open_speciality_excel.read_excel() | 147 | test_data = open_speciality_excel.read_excel() |
| 147 | 148 | ||
| 148 | @classmethod | 149 | @classmethod |
| @@ -169,14 +170,17 @@ class Test02Specialty(unittest.TestCase): | @@ -169,14 +170,17 @@ class Test02Specialty(unittest.TestCase): | ||
| 169 | """新增专业""" | 170 | """新增专业""" |
| 170 | # 准备数据 | 171 | # 准备数据 |
| 171 | # --写入数据 | 172 | # --写入数据 |
| 173 | + # 查看获取院系Excel表格的url | ||
| 174 | + select_department_excel = Excel(os.path.join(System_path, "test_02_department.xlsx"), "select_department") | ||
| 175 | + select_url = select_department_excel.read_excel_location("C2") | ||
| 176 | + department_list = SelectData(str(select_url)) | ||
| 177 | + department_json = department_list.select_list() | ||
| 172 | # 获取院系id | 178 | # 获取院系id |
| 173 | - department_list = SystemManagement.department_list() | ||
| 174 | - department_id = jsonpath(department_list, "$..id")[0] | 179 | + department_id = jsonpath(department_json, "$..id")[0] |
| 175 | if "#specialty_name#" in case["data"]: | 180 | if "#specialty_name#" in case["data"]: |
| 176 | case["data"] = case["data"].replace("#specialty_name#", self.specialty_name + "_" + str(case["id"])) | 181 | case["data"] = case["data"].replace("#specialty_name#", self.specialty_name + "_" + str(case["id"])) |
| 177 | if "#specialty_code#" in case["data"]: | 182 | if "#specialty_code#" in case["data"]: |
| 178 | case["data"] = case["data"].replace("#specialty_code#", self.specialty_code + "_" + str(case["id"])) | 183 | case["data"] = case["data"].replace("#specialty_code#", self.specialty_code + "_" + str(case["id"])) |
| 179 | - | ||
| 180 | if "#departmentId#" in case["data"]: | 184 | if "#departmentId#" in case["data"]: |
| 181 | case["data"] = case["data"].replace("#departmentId#", department_id) | 185 | case["data"] = case["data"].replace("#departmentId#", department_id) |
| 182 | data = json.loads(case["data"]) | 186 | data = json.loads(case["data"]) |
| @@ -203,6 +207,9 @@ class Test02Specialty(unittest.TestCase): | @@ -203,6 +207,9 @@ class Test02Specialty(unittest.TestCase): | ||
| 203 | raise e | 207 | raise e |
| 204 | else: | 208 | else: |
| 205 | self.open_speciality_excel.write_excel(row=case["id"] + 1, column=7, value="通过") | 209 | self.open_speciality_excel.write_excel(row=case["id"] + 1, column=7, value="通过") |
| 210 | + # 将创建使用的数据写入到excel表格中 | ||
| 211 | + self.open_speciality_excel.write_excel(row=case["id"] + 1, column=9, | ||
| 212 | + value=case["data"]) | ||
| 206 | HandleLog.log.info("用例{},执行通过".format(case["title"])) | 213 | HandleLog.log.info("用例{},执行通过".format(case["title"])) |
| 207 | 214 | ||
| 208 | 215 | ||
| @@ -210,7 +217,7 @@ class Test02Specialty(unittest.TestCase): | @@ -210,7 +217,7 @@ class Test02Specialty(unittest.TestCase): | ||
| 210 | @myddt.ddt | 217 | @myddt.ddt |
| 211 | class Test03Year(unittest.TestCase): | 218 | class Test03Year(unittest.TestCase): |
| 212 | """校历(学年学期)相关的用例""" | 219 | """校历(学年学期)相关的用例""" |
| 213 | - open_year_excel = Excel(os.path.join(System_path, "test_04_term.xlsx"), "add_term") | 220 | + open_year_excel = Excel(os.path.join(System_path, "test_02_term.xlsx"), "add_term") |
| 214 | test_data = open_year_excel.read_excel() | 221 | test_data = open_year_excel.read_excel() |
| 215 | 222 | ||
| 216 | @classmethod | 223 | @classmethod |
| @@ -265,4 +272,7 @@ class Test03Year(unittest.TestCase): | @@ -265,4 +272,7 @@ class Test03Year(unittest.TestCase): | ||
| 265 | raise e | 272 | raise e |
| 266 | else: | 273 | else: |
| 267 | self.open_year_excel.write_excel(row=case["id"] + 1, column=7, value="通过") | 274 | self.open_year_excel.write_excel(row=case["id"] + 1, column=7, value="通过") |
| 275 | + # 将创建使用的数据写入到excel表格中 | ||
| 276 | + self.open_year_excel.write_excel(row=case["id"] + 1, column=9, | ||
| 277 | + value=case["data"]) | ||
| 268 | HandleLog.log.info("用例{},执行通过".format(case["title"])) | 278 | HandleLog.log.info("用例{},执行通过".format(case["title"])) |
| 1 | # -*- coding: utf-8 -*- | 1 | # -*- coding: utf-8 -*- |
| 2 | -"""====================================== | ||
| 3 | -@Software: PyCharm | ||
| 4 | -@Author : Shitou ✊ | ||
| 5 | -@Time : 2022/12/17 22:10 | ||
| 6 | -@FileName: test_03_teaching_affairs.py | ||
| 7 | -=====================================""" | 2 | +# """====================================== |
| 3 | +# @Software: PyCharm | ||
| 4 | +# @Author : Shitou ✊ | ||
| 5 | +# @Time : 2022/12/17 22:10 | ||
| 6 | +# @FileName: test_03_teaching_affairs.py | ||
| 7 | +# =====================================""" | ||
| 8 | """ | 8 | """ |
| 9 | 实习教务管理菜单 | 9 | 实习教务管理菜单 |
| 10 | -""" | ||
| 10 | +""" | ||
| 11 | +import json | ||
| 12 | +import time | ||
| 13 | +import unittest | ||
| 14 | +import os | ||
| 15 | +import requests | ||
| 16 | +from jsonpath import jsonpath | ||
| 17 | +from common.handle_log import HandleLog | ||
| 18 | +from common.handle_path import DataExcel_Path | ||
| 19 | +from common.myddt import ddt, data | ||
| 20 | +from common.handle_excel import Excel | ||
| 21 | +from common.handle_config import conf | ||
| 22 | +from tools.fixture import SelectData | ||
| 23 | +from tools.handle_token import LoginToken | ||
| 24 | +from tools.fixture import RandomPhone, RandomIdentification, RandomEmail | ||
| 25 | + | ||
| 26 | +TeachingAffairs_path = os.path.join(DataExcel_Path, "teaching_affairs") | ||
| 27 | + | ||
| 28 | + | ||
| 29 | +# ==================教师相关的用例================== | ||
| 30 | +@ddt | ||
| 31 | +class Test01CTeacher(unittest.TestCase): | ||
| 32 | + """教师相关""" | ||
| 33 | + # ---获取添加教师用例 | ||
| 34 | + add_teacher = Excel(os.path.join(TeachingAffairs_path, "test_03_teacher.xlsx"), "add_teacher") | ||
| 35 | + add_teacher_case = add_teacher.read_excel() | ||
| 36 | + # ---获取添加院系Excel表格 | ||
| 37 | + select_department_excel = Excel(os.path.join(os.path.join(DataExcel_Path, "system"), "test_02_department.xlsx"), | ||
| 38 | + "select_department") | ||
| 39 | + select_url = select_department_excel.read_excel_location("C2") | ||
| 40 | + department_list = SelectData(str(select_url)) | ||
| 41 | + department_json = department_list.select_list() | ||
| 42 | + # 获取院系id | ||
| 43 | + department_id = jsonpath(department_json, "$..id")[0] | ||
| 44 | + | ||
| 45 | + @classmethod | ||
| 46 | + def setUpClass(cls): | ||
| 47 | + """ | ||
| 48 | + 用例类执行前执行的函数 | ||
| 49 | + :return:token | ||
| 50 | + """ | ||
| 51 | + # 获取token | ||
| 52 | + cls.token = LoginToken.login_token() | ||
| 53 | + | ||
| 54 | + def setUp(self): | ||
| 55 | + """单条用例执行前执行的函数""" | ||
| 56 | + new_time = time.strftime("%Y%m%d_%H:%M:%S") | ||
| 57 | + # 随机教师名称 | ||
| 58 | + self.teacher_name = "py自动化教师" + new_time | ||
| 59 | + # # 随机院系代码 | ||
| 60 | + # self.department_code = "py_code" + new_time | ||
| 61 | + | ||
| 62 | + # ==================================================================== | ||
| 63 | + # 新增教师 | ||
| 64 | + # ==================================================================== | ||
| 65 | + @data(*add_teacher_case) | ||
| 66 | + def test_add_class_info(self, case): | ||
| 67 | + | ||
| 68 | + """新增教师用例""" | ||
| 69 | + url = conf.get("url", "url_ip") + case['url'] | ||
| 70 | + # 准备数据 | ||
| 71 | + # ------判断教师姓名 | ||
| 72 | + if "#name#" in case["data"]: | ||
| 73 | + case["data"] = case["data"].replace("#name#", str(self.teacher_name + "_" + str(case["id"]))) | ||
| 74 | + # ------判断教师姓名 | ||
| 75 | + if "#departmentId#" in case["data"]: | ||
| 76 | + case["data"] = case["data"].replace("#departmentId#", str(self.department_id)) | ||
| 77 | + # ------判断教师手机号 | ||
| 78 | + if "#phone#" in case["data"]: | ||
| 79 | + case["data"] = case["data"].replace("#phone#", RandomPhone.random_phone()) | ||
| 80 | + # ------判断教师身份证号 | ||
| 81 | + if "#idNumber#" in case["data"]: | ||
| 82 | + case["data"] = case["data"].replace("#idNumber#", RandomIdentification().ran_end()) | ||
| 83 | + # ------判断教师身份证号 | ||
| 84 | + if "#email#" in case["data"]: | ||
| 85 | + case["data"] = case["data"].replace("#email#", RandomEmail.rand_email()) | ||
| 86 | + data = json.loads(case["data"]) | ||
| 87 | + expected = json.loads(case["expected"]) | ||
| 88 | + herders = {} | ||
| 89 | + herders["Authorization"] = self.token | ||
| 90 | + # 调用接口 | ||
| 91 | + response = requests.request(url=url, method=case["method"], json=data, headers=herders) | ||
| 92 | + res = response.json() | ||
| 93 | + print("用例入参:{}".format(data)) | ||
| 94 | + print("预期结果:", expected) | ||
| 95 | + print("实际结果:", res) | ||
| 96 | + # 断言 | ||
| 97 | + # 断言 | ||
| 98 | + try: | ||
| 99 | + self.assertEqual(expected['msg'], res['msg']) | ||
| 100 | + self.assertEqual(expected['code'], res['code']) | ||
| 101 | + except AssertionError as e: | ||
| 102 | + # 写入Excel | ||
| 103 | + self.add_teacher.write_excel(row=case["id"] + 1, column=7, value="不通过") | ||
| 104 | + HandleLog.log.error("用例标题{},不通过".format(case['title'])) | ||
| 105 | + HandleLog.log.exception(e) | ||
| 106 | + raise e | ||
| 107 | + else: | ||
| 108 | + self.add_teacher.write_excel(row=case["id"] + 1, column=7, value="通过") | ||
| 109 | + # 将创建使用的数据写入到excel表格中 | ||
| 110 | + self.add_teacher.write_excel(row=case["id"] + 1, column=9, | ||
| 111 | + value=case["data"]) | ||
| 112 | + HandleLog.log.info("用例{},执行通过".format(case["title"])) | ||
| 113 | + | ||
| 114 | + | ||
| 115 | +''' | ||
| 116 | +# ==================班级相关的用例================== | ||
| 117 | +@ddt | ||
| 118 | +class Test02Class(unittest.TestCase): | ||
| 119 | + """班级相关""" | ||
| 120 | + add_class = Excel(os.path.join(TeachingAffairs_path, "test_03_class.xlsx"), "add_class") | ||
| 121 | + add_class_case = add_class.read_excel() | ||
| 122 | + | ||
| 123 | + # ==================================================================== | ||
| 124 | + # 新增班级 | ||
| 125 | + # ==================================================================== | ||
| 126 | + @data(*add_class_case) | ||
| 127 | + def test_add_class_info(self, case): | ||
| 128 | + """新增班级用例""" | ||
| 129 | +''' |
| @@ -6,38 +6,117 @@ | @@ -6,38 +6,117 @@ | ||
| 6 | # @FileName: fixture.py | 6 | # @FileName: fixture.py |
| 7 | # ====================================== | 7 | # ====================================== |
| 8 | """ | 8 | """ |
| 9 | -获取数据 | 9 | +获取查看数据 |
| 10 | """ | 10 | """ |
| 11 | +import random | ||
| 12 | +import string | ||
| 11 | 13 | ||
| 12 | import requests | 14 | import requests |
| 13 | from common.handle_config import conf | 15 | from common.handle_config import conf |
| 14 | from tools.handle_token import LoginToken | 16 | from tools.handle_token import LoginToken |
| 15 | -from jsonpath import jsonpath | ||
| 16 | - | ||
| 17 | - | ||
| 18 | -# ==================院系相关的数据================== | ||
| 19 | -class SystemManagement(object): | ||
| 20 | - """系统管理""" | ||
| 21 | - | ||
| 22 | - # ==================================================================== | ||
| 23 | - # 查看院系列表获取数据 | ||
| 24 | - # ==================================================================== | ||
| 25 | - @classmethod | ||
| 26 | - def department_list(cls): | ||
| 27 | - """ | ||
| 28 | - 查看院系列表 | ||
| 29 | - """ | ||
| 30 | - url = conf.get('url', 'url_ip') + "/basic/v1/department/list" | 17 | +from common.handle_excel import Excel |
| 18 | +import os | ||
| 19 | +import time | ||
| 20 | +import random | ||
| 21 | + | ||
| 22 | +""" | ||
| 23 | +获取json字符串 | ||
| 24 | +""" | ||
| 25 | + | ||
| 26 | + | ||
| 27 | +class SelectData(object): | ||
| 28 | + def __init__(self, url): | ||
| 29 | + self.url = url | ||
| 30 | + | ||
| 31 | + def select_list(self): | ||
| 32 | + self.url = conf.get('url', 'url_ip') + self.url | ||
| 31 | headers = {} | 33 | headers = {} |
| 32 | headers["Authorization"] = LoginToken.login_token() | 34 | headers["Authorization"] = LoginToken.login_token() |
| 33 | data = { | 35 | data = { |
| 34 | "pageNumber": "0", | 36 | "pageNumber": "0", |
| 35 | "pageSize": "3" | 37 | "pageSize": "3" |
| 36 | } | 38 | } |
| 37 | - response = requests.request(url=url, method="get", json=data, headers=headers) | 39 | + response = requests.request(url=self.url, method="get", json=data, headers=headers) |
| 38 | res = response.json() | 40 | res = response.json() |
| 39 | return res | 41 | return res |
| 40 | 42 | ||
| 41 | 43 | ||
| 44 | +""" | ||
| 45 | +随机生成手机号 | ||
| 46 | +""" | ||
| 47 | + | ||
| 48 | + | ||
| 49 | +class RandomPhone: | ||
| 50 | + | ||
| 51 | + # 随机生成手机号 | ||
| 52 | + @staticmethod | ||
| 53 | + def random_phone(): | ||
| 54 | + for k in range(1): | ||
| 55 | + prelist = ["155", "136", "173", "133"] | ||
| 56 | + return random.choice(prelist) + "".join(random.choice("0123456789") for i in range(8)) | ||
| 57 | + | ||
| 58 | + | ||
| 59 | +""" | ||
| 60 | +随机生成身份证号 | ||
| 61 | +""" | ||
| 62 | + | ||
| 63 | + | ||
| 64 | +class RandomIdentification(object): | ||
| 65 | + | ||
| 66 | + def ran(self): | ||
| 67 | + # 随机生成年月日 | ||
| 68 | + yea = random.randint(1933, int(time.strftime("%Y"))) # 生成年 | ||
| 69 | + # 生成月 | ||
| 70 | + mon = random.randint(1, 12) | ||
| 71 | + ran_mon = '0' + str(mon) if mon < 10 else mon | ||
| 72 | + # 生成日 | ||
| 73 | + day = random.randint(1, 27) | ||
| 74 | + ran_day = '0' + str(day) if day < 10 else day | ||
| 75 | + return str(yea) + str(ran_mon) + str(ran_day) | ||
| 76 | + | ||
| 77 | + def ran_value(self): | ||
| 78 | + # 生成年月日后的三位数 | ||
| 79 | + value = random.randint(10, 199) | ||
| 80 | + if value < 100: | ||
| 81 | + return "0" + str(value) | ||
| 82 | + else: | ||
| 83 | + return str(value) | ||
| 84 | + | ||
| 85 | + def ran_area(self): | ||
| 86 | + # 随机取生成前六位 | ||
| 87 | + province = ( | ||
| 88 | + '11', '12', '13', '14', '15', '21', '22', '23', '31', '32', '33', '34', '35', '36', '37', '41', '42', | ||
| 89 | + '43', '44', '45', '46', '50', '51', '52', '53', '54', '61', '62', '63', '64', '65', '66') | ||
| 90 | + return str(province[random.randint(0, len(province))] + '0101') | ||
| 91 | + | ||
| 92 | + def ran_end(self): | ||
| 93 | + # 组成前17位数字 | ||
| 94 | + ran = self.ran_area() + self.ran() + self.ran_value() | ||
| 95 | + # 前17位每位需要乘上的系数,用字典表示,比如第一位需要乘上7,最后一位需要乘上2 | ||
| 96 | + coe = {1: 7, 2: 9, 3: 10, 4: 5, 5: 8, 6: 4, 7: 2, 8: 1, 9: 6, 10: 3, 11: 7, 12: 9, 13: 10, 14: 5, 15: 8, 16: 4, | ||
| 97 | + 17: 2} | ||
| 98 | + summat = 0 | ||
| 99 | + # 循环计算前17位每位乘上系数之后的和 | ||
| 100 | + for i in range(17): | ||
| 101 | + summat = summat + int(ran[i:i + 1]) * coe[i + 1] | ||
| 102 | + # 前17位每位乘上系数之后的和除以11得到的余数对照表,比如余数是0,那第18位就是1 | ||
| 103 | + mat = {0: '1', 1: '0', 2: 'X', 3: '9', 4: '8', 5: '7', 6: '6', 7: '5', 8: '4', 9: '3', 10: '2'} | ||
| 104 | + return ran + mat[summat % 11] | ||
| 105 | + | ||
| 106 | + | ||
| 107 | +""" | ||
| 108 | +随机生成邮箱 | ||
| 109 | +""" | ||
| 110 | + | ||
| 111 | + | ||
| 112 | +class RandomEmail(object): | ||
| 113 | + @staticmethod | ||
| 114 | + def rand_email(): | ||
| 115 | + email_len = random.randint(1, 99999999999) | ||
| 116 | + # print(str(email_len) + "@163.com") | ||
| 117 | + return str(email_len) + "@163.com" | ||
| 118 | + | ||
| 42 | if __name__ == '__main__': | 119 | if __name__ == '__main__': |
| 43 | - SystemManagement.department_list() | 120 | + print(RandomIdentification().ran_end()) |
| 121 | + # Val(Ran().ran_end()) | ||
| 122 | + # RandomEmail.rand_email() |
请
注册
或
登录
后发表评论