<!DOCTYPE html>
<html lang="en">
<head>

    <meta charset="UTF-8">
    <title>优学乐业测试报告</title>

    <link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/4.5.0/css/bootstrap.min.css">
    <script src=" https://cdn.staticfile.org/jquery/2.0.0/jquery.min.js"></script>
    <script src="https://cdn.staticfile.org/echarts/5.1.2/echarts.min.js"></script>
    <!--    页面样式-->
    <style type="text/css">
        /*标题样式*/

        .main {
            background: rgba(7, 10, 88, 0.99);
        }

        .title {
            width: auto;
            height: 80px;
            text-align: center;
            font: bolder 30px/80px "Microsoft YaHei UI";
            color: #fff;
            background: rgba(3, 14, 70, 0.5);
            border-bottom: solid 1px rgb(3, 14, 70);
            margin-bottom: 10px;
        }

        .content-box {
            height: 700px;
            width: 100%;
            display: flex;
            margin-bottom: 10px;
        }

        .box1 {
            flex: 3;
        }

        .box2 {
            flex: 5;
            margin: 0 10px;
        }

        .box3 {
            flex: 4;
        }

        .panel {
            position: relative;
            border: 1px solid rgba(25, 186, 139, 0.17);
            background: rgba(3, 14, 70, 0.5);
            padding: 0 10px 50px;
            margin-bottom: 10px;
        }

        .panel h2, .test_info h2 {
            height: 40px;
            line-height: 40px;
            text-align: center;
            color: #007bff;
            font-size: 20px;
            font-weight: bold;
            margin: 0;
        }

        .panel .chart {
            height: 250px;
        }

        .panel .chart2 {
            height: 350px;
        }

        .panel .desc {
            height: 150px;
        }

        .panel .desc .info {
            font: normal 18px/25px "Microsoft YaHei UI";
            color: #fff;
            display: flex;
        }

        .panel .desc .info div {
            padding: 10px;
            border: solid 1px #6c757d;
        }

        .panel .desc .info div span {
            margin-left: 20px;
        }


        /* 执行信息样式   */
        .test_info {
            width: 100%;
            padding: 20px 100px;
            background: rgba(3, 14, 70, 0.5);

        }

        .table td, .table th {
            border: solid 1px #5765a4 !important;
            padding: 0 !important;
            line-height: 40px;
            text-align: center;
            height: 40px;
            color: #fff;
        }

        select {
            border: 0;
            padding: 0;
            margin: 0;
            height: 2em;
            width: 8em;
            margin-left: 2em;
        }

        option {
            text-align: center;
            height: 36px;
            font: none 18px/36px "Microsoft YaHei UI";
            color: #28a745 !important;
        }

        .test_log {
            background: rgba(163, 171, 189, 0.15);
            width: 100%;
            height: 50px;
            border-top: none;
            border-bottom: none;
            display: none;
            text-align: left;
        }

        .test_log td {
            text-align: left;
            height: 30px;
            margin: 0;
            padding-left: 3em;
            padding-right: 3em;
            font: none 18px/24px "Microsoft YaHei UI";
        }

        pre {
            margin: 0;
            white-space: pre-wrap;
            white-space: -moz-pre-wrap;
            white-space: -o-pre-wrap;
            word-wrap: break-word;
            color: #fff;
            line-height: 22px;
            font-size: 14px
        }

        .chart4 {
            overflow: auto;
            width: 100%;
            height: 600px;

        }

        .chart4::-webkit-scrollbar {
            width: 10px;

        }

        .chart4::-webkit-scrollbar-thumb {
            /*滚动条里面小方块*/
            border-radius: 5px;
            -webkit-box-shadow: inset 0 0 5px rgba(4, 0, 225, 0.62);
            background: #272789;
            height: 10px;

        }

        .chart4::-webkit-scrollbar-track {
            /*滚动条里面轨道*/
            -webkit-box-shadow: inset 0 0 5px rgba(0, 21, 255, 0.54);
            border-radius: 10px;
            background: rgba(214, 214, 214, 0.64);

        }

        /*详细内容描述的小标题*/
        .table_title {
            text-align: center;
            background: rgba(1, 2, 37, 0.72);
            font: bold 18px/30px 'Microsoft YaHei UI';
            color: #fff;
            border-radius: 10px
        }

    </style>

</head>
<body>
<div class="main">
    <div class="title">
        优学乐业测试报告
    </div>
    <div class="content-box">
        <div class="box1">
            <div class="panel">
                <h2>执行结果</h2>
                <div class="chart" id="char3"></div>
                <div class="panel-footer"></div>
            </div>
            <div class="panel ">
                <h2>成功占比</h2>
                <div class="chart" id="char1"></div>
                <div class="panel-footer"></div>
            </div>
        </div>
        <div class="box2">
            <div class="panel">
                <h2>运行信息</h2>
                <div class="desc">

                    <div class="info">
                        <div style="flex:5">
                            <button type="button" class="btn btn-primary btn-sm">开始时间</button>
                            <span>2023-01-05 11:15:17</span>
                        </div>
                        <div style="flex:5">
                            <button type="button" class="btn btn-primary btn-sm">用例总数</button>
                            <span>147</span>
                        </div>
                    </div>
                    <div class="info">
                        <div style="flex:5">
                            <button type="button" class="btn btn-primary btn-sm">运行时长</button>
                            <span>80.52 S</span>
                        </div>
                        <div style="flex:5">
                            <button type="button" class="btn btn-primary btn-sm ">测试人员</button>
                            <span>石头</span>
                        </div>
                    </div>
                    <div class="info">
                        <div style="flex:5">
                            <button type="button" class="btn btn-primary btn-sm">成功用例</button>
                            <span>141</span>
                        </div>
                        <div style="flex:5">
                            <button type="button" class="btn btn-primary btn-sm ">通过率</button>
                            <span>95.92%</span>
                        </div>
                    </div>
                </div>
            </div>
            <div class="panel">
                <h2>通过率趋势图</h2>
                <div class="chart2" id="char2"></div>
            </div>
        </div>
        <div class="box3">
            <div class="panel">
                <h2>历史构建结果</h2>
                <div class="chart4">
                    <table class="table" style="color: #d6d6d6;padding: 0">
                        <thead>
                        <tr>
                            <th scope="col">执行时间</th>
                            <th scope="col">用例总数</th>
                            <th scope="col">成功用例数</th>
                            <th scope="col">通过率</th>
                        </tr>
                        </thead>
                        <tbody>
                        
                        <tr>
                            <th scope="row">2023-01-05 11:15:17</th>
                            <td>147</td>
                            <td>141</td>
                            <td>95.92%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-05 10:49:16</th>
                            <td>147</td>
                            <td>142</td>
                            <td>96.60%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-05 10:13:52</th>
                            <td>147</td>
                            <td>143</td>
                            <td>97.28%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 18:22:05</th>
                            <td>25</td>
                            <td>19</td>
                            <td>76.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 18:20:14</th>
                            <td>25</td>
                            <td>19</td>
                            <td>76.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 18:18:52</th>
                            <td>25</td>
                            <td>19</td>
                            <td>76.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 18:17:02</th>
                            <td>25</td>
                            <td>19</td>
                            <td>76.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 18:14:28</th>
                            <td>1</td>
                            <td>0</td>
                            <td>0.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 18:08:17</th>
                            <td>22</td>
                            <td>0</td>
                            <td>0.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 18:07:44</th>
                            <td>22</td>
                            <td>0</td>
                            <td>0.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 18:07:06</th>
                            <td>22</td>
                            <td>0</td>
                            <td>0.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 18:05:48</th>
                            <td>22</td>
                            <td>0</td>
                            <td>0.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 18:05:29</th>
                            <td>22</td>
                            <td>0</td>
                            <td>0.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 18:04:48</th>
                            <td>22</td>
                            <td>0</td>
                            <td>0.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 18:04:32</th>
                            <td>22</td>
                            <td>0</td>
                            <td>0.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 18:03:58</th>
                            <td>1</td>
                            <td>0</td>
                            <td>0.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 18:01:04</th>
                            <td>25</td>
                            <td>18</td>
                            <td>72.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 18:00:04</th>
                            <td>25</td>
                            <td>18</td>
                            <td>72.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 17:58:17</th>
                            <td>25</td>
                            <td>18</td>
                            <td>72.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 17:55:48</th>
                            <td>25</td>
                            <td>18</td>
                            <td>72.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 17:54:04</th>
                            <td>25</td>
                            <td>18</td>
                            <td>72.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 17:48:20</th>
                            <td>25</td>
                            <td>17</td>
                            <td>68.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 17:01:15</th>
                            <td>25</td>
                            <td>17</td>
                            <td>68.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 16:55:38</th>
                            <td>147</td>
                            <td>135</td>
                            <td>91.84%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 16:39:21</th>
                            <td>147</td>
                            <td>134</td>
                            <td>91.16%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 16:38:21</th>
                            <td>31</td>
                            <td>31</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 16:08:59</th>
                            <td>147</td>
                            <td>133</td>
                            <td>90.48%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 16:05:00</th>
                            <td>147</td>
                            <td>133</td>
                            <td>90.48%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 16:03:38</th>
                            <td>25</td>
                            <td>12</td>
                            <td>48.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 15:58:49</th>
                            <td>29</td>
                            <td>10</td>
                            <td>34.48%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 15:56:34</th>
                            <td>29</td>
                            <td>4</td>
                            <td>13.79%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 14:51:24</th>
                            <td>124</td>
                            <td>121</td>
                            <td>97.58%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 14:37:25</th>
                            <td>122</td>
                            <td>121</td>
                            <td>99.18%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-04 14:33:09</th>
                            <td>123</td>
                            <td>120</td>
                            <td>97.56%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-03 16:44:14</th>
                            <td>1</td>
                            <td>1</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-03 14:51:07</th>
                            <td>31</td>
                            <td>29</td>
                            <td>93.55%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2023-01-03 09:58:12</th>
                            <td>121</td>
                            <td>120</td>
                            <td>99.17%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 19:12:30</th>
                            <td>121</td>
                            <td>118</td>
                            <td>97.52%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 19:03:57</th>
                            <td>30</td>
                            <td>29</td>
                            <td>96.67%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 18:59:07</th>
                            <td>121</td>
                            <td>119</td>
                            <td>98.35%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 18:57:05</th>
                            <td>121</td>
                            <td>117</td>
                            <td>96.69%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 18:49:32</th>
                            <td>121</td>
                            <td>118</td>
                            <td>97.52%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 18:39:42</th>
                            <td>32</td>
                            <td>21</td>
                            <td>65.62%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 18:37:38</th>
                            <td>121</td>
                            <td>118</td>
                            <td>97.52%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 18:34:27</th>
                            <td>121</td>
                            <td>119</td>
                            <td>98.35%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 17:39:14</th>
                            <td>30</td>
                            <td>27</td>
                            <td>90.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 17:35:31</th>
                            <td>30</td>
                            <td>24</td>
                            <td>80.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 17:21:00</th>
                            <td>30</td>
                            <td>9</td>
                            <td>30.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 17:11:04</th>
                            <td>121</td>
                            <td>99</td>
                            <td>81.82%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 16:25:42</th>
                            <td>30</td>
                            <td>9</td>
                            <td>30.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 16:23:19</th>
                            <td>30</td>
                            <td>9</td>
                            <td>30.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 16:21:24</th>
                            <td>30</td>
                            <td>9</td>
                            <td>30.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 15:59:28</th>
                            <td>121</td>
                            <td>97</td>
                            <td>80.17%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 15:53:15</th>
                            <td>30</td>
                            <td>4</td>
                            <td>13.33%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 15:31:30</th>
                            <td>30</td>
                            <td>14</td>
                            <td>46.67%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 15:23:43</th>
                            <td>30</td>
                            <td>13</td>
                            <td>43.33%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 15:19:55</th>
                            <td>30</td>
                            <td>13</td>
                            <td>43.33%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 15:10:08</th>
                            <td>30</td>
                            <td>9</td>
                            <td>30.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 15:04:47</th>
                            <td>30</td>
                            <td>9</td>
                            <td>30.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 14:05:52</th>
                            <td>2</td>
                            <td>1</td>
                            <td>50.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 14:03:29</th>
                            <td>2</td>
                            <td>0</td>
                            <td>0.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 13:53:54</th>
                            <td>2</td>
                            <td>1</td>
                            <td>50.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-30 13:53:38</th>
                            <td>2</td>
                            <td>1</td>
                            <td>50.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 18:06:22</th>
                            <td>91</td>
                            <td>90</td>
                            <td>98.90%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 17:56:51</th>
                            <td>84</td>
                            <td>83</td>
                            <td>98.81%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 17:54:56</th>
                            <td>84</td>
                            <td>83</td>
                            <td>98.81%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 17:52:42</th>
                            <td>84</td>
                            <td>83</td>
                            <td>98.81%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 17:51:39</th>
                            <td>10</td>
                            <td>9</td>
                            <td>90.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 17:43:04</th>
                            <td>84</td>
                            <td>82</td>
                            <td>97.62%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 17:06:12</th>
                            <td>84</td>
                            <td>82</td>
                            <td>97.62%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 15:32:18</th>
                            <td>84</td>
                            <td>81</td>
                            <td>96.43%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 14:35:17</th>
                            <td>84</td>
                            <td>83</td>
                            <td>98.81%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 14:20:20</th>
                            <td>84</td>
                            <td>83</td>
                            <td>98.81%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 14:19:08</th>
                            <td>10</td>
                            <td>9</td>
                            <td>90.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 14:15:09</th>
                            <td>10</td>
                            <td>9</td>
                            <td>90.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 14:13:24</th>
                            <td>10</td>
                            <td>9</td>
                            <td>90.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 14:11:56</th>
                            <td>10</td>
                            <td>8</td>
                            <td>80.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 14:11:02</th>
                            <td>1</td>
                            <td>0</td>
                            <td>0.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 14:06:30</th>
                            <td>10</td>
                            <td>9</td>
                            <td>90.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 14:03:56</th>
                            <td>1</td>
                            <td>0</td>
                            <td>0.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 13:58:16</th>
                            <td>5</td>
                            <td>5</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 13:53:28</th>
                            <td>10</td>
                            <td>9</td>
                            <td>90.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 13:51:43</th>
                            <td>10</td>
                            <td>8</td>
                            <td>80.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 13:49:44</th>
                            <td>1</td>
                            <td>0</td>
                            <td>0.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 13:48:47</th>
                            <td>1</td>
                            <td>0</td>
                            <td>0.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 13:47:58</th>
                            <td>0</td>
                            <td>0</td>
                            <td>0%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 11:36:25</th>
                            <td>77</td>
                            <td>77</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 11:06:47</th>
                            <td>77</td>
                            <td>77</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-29 10:31:09</th>
                            <td>77</td>
                            <td>77</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 22:05:34</th>
                            <td>15</td>
                            <td>15</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 22:02:52</th>
                            <td>23</td>
                            <td>23</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 22:00:20</th>
                            <td>11</td>
                            <td>11</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 21:58:24</th>
                            <td>19</td>
                            <td>19</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 17:38:44</th>
                            <td>77</td>
                            <td>77</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 17:37:41</th>
                            <td>77</td>
                            <td>76</td>
                            <td>98.70%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 17:10:55</th>
                            <td>77</td>
                            <td>77</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 16:46:12</th>
                            <td>77</td>
                            <td>75</td>
                            <td>97.40%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 16:41:45</th>
                            <td>77</td>
                            <td>77</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 16:39:59</th>
                            <td>77</td>
                            <td>77</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 16:33:19</th>
                            <td>77</td>
                            <td>77</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 16:25:35</th>
                            <td>77</td>
                            <td>77</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 16:14:59</th>
                            <td>77</td>
                            <td>74</td>
                            <td>96.10%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 16:13:35</th>
                            <td>77</td>
                            <td>74</td>
                            <td>96.10%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 16:12:34</th>
                            <td>77</td>
                            <td>74</td>
                            <td>96.10%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 15:50:11</th>
                            <td>77</td>
                            <td>77</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 15:47:07</th>
                            <td>77</td>
                            <td>73</td>
                            <td>94.81%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 15:46:12</th>
                            <td>77</td>
                            <td>75</td>
                            <td>97.40%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 15:44:25</th>
                            <td>77</td>
                            <td>75</td>
                            <td>97.40%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 15:42:55</th>
                            <td>77</td>
                            <td>75</td>
                            <td>97.40%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 15:40:57</th>
                            <td>77</td>
                            <td>75</td>
                            <td>97.40%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 15:39:15</th>
                            <td>77</td>
                            <td>75</td>
                            <td>97.40%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 15:35:37</th>
                            <td>77</td>
                            <td>75</td>
                            <td>97.40%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 15:33:51</th>
                            <td>77</td>
                            <td>75</td>
                            <td>97.40%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 15:28:12</th>
                            <td>77</td>
                            <td>75</td>
                            <td>97.40%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 15:24:48</th>
                            <td>77</td>
                            <td>75</td>
                            <td>97.40%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 15:23:06</th>
                            <td>77</td>
                            <td>76</td>
                            <td>98.70%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 15:21:34</th>
                            <td>77</td>
                            <td>77</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 15:18:51</th>
                            <td>77</td>
                            <td>77</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 15:13:17</th>
                            <td>77</td>
                            <td>76</td>
                            <td>98.70%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 11:40:16</th>
                            <td>77</td>
                            <td>77</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 11:05:20</th>
                            <td>77</td>
                            <td>75</td>
                            <td>97.40%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 11:01:43</th>
                            <td>77</td>
                            <td>71</td>
                            <td>92.21%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 11:00:34</th>
                            <td>5</td>
                            <td>0</td>
                            <td>0.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 10:23:02</th>
                            <td>77</td>
                            <td>68</td>
                            <td>88.31%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 10:21:49</th>
                            <td>5</td>
                            <td>4</td>
                            <td>80.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 09:53:52</th>
                            <td>77</td>
                            <td>67</td>
                            <td>87.01%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-28 09:43:06</th>
                            <td>77</td>
                            <td>63</td>
                            <td>81.82%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 18:32:59</th>
                            <td>77</td>
                            <td>35</td>
                            <td>45.45%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 18:30:32</th>
                            <td>77</td>
                            <td>35</td>
                            <td>45.45%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 18:24:36</th>
                            <td>77</td>
                            <td>34</td>
                            <td>44.16%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 15:38:19</th>
                            <td>77</td>
                            <td>53</td>
                            <td>68.83%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 15:17:59</th>
                            <td>77</td>
                            <td>54</td>
                            <td>70.13%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 15:15:12</th>
                            <td>77</td>
                            <td>53</td>
                            <td>68.83%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 15:10:37</th>
                            <td>77</td>
                            <td>51</td>
                            <td>66.23%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 15:07:27</th>
                            <td>77</td>
                            <td>50</td>
                            <td>64.94%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 14:52:13</th>
                            <td>77</td>
                            <td>51</td>
                            <td>66.23%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 14:51:21</th>
                            <td>45</td>
                            <td>21</td>
                            <td>46.67%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 14:49:43</th>
                            <td>13</td>
                            <td>2</td>
                            <td>15.38%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 14:48:31</th>
                            <td>13</td>
                            <td>1</td>
                            <td>7.69%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 14:48:00</th>
                            <td>13</td>
                            <td>1</td>
                            <td>7.69%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 14:45:55</th>
                            <td>45</td>
                            <td>20</td>
                            <td>44.44%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 14:43:50</th>
                            <td>14</td>
                            <td>5</td>
                            <td>35.71%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 14:41:31</th>
                            <td>14</td>
                            <td>5</td>
                            <td>35.71%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 14:40:10</th>
                            <td>14</td>
                            <td>5</td>
                            <td>35.71%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 14:38:36</th>
                            <td>14</td>
                            <td>4</td>
                            <td>28.57%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 14:38:18</th>
                            <td>14</td>
                            <td>4</td>
                            <td>28.57%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 14:37:20</th>
                            <td>45</td>
                            <td>16</td>
                            <td>35.56%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 14:27:15</th>
                            <td>77</td>
                            <td>48</td>
                            <td>62.34%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 14:17:07</th>
                            <td>77</td>
                            <td>48</td>
                            <td>62.34%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 13:14:25</th>
                            <td>20</td>
                            <td>15</td>
                            <td>75.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 13:13:59</th>
                            <td>20</td>
                            <td>15</td>
                            <td>75.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 11:38:30</th>
                            <td>15</td>
                            <td>10</td>
                            <td>66.67%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 11:36:43</th>
                            <td>15</td>
                            <td>10</td>
                            <td>66.67%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 11:35:03</th>
                            <td>15</td>
                            <td>9</td>
                            <td>60.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 11:30:59</th>
                            <td>15</td>
                            <td>8</td>
                            <td>53.33%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 11:29:52</th>
                            <td>15</td>
                            <td>7</td>
                            <td>46.67%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 11:24:50</th>
                            <td>15</td>
                            <td>1</td>
                            <td>6.67%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 11:04:21</th>
                            <td>1</td>
                            <td>1</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-27 10:13:10</th>
                            <td>33</td>
                            <td>33</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-24 20:30:36</th>
                            <td>33</td>
                            <td>33</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-24 20:29:36</th>
                            <td>33</td>
                            <td>32</td>
                            <td>96.97%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-24 20:26:29</th>
                            <td>5</td>
                            <td>5</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-24 17:36:32</th>
                            <td>3</td>
                            <td>3</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-24 17:34:33</th>
                            <td>3</td>
                            <td>3</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-23 19:09:46</th>
                            <td>31</td>
                            <td>30</td>
                            <td>96.77%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-23 19:09:09</th>
                            <td>31</td>
                            <td>31</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-23 19:05:51</th>
                            <td>31</td>
                            <td>30</td>
                            <td>96.77%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-23 16:43:23</th>
                            <td>32</td>
                            <td>32</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-23 16:26:19</th>
                            <td>32</td>
                            <td>32</td>
                            <td>100.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-23 16:25:20</th>
                            <td>32</td>
                            <td>31</td>
                            <td>96.88%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-23 16:21:09</th>
                            <td>32</td>
                            <td>29</td>
                            <td>90.62%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-23 16:20:37</th>
                            <td>32</td>
                            <td>29</td>
                            <td>90.62%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-23 15:36:47</th>
                            <td>32</td>
                            <td>28</td>
                            <td>87.50%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-23 15:31:35</th>
                            <td>32</td>
                            <td>28</td>
                            <td>87.50%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-23 15:10:26</th>
                            <td>32</td>
                            <td>27</td>
                            <td>84.38%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-23 15:07:58</th>
                            <td>32</td>
                            <td>27</td>
                            <td>84.38%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-23 15:06:22</th>
                            <td>32</td>
                            <td>27</td>
                            <td>84.38%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-23 15:04:12</th>
                            <td>9</td>
                            <td>4</td>
                            <td>44.44%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-23 15:03:33</th>
                            <td>16</td>
                            <td>7</td>
                            <td>43.75%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-23 15:01:19</th>
                            <td>32</td>
                            <td>26</td>
                            <td>81.25%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-23 15:00:04</th>
                            <td>32</td>
                            <td>25</td>
                            <td>78.12%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-23 14:54:12</th>
                            <td>32</td>
                            <td>21</td>
                            <td>65.62%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-23 13:56:17</th>
                            <td>32</td>
                            <td>19</td>
                            <td>59.38%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-23 11:53:02</th>
                            <td>31</td>
                            <td>14</td>
                            <td>45.16%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-23 11:50:26</th>
                            <td>31</td>
                            <td>14</td>
                            <td>45.16%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-23 11:24:23</th>
                            <td>31</td>
                            <td>14</td>
                            <td>45.16%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-23 11:10:29</th>
                            <td>26</td>
                            <td>15</td>
                            <td>57.69%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-23 11:04:53</th>
                            <td>26</td>
                            <td>11</td>
                            <td>42.31%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-22 23:09:09</th>
                            <td>26</td>
                            <td>10</td>
                            <td>38.46%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-22 23:08:12</th>
                            <td>16</td>
                            <td>6</td>
                            <td>37.50%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-22 23:03:40</th>
                            <td>26</td>
                            <td>7</td>
                            <td>26.92%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-22 15:59:15</th>
                            <td>15</td>
                            <td>4</td>
                            <td>26.67%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-22 15:54:09</th>
                            <td>15</td>
                            <td>4</td>
                            <td>26.67%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-22 00:54:19</th>
                            <td>25</td>
                            <td>8</td>
                            <td>32.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-22 00:47:52</th>
                            <td>8</td>
                            <td>0</td>
                            <td>0.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-22 00:32:39</th>
                            <td>25</td>
                            <td>9</td>
                            <td>36.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-22 00:26:21</th>
                            <td>25</td>
                            <td>5</td>
                            <td>20.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-22 00:05:50</th>
                            <td>25</td>
                            <td>9</td>
                            <td>36.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-21 23:10:55</th>
                            <td>25</td>
                            <td>9</td>
                            <td>36.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-21 23:02:18</th>
                            <td>25</td>
                            <td>9</td>
                            <td>36.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-21 22:57:36</th>
                            <td>25</td>
                            <td>9</td>
                            <td>36.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-21 22:55:57</th>
                            <td>25</td>
                            <td>9</td>
                            <td>36.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-21 22:52:34</th>
                            <td>25</td>
                            <td>8</td>
                            <td>32.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-21 22:40:23</th>
                            <td>25</td>
                            <td>8</td>
                            <td>32.00%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-20 21:35:13</th>
                            <td>24</td>
                            <td>9</td>
                            <td>37.50%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-20 21:34:11</th>
                            <td>24</td>
                            <td>9</td>
                            <td>37.50%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-20 12:06:06</th>
                            <td>24</td>
                            <td>9</td>
                            <td>37.50%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-19 20:35:55</th>
                            <td>24</td>
                            <td>9</td>
                            <td>37.50%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-19 19:32:22</th>
                            <td>24</td>
                            <td>9</td>
                            <td>37.50%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-19 18:19:47</th>
                            <td>24</td>
                            <td>9</td>
                            <td>37.50%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-19 18:17:28</th>
                            <td>24</td>
                            <td>9</td>
                            <td>37.50%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-19 17:58:06</th>
                            <td>24</td>
                            <td>9</td>
                            <td>37.50%</td>
                        </tr>
                        
                        <tr>
                            <th scope="row">2022-12-19 17:56:09</th>
                            <td>24</td>
                            <td>9</td>
                            <td>37.50%</td>
                        </tr>
                        
                        </tbody>
                    </table>

                </div>
            </div>

        </div>
    </div>

    <div class="test_info">
        <h2>本次运行详情</h2>
        <div class="table_data">

            <table class="table" style="color: #fff">
                <thead class="text-light" style="background: rgba(3, 14, 70, 0.5)">
                <tr>
                    <th scope="col" style="width: 5%;padding: 0">编号</th>
                    <th scope="col" style="width: 20%;padding: 0">
                        <span>测试类</span>
                        <select id="testClass">
                            <option>所有</option>
                            
                            <option>Test02Specialty</option>
                            
                            <option>Test02Class</option>
                            
                            <option>Test03Year</option>
                            
                            <option>Test04Student</option>
                            
                            <option>Test03Course</option>
                            
                            <option>Test01Department</option>
                            
                            <option>TestLogin</option>
                            
                            <option>Test01addInternshipPlan</option>
                            
                            <option>Test03InternshipProject</option>
                            
                            <option>Test01Teacher</option>
                            
                            <option>Test02publishInternshipPlan</option>
                            
                        </select>

                    </th>
                    <th scope="col" style="width: 15%;padding: 0">测试方法</th>
                    <th scope="col" style="width: 20%;padding: 0">用例描述</th>
                    <th scope="col" style="width: 15%;padding: 0">执行时间</th>
                    <th scope="col" style="width: 20%;padding: 0">

                        <span>执行结果</span>
                        <select id="testResult">
                            <option>所有</option>
                            <option class="text-success">成功</option>
                            <option class="text-danger">失败</option>
                            <option class="text-warning">错误</option>
                            <option class="text-info">跳过</option>
                        </select>

                    </th>
                    <th scope="col" style="width: 10%;padding: 0">详细信息</th>
                </tr>
                </thead>
                <tbody>
                
                <tr class="case_">
                    <td>1</td>
                    <td class="TestLogin">TestLogin</td>
                    <td>test_login_1</td>
                    <td>登陆成功</td>
                    <td>0.63s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'way': 'name', 'password': 'f85eea0e15e424aba8675f8848e2cb83', 'type': 'teacher', 'username': '17301249975', 'schoolId': '1519958566130257922'}
预期结果:{'msg': 'success', 'code': 200}
实际结果:{'msg': 'success', 'code': 200, 'data': {'access_token': 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0ZW5hbnRUeXBlIjoiIiwiYnJva2VySWQiOiIiLCJocm9Vc2VyVG9rZW4iOm51bGwsInVzZXJfbmFtZSI6IjE3MzAxMjQ5OTc1IiwiYXV0aFN0YXR1cyI6IiIsImF1dGhlbnRpY2F0aW9uSWRlbnRpdHkiOiJsb2dpbiIsInR5cGUiOiJ0ZWFjaGVyIiwidXNlcklkIjoiMTUxOTk1OTIwODUyOTg2Njc1MyIsImNsaWVudF9pZCI6IndvcmthaSIsInN0dWRlbnRJZCI6IiIsInRlYWNoZXJJZCI6IjE1MTk5NTkyMDkyNzY0NTI4NjUiLCJ0ZW5hbnROYW1lIjoiIiwicGhvbmUiOiIxNzMwMTI0OTk3NSIsInNjb3BlIjpbImFsbCJdLCJzY2hvb2xJZCI6IjE1MTk5NTg1NjYxMzAyNTc5MjIiLCJ0ZW5hbnRJZCI6IiIsIm5hbWUiOiLmoKHplb8iLCJzdHVkZW50U3RhdHVzIjoiIiwiZXhwIjoxNjcyOTI0NTE2LCJzY2hvb2xOYW1lIjoi5rWL6K-V5aSn5a2mX-iHquWKqOWMluS4k-eUqCIsImp0aSI6ImI0OTQxNWU0LTUxNDItNDE1My04NWVlLTg5NmEzMWRmYzI3MCIsInN0YXR1cyI6ImFjdGl2ZSJ9.W3CJIxZrAGIPYntyhH3UddZ40RpOQEYa6lqeV6IKmdQfP5-IHDoZy15cXhZqg6M5ZJ3J-4pLeQz55WVIGRZpymDMkFZc4MtbN6_kPXtcEU92mVpSRQgs_tvfqfJw2pMGV3vPGswIISIicuZKg4Ik9m-VlwhtsTEV4jlEQF81TtwfI-fDz8-0tchPufg3j_JoQrlW2FRmZEs6HlefckmaLGZ1S98OUKNnaOyXsyKwwCM_wFaY5ehgJpaohz6KvHGd77eSQ3a0vPs2eFbVuSf83BowtBVVaBCgODKLz44s9WLnGpWYVmM2CQ5tTimK25WLTbUETO6sDyxPOGQwR-vdvg', 'token_type': 'bearer', 'refresh_token': 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0ZW5hbnRUeXBlIjoiIiwiYnJva2VySWQiOiIiLCJocm9Vc2VyVG9rZW4iOm51bGwsInVzZXJfbmFtZSI6IjE3MzAxMjQ5OTc1IiwiYXV0aFN0YXR1cyI6IiIsImF1dGhlbnRpY2F0aW9uSWRlbnRpdHkiOiJsb2dpbiIsInR5cGUiOiJ0ZWFjaGVyIiwidXNlcklkIjoiMTUxOTk1OTIwODUyOTg2Njc1MyIsImNsaWVudF9pZCI6IndvcmthaSIsInN0dWRlbnRJZCI6IiIsInRlYWNoZXJJZCI6IjE1MTk5NTkyMDkyNzY0NTI4NjUiLCJ0ZW5hbnROYW1lIjoiIiwicGhvbmUiOiIxNzMwMTI0OTk3NSIsInNjb3BlIjpbImFsbCJdLCJzY2hvb2xJZCI6IjE1MTk5NTg1NjYxMzAyNTc5MjIiLCJhdGkiOiJiNDk0MTVlNC01MTQyLTQxNTMtODVlZS04OTZhMzFkZmMyNzAiLCJ0ZW5hbnRJZCI6IiIsIm5hbWUiOiLmoKHplb8iLCJzdHVkZW50U3RhdHVzIjoiIiwiZXhwIjoxNjcyOTYwNTE2LCJzY2hvb2xOYW1lIjoi5rWL6K-V5aSn5a2mX-iHquWKqOWMluS4k-eUqCIsImp0aSI6IjQxZDYzZTYwLWZjNzgtNDE0ZC1hZjlkLWJmNmJjNWNmMzNhMyIsInN0YXR1cyI6ImFjdGl2ZSJ9.RSi4v7Pn4MoYdNuEJrIm0E1CAjPzs635V34BL8YaK6bMyZUzIfnGAjs5Q2gBeOOD6P34Wy8wqg2rqZvzrYomgUNKyojSWXLvwFz611FON9XoP3UPfpSZWimGKe9ONjTIUbEWyTlPHOo--PVVC2zu3anr-REUygzFJLKoWwCMy4xgF5uKtX-GYiPGayPQ7St_2rqETnhzsRzsDiaHkj8rYpTlxA8ExQd3IWSKuUYSaUWRMnH3d0PtGwTn6xJp34F_tUo2lX1Ab469VX_WHuIQ-de0lT0AIADyuFawaJY7FcyIz40QFjBR5KQ6leD4jDNOqYDSD-yxtfYRmalnmfXdOg', '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': 'b49415e4-5142-4153-85ee-896a31dfc270'}}
test_login_1 (test_01_login.TestLogin)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>2</td>
                    <td class="TestLogin">TestLogin</td>
                    <td>test_login_2</td>
                    <td>手机号填写错误的</td>
                    <td>0.224s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'way': 'name', 'username': '17301149975', 'password': 'f85eea0e15e424aba8675f8848e2cb83', 'type': 'teacher'}
预期结果:{'code': 500, 'data': None, 'msg': '用户不存在'}
实际结果:{'code': 500, 'data': None, 'msg': '用户不存在'}
test_login_2 (test_01_login.TestLogin)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>3</td>
                    <td class="TestLogin">TestLogin</td>
                    <td>test_login_3</td>
                    <td>手机号不进行填写</td>
                    <td>0.229s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'way': 'name', 'username': '', 'password': 'f85eea0e15e424aba8675f8848e2cb83', 'type': 'teacher'}
预期结果:{'code': 500, 'data': None, 'msg': '用户名和密码不能为空'}
实际结果:{'code': 500, 'data': None, 'msg': '用户名和密码不能为空'}
test_login_3 (test_01_login.TestLogin)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>4</td>
                    <td class="TestLogin">TestLogin</td>
                    <td>test_login_4</td>
                    <td>密码填写错误</td>
                    <td>0.375s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'way': 'name', 'username': '17301249975', 'password': 'f85eea0e115e424aba8675f8848e2cb83', 'type': 'teacher'}
预期结果:{'code': 500, 'data': None, 'msg': '密码不正确'}
实际结果:{'code': 500, 'data': None, 'msg': '密码不正确'}
test_login_4 (test_01_login.TestLogin)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>5</td>
                    <td class="TestLogin">TestLogin</td>
                    <td>test_login_5</td>
                    <td>密码不进行填写</td>
                    <td>0.234s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'way': 'name', 'username': '17301249975', 'password': '', 'type': 'teacher'}
预期结果:{'code': 500, 'data': None, 'msg': '用户名和密码不能为空'}
实际结果:{'code': 500, 'data': None, 'msg': '用户名和密码不能为空'}
test_login_5 (test_01_login.TestLogin)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>6</td>
                    <td class="Test01Department">Test01Department</td>
                    <td>test_add_department_1</td>
                    <td>新增院系成功</td>
                    <td>0.34s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化院系20230105_11:15:19_1', 'code': 'py_code20230105_11:15:19_1'}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_department_1 (test_02_system_management.Test01Department)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>7</td>
                    <td class="Test01Department">Test01Department</td>
                    <td>test_add_department_2</td>
                    <td>院系名称未填写</td>
                    <td>0.289s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': '', 'code': 'py_code20230105_11:15:19_2'}
预期结果: {'msg': '院系名称不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '院系名称不能为空', 'code': 500, 'data': None}
test_add_department_2 (test_02_system_management.Test01Department)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>8</td>
                    <td class="Test01Department">Test01Department</td>
                    <td>test_add_department_3</td>
                    <td>院系名称重复</td>
                    <td>0.336s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': '院系1', 'code': 'py_code20230105_11:15:19_3'}
预期结果: {'msg': '院系名称已存在,请确认', 'code': 500, 'data': None}
实际结果: {'msg': '院系名称已存在,请确认', 'code': 500, 'data': None}
test_add_department_3 (test_02_system_management.Test01Department)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>9</td>
                    <td class="Test01Department">Test01Department</td>
                    <td>test_add_department_4</td>
                    <td>院系名称长度不可大于30位</td>
                    <td>0.379s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': '院系名称长度大于30的测试院系名称长度大于30的测试院系名称长度大于30的测试院系名称长度大于30的测试', 'code': 'py_code20230105_11:15:20_4'}
预期结果: {'msg': '院系名称长度不可大于30位', 'code': 500, 'data': None}
实际结果: {'msg': '院系名称长度不可大于30位', 'code': 500, 'data': None}
test_add_department_4 (test_02_system_management.Test01Department)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>10</td>
                    <td class="Test01Department">Test01Department</td>
                    <td>test_add_department_5</td>
                    <td>院系代码重复</td>
                    <td>0.298s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化院系20230105_11:15:20_5', 'code': '批量导入院系'}
预期结果: {'msg': '院系代码已存在,请确认', 'code': 500, 'data': None}
实际结果: {'msg': '院系代码已存在,请确认', 'code': 500, 'data': None}
test_add_department_5 (test_02_system_management.Test01Department)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>11</td>
                    <td class="Test01Department">Test01Department</td>
                    <td>test_add_department_6</td>
                    <td>院系代码不能为空</td>
                    <td>0.283s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化院系20230105_11:15:20_6', 'code': ''}
预期结果: {'msg': '院系代码不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '院系代码不能为空', 'code': 500, 'data': None}
test_add_department_6 (test_02_system_management.Test01Department)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>12</td>
                    <td class="Test01Department">Test01Department</td>
                    <td>test_add_department_7</td>
                    <td>院系代码长度不可大于30</td>
                    <td>0.303s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化院系20230105_11:15:21_7', 'code': '院系代码长度大于30的测试院系代码长度大于30的测试院系代码长度大于30的测试'}
预期结果: {'msg': '院系代码长度不可大于30', 'code': 500, 'data': None}
实际结果: {'msg': '院系代码长度不可大于30', 'code': 500, 'data': None}
test_add_department_7 (test_02_system_management.Test01Department)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>13</td>
                    <td class="Test01Department">Test01Department</td>
                    <td>test_add_department_8</td>
                    <td>新增院系成功</td>
                    <td>0.376s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化院系20230105_11:15:21_8', 'code': 'py_code20230105_11:15:21_8'}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_department_8 (test_02_system_management.Test01Department)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>14</td>
                    <td class="Test01Department">Test01Department</td>
                    <td>test_select_department_1</td>
                    <td>查看院系列表</td>
                    <td>0.352s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'pageNumber': '0', 'pageSize': '3'}
预期结果: {'msg': 'success', 'code': 200}
实际结果: {'msg': 'success', 'code': 200, 'data': {'records': [{'id': '1519960493236785154', 'schoolId': '1519958566130257922', 'name': '第一院系-1-修改1', 'code': '第一院系-1', 'createdBy': '1519959209276452865', 'createdTime': 1651221796000, 'updatedBy': '1519959209276452865', 'updatedTime': 1653018193000}, {'id': '1519960538489131009', 'schoolId': '1519958566130257922', 'name': '第二院系-22', 'code': '第二院系-22', 'createdBy': '1519959209276452865', 'createdTime': 1651221807000, 'updatedBy': '1519959209276452865', 'updatedTime': 1652281988000}, {'id': '1519960582474797058', 'schoolId': '1519958566130257922', 'name': '第三院系-3', 'code': '第三院系-3', 'createdBy': '1519959209276452865', 'createdTime': 1651221817000, 'updatedBy': None, 'updatedTime': None}, {'id': '1522126666221019137', 'schoolId': '1519958566130257922', 'name': '大_批量导入院系', 'code': '大_批量导入院系', 'createdBy': '1519959209276452865', 'createdTime': 1651738252000, 'updatedBy': None, 'updatedTime': None}, {'id': '1522150977187188738', 'schoolId': '1519958566130257922', 'name': '批量导入院系', 'code': '批量导入院系', 'createdBy': '1519959209276452865', 'createdTime': 1651744048000, 'updatedBy': None, 'updatedTime': None}, {'id': '1524276366210510849', 'schoolId': '1519958566130257922', 'name': '流程sss', 'code': '流程sss', 'createdBy': '1519959209276452865', 'createdTime': 1652250780000, 'updatedBy': None, 'updatedTime': None}, {'id': '1527478217726754818', 'schoolId': '1519958566130257922', 'name': '添加缓存后', 'code': '添加缓存后', 'createdBy': '1519959209276452865', 'createdTime': 1653014161000, 'updatedBy': None, 'updatedTime': None}, {'id': '1527479106566881282', 'schoolId': '1519958566130257922', 'name': 'ssss添加缓存后-院系-1-修改1', 'code': 'ssss添加缓存后-院系-1-修改1', 'createdBy': '1519959209276452865', 'createdTime': 1653014373000, 'updatedBy': '1519959209276452865', 'updatedTime': 1653015920000}, {'id': '1537365491176304642', 'schoolId': '1519958566130257922', 'name': '院系1', 'code': '院系1', 'createdBy': '1519959209276452865', 'createdTime': 1655371471000, 'updatedBy': None, 'updatedTime': None}, {'id': '1537365542577500162', 'schoolId': '1519958566130257922', 'name': '院系2', 'code': '院系2', 'createdBy': '1519959209276452865', 'createdTime': 1655371483000, 'updatedBy': None, 'updatedTime': None}, {'id': '1537365589180411906', 'schoolId': '1519958566130257922', 'name': '院系3', 'code': '院系3', 'createdBy': '1519959209276452865', 'createdTime': 1655371494000, 'updatedBy': None, 'updatedTime': None}, {'id': '1537365618314047490', 'schoolId': '1519958566130257922', 'name': '院系4', 'code': '院系4', 'createdBy': '1519959209276452865', 'createdTime': 1655371501000, 'updatedBy': None, 'updatedTime': None}, {'id': '1537365645191147521', 'schoolId': '1519958566130257922', 'name': '院系5', 'code': '院系5', 'createdBy': '1519959209276452865', 'createdTime': 1655371507000, 'updatedBy': None, 'updatedTime': None}, {'id': '1537365671829172225', 'schoolId': '1519958566130257922', 'name': '院系6', 'code': '院系6', 'createdBy': '1519959209276452865', 'createdTime': 1655371514000, 'updatedBy': None, 'updatedTime': None}, {'id': '1537365714241974274', 'schoolId': '1519958566130257922', 'name': '院系7', 'code': '院系7', 'createdBy': '1519959209276452865', 'createdTime': 1655371524000, 'updatedBy': None, 'updatedTime': None}], 'total': 534, 'size': 15, 'current': 1, 'orders': [], 'optimizeCountSql': True, 'searchCount': True, 'countId': '', 'maxLimit': None, 'pages': 36}}
test_select_department_1 (test_02_system_management.Test01Department)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>15</td>
                    <td class="Test02Specialty">Test02Specialty</td>
                    <td>test_add_specialty_01</td>
                    <td>新增专业成功</td>
                    <td>1.31s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py专业11:15:22_1', 'code': 'py_code11:15:22_1', 'departmentId': '1610837321962614786', 'category': 'science'}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_specialty_01 (test_02_system_management.Test02Specialty)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>16</td>
                    <td class="Test02Specialty">Test02Specialty</td>
                    <td>test_add_specialty_02</td>
                    <td>新增专业失败,院系未填写</td>
                    <td>1.21s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py专业11:15:23_2', 'code': 'py_code11:15:23_2', 'departmentId': '', 'category': 'science'}
预期结果: {'msg': '院系不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '院系不能为空', 'code': 500, 'data': None}
test_add_specialty_02 (test_02_system_management.Test02Specialty)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>17</td>
                    <td class="Test02Specialty">Test02Specialty</td>
                    <td>test_add_specialty_03</td>
                    <td>新增专业失败,院系不存在</td>
                    <td>1.17s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py专业11:15:25_3', 'code': 'py_code11:15:25_3', 'departmentId': '23232333333', 'category': 'science'}
预期结果: {'msg': '院系不存在', 'code': 500, 'data': None}
实际结果: {'msg': '院系不存在', 'code': 500, 'data': None}
test_add_specialty_03 (test_02_system_management.Test02Specialty)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>18</td>
                    <td class="Test02Specialty">Test02Specialty</td>
                    <td>test_add_specialty_04</td>
                    <td>新增专业失败,专业名称未填写</td>
                    <td>1.02s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': '', 'code': 'py_code11:15:26_4', 'departmentId': '1610837321962614786', 'category': 'science'}
预期结果: {'msg': '专业名称不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '专业名称不能为空', 'code': 500, 'data': None}
test_add_specialty_04 (test_02_system_management.Test02Specialty)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>19</td>
                    <td class="Test02Specialty">Test02Specialty</td>
                    <td>test_add_specialty_05</td>
                    <td>专业名称长度不能大于30</td>
                    <td>1.25s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': '专业大于301234567890专业大于301234567890', 'code': 'py_code11:15:27_5', 'departmentId': '1610837321962614786', 'category': 'science'}
预期结果: {'msg': '专业名称长度不能大于30', 'code': 500, 'data': None}
实际结果: {'msg': '专业名称长度不能大于30', 'code': 500, 'data': None}
test_add_specialty_05 (test_02_system_management.Test02Specialty)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>20</td>
                    <td class="Test02Specialty">Test02Specialty</td>
                    <td>test_add_specialty_06</td>
                    <td>新增专业失败,专业名称重复</td>
                    <td>1.1s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': '第二个专业-2-1', 'code': 'py_code11:15:28_6', 'departmentId': '1610837321962614786', 'category': 'science'}
预期结果: {'msg': '专业名称已存在,请确认', 'code': 500, 'data': None}
实际结果: {'msg': '专业名称已存在,请确认', 'code': 500, 'data': None}
test_add_specialty_06 (test_02_system_management.Test02Specialty)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>21</td>
                    <td class="Test02Specialty">Test02Specialty</td>
                    <td>test_add_specialty_07</td>
                    <td>新增专业失败,专业代码重复</td>
                    <td>1.35s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py专业11:15:29_7', 'code': '12', 'departmentId': '1610837321962614786', 'category': 'science'}
预期结果: {'msg': '专业代码已存在,请确认', 'code': 500, 'data': None}
实际结果: {'msg': '专业代码已存在,请确认', 'code': 500, 'data': None}
test_add_specialty_07 (test_02_system_management.Test02Specialty)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>22</td>
                    <td class="Test02Specialty">Test02Specialty</td>
                    <td>test_add_specialty_08</td>
                    <td>新增专业失败,专业代码未填写</td>
                    <td>1.24s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py专业11:15:31_8', 'code': '', 'departmentId': '1610837321962614786', 'category': 'science'}
预期结果: {'msg': '专业代码不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '专业代码不能为空', 'code': 500, 'data': None}
test_add_specialty_08 (test_02_system_management.Test02Specialty)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>23</td>
                    <td class="Test02Specialty">Test02Specialty</td>
                    <td>test_add_specialty_09</td>
                    <td>新增专业失败,专业代码长度不能大于30</td>
                    <td>1.11s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py专业11:15:32_9', 'code': '专业代码大于301234567890专业大于301234567890', 'departmentId': '1610837321962614786', 'category': 'science'}
预期结果: {'msg': '专业代码长度不能大于30', 'code': 500, 'data': None}
实际结果: {'msg': '专业代码长度不能大于30', 'code': 500, 'data': None}
test_add_specialty_09 (test_02_system_management.Test02Specialty)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>24</td>
                    <td class="Test02Specialty">Test02Specialty</td>
                    <td>test_add_specialty_10</td>
                    <td>新增专业失败,学科门类未填写</td>
                    <td>1.49s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py专业11:15:33_10', 'code': 'py_code11:15:33_10', 'departmentId': '1610837321962614786', 'category': ''}
预期结果: {'msg': '学科门类不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '学科门类不能为空', 'code': 500, 'data': None}
test_add_specialty_10 (test_02_system_management.Test02Specialty)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>25</td>
                    <td class="Test02Specialty">Test02Specialty</td>
                    <td>test_add_specialty_11</td>
                    <td>新增专业失败,学科门类填写错误</td>
                    <td>1.35s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py专业11:15:34_11', 'code': 'py_code11:15:34_11', 'departmentId': '1610837321962614786', 'category': 'scienwce'}
预期结果: {'msg': '学科门类不存在', 'code': 500, 'data': None}
实际结果: {'msg': '学科门类不存在', 'code': 500, 'data': None}
test_add_specialty_11 (test_02_system_management.Test02Specialty)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>26</td>
                    <td class="Test02Specialty">Test02Specialty</td>
                    <td>test_add_specialty_12</td>
                    <td>新增专业成功</td>
                    <td>1.22s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py专业11:15:36_12', 'code': 'py_code11:15:36_12', 'departmentId': '1610837321962614786', 'category': 'science'}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_specialty_12 (test_02_system_management.Test02Specialty)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>27</td>
                    <td class="Test03Year">Test03Year</td>
                    <td>test_add_year_1</td>
                    <td>新增学年学期成功</td>
                    <td>0.32s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'year': 'py学年11:15:37_1', 'remark': 'py_comment备注11:15:37_1', 'terms': [{'sort': 1, 'startTime': 1667376499000, 'endTime': 1704115459000}]}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_year_1 (test_02_system_management.Test03Year)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>28</td>
                    <td class="Test03Year">Test03Year</td>
                    <td>test_add_year_2</td>
                    <td>学年名称不可超过30字</td>
                    <td>0.266s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'year': '1234567890123456789012345678901', 'remark': 'py_comment备注11:15:38_2', 'terms': [{'sort': 1, 'startTime': 1667376499000, 'endTime': 1704115459000}]}
预期结果: {'msg': '学年长度不可大于30位', 'code': 500, 'data': None}
实际结果: {'msg': '学年长度不可大于30位', 'code': 500, 'data': None}
test_add_year_2 (test_02_system_management.Test03Year)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>29</td>
                    <td class="Test03Year">Test03Year</td>
                    <td>test_add_year_3</td>
                    <td>学年学期开始时间和结束时间不可交叉</td>
                    <td>0.285s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'year': 'py学年11:15:38_3', 'remark': 'py_comment备注11:15:38_3', 'terms': [{'sort': 1, 'startTime': 1667376499000, 'endTime': 1704115459000}, {'sort': 2, 'startTime': 1667376499000, 'endTime': 1704115459000}]}
预期结果: {'msg': '学期起止时间不能交叉', 'code': 500, 'data': None}
实际结果: {'msg': '学期起止时间不能交叉', 'code': 500, 'data': None}
test_add_year_3 (test_02_system_management.Test03Year)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>30</td>
                    <td class="Test03Year">Test03Year</td>
                    <td>test_add_year_4</td>
                    <td>学年未填写</td>
                    <td>0.291s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'year': '', 'remark': 'py_comment备注11:15:38_4', 'terms': [{'sort': 1, 'startTime': 1667376499000, 'endTime': 1704115459000}]}
预期结果: {'msg': '学年不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '学年不能为空', 'code': 500, 'data': None}
test_add_year_4 (test_02_system_management.Test03Year)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>31</td>
                    <td class="Test03Year">Test03Year</td>
                    <td>test_add_year_5</td>
                    <td>学期未填写</td>
                    <td>0.31s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'year': 'py学年11:15:39_5', 'remark': 'py_comment备注11:15:39_5', 'terms': [{'sort': '', 'startTime': 1667376499000, 'endTime': 1704115459000}]}
预期结果: {'msg': '学期排序不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '学期排序不能为空', 'code': 500, 'data': None}
test_add_year_5 (test_02_system_management.Test03Year)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>32</td>
                    <td class="Test03Year">Test03Year</td>
                    <td>test_add_year_6</td>
                    <td>学期开始时间未填写</td>
                    <td>0.287s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'year': 'py学年11:15:39_6', 'remark': 'py_comment备注11:15:39_6', 'terms': [{'sort': 1, 'startTime': '', 'endTime': 1704115459000}]}
预期结果: {'msg': '学期开始时间不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '学期开始时间不能为空', 'code': 500, 'data': None}
test_add_year_6 (test_02_system_management.Test03Year)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>33</td>
                    <td class="Test03Year">Test03Year</td>
                    <td>test_add_year_7</td>
                    <td>学期结束时间未填写</td>
                    <td>0.294s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'year': 'py学年11:15:39_7', 'remark': 'py_comment备注11:15:39_7', 'terms': [{'sort': 1, 'startTime': 1704115459000, 'endTime': ''}]}
预期结果: {'msg': '学期结束时间不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '学期结束时间不能为空', 'code': 500, 'data': None}
test_add_year_7 (test_02_system_management.Test03Year)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>34</td>
                    <td class="Test03Year">Test03Year</td>
                    <td>test_add_year_8</td>
                    <td>学期不可超过5个学期</td>
                    <td>0.278s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'year': 'py学年11:15:40_8', 'remark': 'py_comment备注11:15:40_8', 'terms': [{'sort': 1, 'startTime': 154632003000, 'endTime': 154882563000}, {'sort': 2, 'startTime': 154899843000, 'endTime': 155150403000}, {'sort': 3, 'startTime': 155141763000, 'endTime': 155392323000}, {'sort': 4, 'startTime': 155668803000, 'endTime': 155936643000}, {'sort': 5, 'startTime': 156195843000, 'endTime': 156463683000}]}
预期结果: {'msg': '学期应填写1-4个', 'code': 500, 'data': None}
实际结果: {'msg': '学期应填写1-4个', 'code': 500, 'data': None}
test_add_year_8 (test_02_system_management.Test03Year)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>35</td>
                    <td class="Test03Year">Test03Year</td>
                    <td>test_add_year_9</td>
                    <td>新增学年学期成功</td>
                    <td>0.28s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'year': 'py学年11:15:40_9', 'remark': 'py_comment备注11:15:40_9', 'terms': [{'sort': 1, 'startTime': 1667376499000, 'endTime': 1704115459000}]}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_year_9 (test_02_system_management.Test03Year)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>36</td>
                    <td class="Test01Teacher">Test01Teacher</td>
                    <td>test_add_teacher_info_01</td>
                    <td>新增教师</td>
                    <td>0.553s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化教师20230105_11:15:41_1', 'number': '13310349902', 'departmentIds': ['1610837321962614786'], 'phone': '13310349902', 'classInfoId': '', 'idType': 'identity_card', 'idNumber': '500101198409070335', 'gender': 0, 'entryTime': 1663084800000, 'email': '32728087753@163.com', 'professionalIds': [], 'roleIds': ['968160378070540291'], 'permissionScope': '1610837321962614786'}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_teacher_info_01 (test_03_teaching_affairs.Test01Teacher)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>37</td>
                    <td class="Test01Teacher">Test01Teacher</td>
                    <td>test_add_teacher_info_02</td>
                    <td>教师姓名不能为空</td>
                    <td>0.277s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': '', 'number': '15533995865', 'departmentIds': ['1610837321962614786'], 'phone': '15533995865', 'classInfoId': '', 'idType': 'identity_card', 'idNumber': '360101196507220610', 'gender': 0, 'entryTime': 1663084800000, 'email': '93668170856@163.com', 'professionalIds': [], 'roleIds': ['968160378070540291'], 'permissionScope': '1610837321962614786'}
预期结果: {'msg': '教师姓名不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '教师姓名不能为空', 'code': 500, 'data': None}
test_add_teacher_info_02 (test_03_teaching_affairs.Test01Teacher)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>38</td>
                    <td class="Test01Teacher">Test01Teacher</td>
                    <td>test_add_teacher_info_03</td>
                    <td>教师手机号不能为空</td>
                    <td>0.252s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化教师20230105_11:15:42_3', 'number': '17306873803', 'departmentIds': ['1610837321962614786'], 'phone': '', 'classInfoId': '', 'idType': 'identity_card', 'idNumber': '650101201104020289', 'gender': 0, 'entryTime': 1663084800000, 'email': '43517147390@163.com', 'professionalIds': [], 'roleIds': ['968160378070540291'], 'permissionScope': '1610837321962614786'}
预期结果: {'msg': '教师手机号不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '教师手机号不能为空', 'code': 500, 'data': None}
test_add_teacher_info_03 (test_03_teaching_affairs.Test01Teacher)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>39</td>
                    <td class="Test01Teacher">Test01Teacher</td>
                    <td>test_add_teacher_info_04</td>
                    <td>教师证件类型不能为空</td>
                    <td>0.264s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化教师20230105_11:15:42_4', 'number': '13606512072', 'departmentIds': ['1610837321962614786'], 'phone': '13606512072', 'classInfoId': '', 'idType': '', 'idNumber': '440101199910031784', 'gender': 0, 'entryTime': 1663084800000, 'email': '97139704716@163.com', 'professionalIds': [], 'roleIds': ['968160378070540291'], 'permissionScope': '1610837321962614786'}
预期结果: {'msg': '教师证件类别不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '教师证件类别不能为空', 'code': 500, 'data': None}
test_add_teacher_info_04 (test_03_teaching_affairs.Test01Teacher)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>40</td>
                    <td class="Test01Teacher">Test01Teacher</td>
                    <td>test_add_teacher_info_05</td>
                    <td>教师证件号码不能为空</td>
                    <td>0.269s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化教师20230105_11:15:43_5', 'number': '13300546464', 'departmentIds': ['1610837321962614786'], 'phone': '13300546464', 'classInfoId': '', 'idType': 'identity_card', 'idNumber': '', 'gender': 0, 'entryTime': 1663084800000, 'email': '12614040594@163.com', 'professionalIds': [], 'roleIds': ['968160378070540291'], 'permissionScope': '1610837321962614786'}
预期结果: {'msg': '教师证件号码不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '教师证件号码不能为空', 'code': 500, 'data': None}
test_add_teacher_info_05 (test_03_teaching_affairs.Test01Teacher)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>41</td>
                    <td class="Test01Teacher">Test01Teacher</td>
                    <td>test_add_teacher_info_06</td>
                    <td>教师角色不能为空</td>
                    <td>0.32s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化教师20230105_11:15:43_6', 'number': '13338548700', 'departmentIds': ['1610837321962614786'], 'phone': '13338548700', 'classInfoId': '', 'idType': 'identity_card', 'idNumber': '320101199911161145', 'gender': 0, 'entryTime': 1663084800000, 'email': '94979952647@163.com', 'professionalIds': [], 'roleIds': [''], 'permissionScope': '1610837321962614786'}
预期结果: {'msg': '教师角色不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '教师角色不能为空', 'code': 500, 'data': None}
test_add_teacher_info_06 (test_03_teaching_affairs.Test01Teacher)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>42</td>
                    <td class="Test01Teacher">Test01Teacher</td>
                    <td>test_add_teacher_info_07</td>
                    <td>教师性别为空,添加成功</td>
                    <td>0.463s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化教师20230105_11:15:43_7', 'number': '13348428847', 'departmentIds': ['1610837321962614786'], 'phone': '13348428847', 'classInfoId': '', 'idType': 'identity_card', 'idNumber': '140101200302151269', 'gender': '', 'entryTime': 1663084800000, 'email': '75258928968@163.com', 'professionalIds': [], 'roleIds': ['968160378070540291'], 'permissionScope': '1610837321962614786'}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_teacher_info_07 (test_03_teaching_affairs.Test01Teacher)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>43</td>
                    <td class="Test01Teacher">Test01Teacher</td>
                    <td>test_add_teacher_info_08</td>
                    <td>教师入职时间为空,添加成功</td>
                    <td>0.516s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化教师20230105_11:15:44_8', 'number': '15538439853', 'departmentIds': ['1610837321962614786'], 'phone': '15538439853', 'classInfoId': '', 'idType': 'identity_card', 'idNumber': '510101201912110783', 'gender': 0, 'entryTime': '', 'email': '24817606383@163.com', 'professionalIds': [], 'roleIds': ['968160378070540291'], 'permissionScope': '1610837321962614786'}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_teacher_info_08 (test_03_teaching_affairs.Test01Teacher)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>44</td>
                    <td class="Test01Teacher">Test01Teacher</td>
                    <td>test_add_teacher_info_09</td>
                    <td>教师邮箱为空,添加成功</td>
                    <td>0.00573s</td>
                    
                    <td class="text-danger">错误</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>Traceback (most recent call last):
</pre>
                        

                            <pre>  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py", line 59, in testPartExecutor
    yield
</pre>
                        

                            <pre>  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py", line 615, in run
    testMethod()
</pre>
                        

                            <pre>  File "/Users/shitou/工作/code/work/workAi/yxly/common/myddt.py", line 145, in wrapper
    return func(self, *args, **kwargs)
</pre>
                        

                            <pre>  File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_03_teaching_affairs.py", line 79, in test_add_teacher_info
    case["data"] = case["data"].replace("#idNumber#", RandomIdentification().ran_end())
</pre>
                        

                            <pre>  File "/Users/shitou/工作/code/work/workAi/yxly/tools/fixture.py", line 96, in ran_end
    ran = self.ran_area() + self.ran() + self.ran_value()
</pre>
                        

                            <pre>  File "/Users/shitou/工作/code/work/workAi/yxly/tools/fixture.py", line 92, in ran_area
    return str(province[random.randint(0, len(province))] + '0101')
</pre>
                        

                            <pre>IndexError: tuple index out of range
</pre>
                        

                            <pre>test_add_teacher_info_09 (test_03_teaching_affairs.Test01Teacher)执行——>【错误Error】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>45</td>
                    <td class="Test01Teacher">Test01Teacher</td>
                    <td>test_add_teacher_info_10</td>
                    <td>教师工号为空,添加成功</td>
                    <td>0.498s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化教师20230105_11:15:44_10', 'number': '', 'departmentIds': ['1610837321962614786'], 'phone': '15511668123', 'classInfoId': '', 'idType': 'identity_card', 'idNumber': '61010119991027186X', 'gender': 0, 'entryTime': 1663084800000, 'email': '5431433025@163.com', 'professionalIds': [], 'roleIds': ['968160378070540291'], 'permissionScope': '1610837321962614786'}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_teacher_info_10 (test_03_teaching_affairs.Test01Teacher)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>46</td>
                    <td class="Test01Teacher">Test01Teacher</td>
                    <td>test_add_teacher_info_11</td>
                    <td>新增教师</td>
                    <td>0.429s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化教师20230105_11:15:45_11', 'number': '13648500869', 'departmentIds': ['1610837321962614786'], 'phone': '13648500869', 'classInfoId': '', 'idType': 'identity_card', 'idNumber': '530101193311021925', 'gender': 0, 'entryTime': 1663084800000, 'email': '13494979808@163.com', 'professionalIds': [], 'roleIds': ['968160378070540291'], 'permissionScope': '1610837321962614786'}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_teacher_info_11 (test_03_teaching_affairs.Test01Teacher)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>47</td>
                    <td class="Test02Class">Test02Class</td>
                    <td>test_add_class_info_01</td>
                    <td>新增班级</td>
                    <td>0.323s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化班级20230105_11:15:48_1', 'educationalSystem': '3', 'startSchoolYear': 2022, 'professionalId': '1610837387477643266', 'teacherId': '1610837421766078465', 'departmentId': '1610837321962614786'}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_class_info_01 (test_03_teaching_affairs.Test02Class)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>48</td>
                    <td class="Test02Class">Test02Class</td>
                    <td>test_add_class_info_02</td>
                    <td>班级名称未填写</td>
                    <td>0.288s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': '', 'educationalSystem': '3', 'startSchoolYear': 2022, 'professionalId': '1610837387477643266', 'teacherId': '1610837421766078465', 'departmentId': '1610837321962614786'}
预期结果: {'msg': '班级名称不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '班级名称不能为空', 'code': 500, 'data': None}
test_add_class_info_02 (test_03_teaching_affairs.Test02Class)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>49</td>
                    <td class="Test02Class">Test02Class</td>
                    <td>test_add_class_info_03</td>
                    <td>班级名称已存在</td>
                    <td>0.299s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': '权限测试第一个班级-1-修改1', 'educationalSystem': '3', 'startSchoolYear': 2022, 'professionalId': '1607634271332593665', 'teacherId': '1607634326517051394', 'departmentId': '1607634257592053761'}
预期结果: {'msg': '该班级已存在,请确认', 'code': 500, 'data': None}
实际结果: {'msg': '该班级已存在,请确认', 'code': 500, 'data': None}
test_add_class_info_03 (test_03_teaching_affairs.Test02Class)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>50</td>
                    <td class="Test02Class">Test02Class</td>
                    <td>test_add_class_info_04</td>
                    <td>学制未填写</td>
                    <td>0.309s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化班级20230105_11:15:49_4', 'educationalSystem': '', 'startSchoolYear': 2022, 'professionalId': '1610837387477643266', 'teacherId': '1610837421766078465', 'departmentId': '1610837321962614786'}
预期结果: {'msg': '学制不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '学制不能为空', 'code': 500, 'data': None}
test_add_class_info_04 (test_03_teaching_affairs.Test02Class)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>51</td>
                    <td class="Test02Class">Test02Class</td>
                    <td>test_add_class_info_05</td>
                    <td>学制填写错误,最多为10年</td>
                    <td>0.272s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化班级20230105_11:15:49_5', 'educationalSystem': '11', 'startSchoolYear': 2022, 'professionalId': '1610837387477643266', 'teacherId': '1610837421766078465', 'departmentId': '1610837321962614786'}
预期结果: {'msg': '学制最多为10年', 'code': 500, 'data': None}
实际结果: {'msg': '学制最多为10年', 'code': 500, 'data': None}
test_add_class_info_05 (test_03_teaching_affairs.Test02Class)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>52</td>
                    <td class="Test02Class">Test02Class</td>
                    <td>test_add_class_info_06</td>
                    <td>学制填写错误,最多为10年</td>
                    <td>0.328s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化班级20230105_11:15:49_6', 'educationalSystem': '100', 'startSchoolYear': 2022, 'professionalId': '1610837387477643266', 'teacherId': '1610837421766078465', 'departmentId': '1610837321962614786'}
预期结果: {'msg': '学制最多为10年', 'code': 500, 'data': None}
实际结果: {'msg': '学制最多为10年', 'code': 500, 'data': None}
test_add_class_info_06 (test_03_teaching_affairs.Test02Class)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>53</td>
                    <td class="Test02Class">Test02Class</td>
                    <td>test_add_class_info_07</td>
                    <td>入学年份未填写</td>
                    <td>0.27s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化班级20230105_11:15:50_7', 'educationalSystem': '3', 'startSchoolYear': '', 'professionalId': '1610837387477643266', 'teacherId': '1610837421766078465', 'departmentId': '1610837321962614786'}
预期结果: {'msg': '入学年份不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '入学年份不能为空', 'code': 500, 'data': None}
test_add_class_info_07 (test_03_teaching_affairs.Test02Class)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>54</td>
                    <td class="Test02Class">Test02Class</td>
                    <td>test_add_class_info_08</td>
                    <td>专业未填写</td>
                    <td>0.273s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化班级20230105_11:15:50_8', 'educationalSystem': '3', 'startSchoolYear': 2022, 'professionalId': '', 'teacherId': '1610837421766078465', 'departmentId': '1610837321962614786'}
预期结果: {'msg': '所属专业不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '所属专业不能为空', 'code': 500, 'data': None}
test_add_class_info_08 (test_03_teaching_affairs.Test02Class)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>55</td>
                    <td class="Test02Class">Test02Class</td>
                    <td>test_add_class_info_09</td>
                    <td>专业填写错误</td>
                    <td>0.311s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化班级20230105_11:15:50_9', 'educationalSystem': '3', 'startSchoolYear': 2022, 'professionalId': '1607127381431545857', 'teacherId': '1610837421766078465', 'departmentId': '1610837321962614786'}
预期结果: {'msg': '专业不存在', 'code': 500, 'data': None}
实际结果: {'msg': '专业不存在', 'code': 500, 'data': None}
test_add_class_info_09 (test_03_teaching_affairs.Test02Class)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>56</td>
                    <td class="Test02Class">Test02Class</td>
                    <td>test_add_class_info_10</td>
                    <td>院系不能为空</td>
                    <td>0.286s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化班级20230105_11:15:51_10', 'educationalSystem': '3', 'startSchoolYear': 2022, 'professionalId': '1610837387477643266', 'teacherId': '1610837421766078465', 'departmentId': ''}
预期结果: {'msg': '所属院系不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '所属院系不能为空', 'code': 500, 'data': None}
test_add_class_info_10 (test_03_teaching_affairs.Test02Class)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>57</td>
                    <td class="Test02Class">Test02Class</td>
                    <td>test_add_class_info_11</td>
                    <td>院系填写错误</td>
                    <td>0.285s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化班级20230105_11:15:51_11', 'educationalSystem': '3', 'startSchoolYear': 2022, 'professionalId': '1610837387477643266', 'teacherId': '1610837421766078465', 'departmentId': '1607560129617769474'}
预期结果: {'msg': '院系不存在', 'code': 500, 'data': None}
实际结果: {'msg': '院系不存在', 'code': 500, 'data': None}
test_add_class_info_11 (test_03_teaching_affairs.Test02Class)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>58</td>
                    <td class="Test02Class">Test02Class</td>
                    <td>test_add_class_info_12</td>
                    <td>院系下没有该专业</td>
                    <td>0.294s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化班级20230105_11:15:51_12', 'educationalSystem': '3', 'startSchoolYear': 2022, 'professionalId': '1522136888155148289', 'teacherId': '1610837421766078465', 'departmentId': '1519960538489131009'}
预期结果: {'msg': '专业不存在', 'code': 500, 'data': None}
实际结果: {'msg': '专业不存在', 'code': 500, 'data': None}
test_add_class_info_12 (test_03_teaching_affairs.Test02Class)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>59</td>
                    <td class="Test02Class">Test02Class</td>
                    <td>test_add_class_info_13</td>
                    <td>教师未填写,添加成功</td>
                    <td>0.288s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化班级20230105_11:15:51_13', 'educationalSystem': '3', 'startSchoolYear': 2022, 'professionalId': '1610837387477643266', 'teacherId': '', 'departmentId': '1610837321962614786'}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_class_info_13 (test_03_teaching_affairs.Test02Class)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>60</td>
                    <td class="Test02Class">Test02Class</td>
                    <td>test_add_class_info_14</td>
                    <td>教师填写错误</td>
                    <td>0.347s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化班级20230105_11:15:52_14', 'educationalSystem': '3', 'startSchoolYear': 2022, 'professionalId': '1610837387477643266', 'teacherId': '1607612806826909697', 'departmentId': '1610837321962614786'}
预期结果: {'msg': '教师不存在', 'code': 500, 'data': None}
实际结果: {'msg': '教师不存在', 'code': 500, 'data': None}
test_add_class_info_14 (test_03_teaching_affairs.Test02Class)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>61</td>
                    <td class="Test02Class">Test02Class</td>
                    <td>test_add_class_info_15</td>
                    <td>新增班级</td>
                    <td>0.308s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化班级20230105_11:15:52_15', 'educationalSystem': '3', 'startSchoolYear': 2022, 'professionalId': '1610837387477643266', 'teacherId': '1610837421766078465', 'departmentId': '1610837321962614786'}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_class_info_15 (test_03_teaching_affairs.Test02Class)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>62</td>
                    <td class="Test03Course">Test03Course</td>
                    <td>test_add_course_info_01</td>
                    <td>新增课程</td>
                    <td>0.338s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化课程20230105_11:15:55_1', 'practiceType': 'know', 'departmentId': '1610837321962614786', 'credit': 3, 'property': 'elective', 'creditHour': '5', 'termIds': ['1610837400509345794'], 'professionalIds': ['1610837387477643266'], 'yearId': '49'}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_course_info_01 (test_03_teaching_affairs.Test03Course)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>63</td>
                    <td class="Test03Course">Test03Course</td>
                    <td>test_add_course_info_02</td>
                    <td>课程名称不能为空</td>
                    <td>0.28s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': '', 'practiceType': 'know', 'departmentId': '1610837321962614786', 'credit': 3, 'property': 'elective', 'creditHour': '5', 'termIds': ['1610837400509345794'], 'professionalIds': ['1610837387477643266'], 'yearId': '50'}
预期结果: {'msg': '课程名称不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '课程名称不能为空', 'code': 500, 'data': None}
test_add_course_info_02 (test_03_teaching_affairs.Test03Course)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>64</td>
                    <td class="Test03Course">Test03Course</td>
                    <td>test_add_course_info_03</td>
                    <td>课程名称不能超过30字</td>
                    <td>0.27s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': '1234567890123456789012345678901', 'practiceType': 'know', 'departmentId': '1610837321962614786', 'credit': 3, 'property': 'elective', 'creditHour': '5', 'termIds': ['1610837400509345794'], 'professionalIds': ['1610837387477643266'], 'yearId': '51'}
预期结果: {'msg': '课程名称不能超过30字', 'code': 500, 'data': None}
实际结果: {'msg': '课程名称不能超过30字', 'code': 500, 'data': None}
test_add_course_info_03 (test_03_teaching_affairs.Test03Course)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>65</td>
                    <td class="Test03Course">Test03Course</td>
                    <td>test_add_course_info_04</td>
                    <td>实践类型不能为空</td>
                    <td>0.267s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化课程20230105_11:15:56_4', 'practiceType': '', 'departmentId': '1610837321962614786', 'credit': 3, 'property': 'elective', 'creditHour': '5', 'termIds': ['1610837400509345794'], 'professionalIds': ['1610837387477643266'], 'yearId': '52'}
预期结果: {'msg': '实践类型不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '实践类型不能为空', 'code': 500, 'data': None}
test_add_course_info_04 (test_03_teaching_affairs.Test03Course)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>66</td>
                    <td class="Test03Course">Test03Course</td>
                    <td>test_add_course_info_05</td>
                    <td>院系不能为空</td>
                    <td>0.342s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化课程20230105_11:15:56_5', 'practiceType': 'know', 'departmentId': '', 'credit': 3, 'property': 'elective', 'creditHour': '5', 'termIds': ['1610837400509345794'], 'professionalIds': ['1610837387477643266'], 'yearId': '53'}
预期结果: {'msg': '院系不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '院系不能为空', 'code': 500, 'data': None}
test_add_course_info_05 (test_03_teaching_affairs.Test03Course)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>67</td>
                    <td class="Test03Course">Test03Course</td>
                    <td>test_add_course_info_06</td>
                    <td>院系不能为空</td>
                    <td>0.389s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化课程20230105_11:15:56_6', 'practiceType': 'know', 'departmentId': '1519960228489131009', 'credit': 3, 'property': 'elective', 'creditHour': '5', 'termIds': ['1610837400509345794'], 'professionalIds': ['1610837387477643266'], 'yearId': '53'}
预期结果: {'msg': '院系不存在', 'code': 500, 'data': None}
实际结果: {'msg': '院系不存在', 'code': 500, 'data': None}
test_add_course_info_06 (test_03_teaching_affairs.Test03Course)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>68</td>
                    <td class="Test03Course">Test03Course</td>
                    <td>test_add_course_info_07</td>
                    <td>学分不能为空</td>
                    <td>0.368s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化课程20230105_11:15:57_7', 'practiceType': 'know', 'departmentId': '1610837321962614786', 'credit': '', 'property': 'elective', 'creditHour': '5', 'termIds': ['1610837400509345794'], 'professionalIds': ['1610837387477643266'], 'yearId': '54'}
预期结果: {'msg': '学分不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '学分不能为空', 'code': 500, 'data': None}
test_add_course_info_07 (test_03_teaching_affairs.Test03Course)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>69</td>
                    <td class="Test03Course">Test03Course</td>
                    <td>test_add_course_info_08</td>
                    <td>修读性质不能为空</td>
                    <td>0.271s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化课程20230105_11:15:57_8', 'practiceType': 'know', 'departmentId': '1610837321962614786', 'credit': 3, 'property': '', 'creditHour': '5', 'termIds': ['1610837400509345794'], 'professionalIds': ['1610837387477643266'], 'yearId': '55'}
预期结果: {'msg': '修读性质不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '修读性质不能为空', 'code': 500, 'data': None}
test_add_course_info_08 (test_03_teaching_affairs.Test03Course)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>70</td>
                    <td class="Test03Course">Test03Course</td>
                    <td>test_add_course_info_09</td>
                    <td>修读性质填写错误</td>
                    <td>0.282s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化课程20230105_11:15:57_9', 'practiceType': 'know', 'departmentId': '1610837321962614786', 'credit': 3, 'property': 'iiielectiveiiiii', 'creditHour': '5', 'termIds': ['1610837400509345794'], 'professionalIds': ['1610837387477643266'], 'yearId': '56'}
预期结果: {'msg': '修读性质填写错误', 'code': 500, 'data': None}
实际结果: {'msg': '修读性质填写错误', 'code': 500, 'data': None}
test_add_course_info_09 (test_03_teaching_affairs.Test03Course)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>71</td>
                    <td class="Test03Course">Test03Course</td>
                    <td>test_add_course_info_10</td>
                    <td>学时(周数)不能为空</td>
                    <td>0.283s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化课程20230105_11:15:58_10', 'practiceType': 'know', 'departmentId': '1610837321962614786', 'credit': 3, 'property': 'elective', 'creditHour': '', 'termIds': ['1610837400509345794'], 'professionalIds': ['1610837387477643266'], 'yearId': '57'}
预期结果: {'msg': '学时不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '学时不能为空', 'code': 500, 'data': None}
test_add_course_info_10 (test_03_teaching_affairs.Test03Course)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>72</td>
                    <td class="Test03Course">Test03Course</td>
                    <td>test_add_course_info_11</td>
                    <td>学期不能为空</td>
                    <td>0.306s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化课程20230105_11:15:58_11', 'practiceType': 'know', 'departmentId': '1610837321962614786', 'credit': 3, 'property': 'elective', 'creditHour': '5', 'termIds': [''], 'professionalIds': ['1610837387477643266'], 'yearId': '58'}
预期结果: {'msg': '学期不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '学期不能为空', 'code': 500, 'data': None}
test_add_course_info_11 (test_03_teaching_affairs.Test03Course)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>73</td>
                    <td class="Test03Course">Test03Course</td>
                    <td>test_add_course_info_12</td>
                    <td>专业不能为空</td>
                    <td>0.291s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化课程20230105_11:15:58_12', 'practiceType': 'know', 'departmentId': '1610837321962614786', 'credit': 3, 'property': 'elective', 'creditHour': '5', 'termIds': ['1610837400509345794'], 'professionalIds': [''], 'yearId': '59'}
预期结果: {'msg': '部分专业信息不存在', 'code': 500, 'data': None}
实际结果: {'msg': '部分专业信息不存在', 'code': 500, 'data': None}
test_add_course_info_12 (test_03_teaching_affairs.Test03Course)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>74</td>
                    <td class="Test03Course">Test03Course</td>
                    <td>test_add_course_info_13</td>
                    <td>专业填写错误</td>
                    <td>0.301s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化课程20230105_11:15:59_13', 'practiceType': 'know', 'departmentId': '1610837321962614786', 'credit': 3, 'property': 'elective', 'creditHour': '5', 'termIds': ['1610837400509345794'], 'professionalIds': ['1522136228155148289'], 'yearId': '60'}
预期结果: {'msg': '部分专业信息不存在', 'code': 500, 'data': None}
实际结果: {'msg': '部分专业信息不存在', 'code': 500, 'data': None}
test_add_course_info_13 (test_03_teaching_affairs.Test03Course)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>75</td>
                    <td class="Test03Course">Test03Course</td>
                    <td>test_add_course_info_14</td>
                    <td>新增课程</td>
                    <td>0.303s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化课程20230105_11:15:59_14', 'practiceType': 'know', 'departmentId': '1610837321962614786', 'credit': 3, 'property': 'elective', 'creditHour': '5', 'termIds': ['1610837400509345794'], 'professionalIds': ['1610837387477643266'], 'yearId': '49'}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_course_info_14 (test_03_teaching_affairs.Test03Course)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>76</td>
                    <td class="Test04Student">Test04Student</td>
                    <td>test_add_student_info_01</td>
                    <td>新增学生成功</td>
                    <td>0.526s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化学生20230105_11:16:02_1', 'number': '20230105_11:16:02_1', 'phone': '13600982879', 'startSchoolYear': 2022, 'classInfoId': '1610837451885375490', 'idType': 'identity_card', 'idNumber': '610101197607170370', 'gender': 0, 'schoolCensusStatus': 'not_duty', 'trainingOrientation': 'secondary', 'other': '17329326914', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266'}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_student_info_01 (test_03_teaching_affairs.Test04Student)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>77</td>
                    <td class="Test04Student">Test04Student</td>
                    <td>test_add_student_info_02</td>
                    <td>学生姓名未填写失败</td>
                    <td>0.296s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': '', 'number': '20230105_11:16:03_2', 'phone': '13649281509', 'startSchoolYear': 2022, 'classInfoId': '1610837451885375490', 'idType': 'identity_card', 'idNumber': '330101201011080106', 'gender': 0, 'schoolCensusStatus': 'not_duty', 'trainingOrientation': 'secondary', 'other': '17380527817', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266'}
预期结果: {'msg': '姓名不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '姓名不能为空', 'code': 500, 'data': None}
test_add_student_info_02 (test_03_teaching_affairs.Test04Student)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>78</td>
                    <td class="Test04Student">Test04Student</td>
                    <td>test_add_student_info_03</td>
                    <td>学生学号未填写失败</td>
                    <td>0.297s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化学生20230105_11:16:03_3', 'number': '', 'phone': '13610725260', 'startSchoolYear': 2022, 'classInfoId': '1610837451885375490', 'idType': 'identity_card', 'idNumber': '500101193706151294', 'gender': 0, 'schoolCensusStatus': 'not_duty', 'trainingOrientation': 'secondary', 'other': '13394293260', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266'}
预期结果: {'msg': '学生学号不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '学生学号不能为空', 'code': 500, 'data': None}
test_add_student_info_03 (test_03_teaching_affairs.Test04Student)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>79</td>
                    <td class="Test04Student">Test04Student</td>
                    <td>test_add_student_info_04</td>
                    <td>手机号未填写,添加成功</td>
                    <td>0.349s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化学生20230105_11:16:04_4', 'number': '20230105_11:16:04_4', 'phone': '', 'startSchoolYear': 2022, 'classInfoId': '1610837451885375490', 'idType': 'identity_card', 'idNumber': '640101199812211228', 'gender': 0, 'schoolCensusStatus': 'not_duty', 'trainingOrientation': 'secondary', 'other': '15542699736', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266'}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_student_info_04 (test_03_teaching_affairs.Test04Student)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>80</td>
                    <td class="Test04Student">Test04Student</td>
                    <td>test_add_student_info_05</td>
                    <td>入学年份未填写,添加失败</td>
                    <td>0.29s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化学生20230105_11:16:04_5', 'number': '20230105_11:16:04_5', 'phone': '13395203050', 'startSchoolYear': '', 'classInfoId': '1610837451885375490', 'idType': 'identity_card', 'idNumber': '140101193302220567', 'gender': 0, 'schoolCensusStatus': 'not_duty', 'trainingOrientation': 'secondary', 'other': '13615447402', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266'}
预期结果: {'msg': '入学年份不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '入学年份不能为空', 'code': 500, 'data': None}
test_add_student_info_05 (test_03_teaching_affairs.Test04Student)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>81</td>
                    <td class="Test04Student">Test04Student</td>
                    <td>test_add_student_info_06</td>
                    <td>班级未填写,添加失败</td>
                    <td>0.288s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化学生20230105_11:16:04_6', 'number': '20230105_11:16:04_6', 'phone': '17302791927', 'startSchoolYear': 2022, 'classInfoId': '', 'idType': 'identity_card', 'idNumber': '110101198801161378', 'gender': 0, 'schoolCensusStatus': 'not_duty', 'trainingOrientation': 'secondary', 'other': '13326915266', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266'}
预期结果: {'msg': '班级不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '班级不能为空', 'code': 500, 'data': None}
test_add_student_info_06 (test_03_teaching_affairs.Test04Student)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>82</td>
                    <td class="Test04Student">Test04Student</td>
                    <td>test_add_student_info_07</td>
                    <td>证件类型和证件号码都没填写,添加成功</td>
                    <td>0.324s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化学生20230105_11:16:04_7', 'number': '20230105_11:16:04_7', 'phone': '17362801632', 'startSchoolYear': 2022, 'classInfoId': '1610837451885375490', 'idType': '', 'idNumber': '', 'gender': 0, 'schoolCensusStatus': 'not_duty', 'trainingOrientation': 'secondary', 'other': '13380410613', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266'}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_student_info_07 (test_03_teaching_affairs.Test04Student)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>83</td>
                    <td class="Test04Student">Test04Student</td>
                    <td>test_add_student_info_08</td>
                    <td>证件类型未填,证件号码填写,添加失败</td>
                    <td>0.313s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化学生20230105_11:16:05_8', 'number': '20230105_11:16:05_8', 'phone': '13373184358', 'startSchoolYear': 2022, 'classInfoId': '1610837451885375490', 'idType': '', 'idNumber': '420101197301210952', 'gender': 0, 'schoolCensusStatus': 'not_duty', 'trainingOrientation': 'secondary', 'other': '17359148398', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266'}
预期结果: {'msg': '证件类型未填,证件号码填写', 'code': 500, 'data': None}
实际结果: {'msg': '证件类型未填,证件号码填写', 'code': 500, 'data': None}
test_add_student_info_08 (test_03_teaching_affairs.Test04Student)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>84</td>
                    <td class="Test04Student">Test04Student</td>
                    <td>test_add_student_info_09</td>
                    <td>证件类型填写,证件号码未填写,添加失败</td>
                    <td>0.304s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化学生20230105_11:16:05_9', 'number': '20230105_11:16:05_9', 'phone': '17377118866', 'startSchoolYear': 2022, 'classInfoId': '1610837451885375490', 'idType': 'identity_card', 'idNumber': '', 'gender': 0, 'schoolCensusStatus': 'not_duty', 'trainingOrientation': 'secondary', 'other': '17338525389', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266'}
预期结果: {'msg': '证件类型填写,证件号码未填写', 'code': 500, 'data': None}
实际结果: {'msg': '证件类型填写,证件号码未填写', 'code': 500, 'data': None}
test_add_student_info_09 (test_03_teaching_affairs.Test04Student)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>85</td>
                    <td class="Test04Student">Test04Student</td>
                    <td>test_add_student_info_10</td>
                    <td>性别未填写,添加成功</td>
                    <td>0.323s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化学生20230105_11:16:05_10', 'number': '20230105_11:16:05_10', 'phone': '13350010108', 'startSchoolYear': 2022, 'classInfoId': '1610837451885375490', 'idType': 'identity_card', 'idNumber': '130101196209051481', 'gender': '', 'schoolCensusStatus': 'not_duty', 'trainingOrientation': 'secondary', 'other': '17311816452', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266'}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_student_info_10 (test_03_teaching_affairs.Test04Student)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>86</td>
                    <td class="Test04Student">Test04Student</td>
                    <td>test_add_student_info_11</td>
                    <td>学籍状态未填写,添加成功</td>
                    <td>0.326s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化学生20230105_11:16:06_11', 'number': '20230105_11:16:06_11', 'phone': '15584278353', 'startSchoolYear': 2022, 'classInfoId': '1610837451885375490', 'idType': 'identity_card', 'idNumber': '510101194703230460', 'gender': 0, 'schoolCensusStatus': '', 'trainingOrientation': 'secondary', 'other': '15557432104', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266'}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_student_info_11 (test_03_teaching_affairs.Test04Student)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>87</td>
                    <td class="Test04Student">Test04Student</td>
                    <td>test_add_student_info_12</td>
                    <td>培养方向未填写,添加成功</td>
                    <td>0.349s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化学生20230105_11:16:06_12', 'number': '20230105_11:16:06_12', 'phone': '15535985781', 'startSchoolYear': 2022, 'classInfoId': '1610837451885375490', 'idType': 'identity_card', 'idNumber': '340101196610010423', 'gender': 0, 'schoolCensusStatus': 'not_duty', 'trainingOrientation': '', 'other': '13686237627', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266'}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_student_info_12 (test_03_teaching_affairs.Test04Student)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>88</td>
                    <td class="Test04Student">Test04Student</td>
                    <td>test_add_student_info_13</td>
                    <td>其他-备注未填写,添加成功</td>
                    <td>0.359s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化学生20230105_11:16:06_13', 'number': '20230105_11:16:06_13', 'phone': '17365407826', 'startSchoolYear': 2022, 'classInfoId': '1610837451885375490', 'idType': 'identity_card', 'idNumber': '140101197706211577', 'gender': 0, 'schoolCensusStatus': 'not_duty', 'trainingOrientation': 'secondary', 'other': '', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266'}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_student_info_13 (test_03_teaching_affairs.Test04Student)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>89</td>
                    <td class="Test04Student">Test04Student</td>
                    <td>test_add_student_info_14</td>
                    <td>院系ID未填写,添加失败</td>
                    <td>0.27s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化学生20230105_11:16:07_14', 'number': '20230105_11:16:07_14', 'phone': '13653825575', 'startSchoolYear': 2022, 'classInfoId': '1610837451885375490', 'idType': 'identity_card', 'idNumber': '620101200403220256', 'gender': 0, 'schoolCensusStatus': 'not_duty', 'trainingOrientation': 'secondary', 'other': '13321445377', 'departmentId': '', 'professionalId': '1610837387477643266'}
预期结果: {'msg': '院系不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '院系不能为空', 'code': 500, 'data': None}
test_add_student_info_14 (test_03_teaching_affairs.Test04Student)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>90</td>
                    <td class="Test04Student">Test04Student</td>
                    <td>test_add_student_info_15</td>
                    <td>专业ID未填写添加失败</td>
                    <td>0.295s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化学生20230105_11:16:07_15', 'number': '20230105_11:16:07_15', 'phone': '13341344445', 'startSchoolYear': 2022, 'classInfoId': '1610837451885375490', 'idType': 'identity_card', 'idNumber': '370101201909130269', 'gender': 0, 'schoolCensusStatus': 'not_duty', 'trainingOrientation': 'secondary', 'other': '17339892204', 'departmentId': '1610837321962614786', 'professionalId': ''}
预期结果: {'msg': '专业不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '专业不能为空', 'code': 500, 'data': None}
test_add_student_info_15 (test_03_teaching_affairs.Test04Student)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>91</td>
                    <td class="Test04Student">Test04Student</td>
                    <td>test_add_student_info_16</td>
                    <td>新增学生成功</td>
                    <td>0.334s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化学生20230105_11:16:07_16', 'number': '20230105_11:16:07_16', 'phone': '13686959325', 'startSchoolYear': 2022, 'classInfoId': '1610837451885375490', 'idType': 'identity_card', 'idNumber': '640101198907171594', 'gender': 0, 'schoolCensusStatus': 'not_duty', 'trainingOrientation': 'secondary', 'other': '17398085533', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266'}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_student_info_16 (test_03_teaching_affairs.Test04Student)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>92</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_01</td>
                    <td>新增计划成功</td>
                    <td>0.567s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:14_1', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_plan_01 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>93</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_02</td>
                    <td>计划名称不能为空</td>
                    <td>0.389s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': '', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '#purpose#', 'other': '#other#', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'markWay': 'hierarchy', 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': '名称不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '名称不能为空', 'code': 500, 'data': None}
test_add_plan_02 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>94</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_03</td>
                    <td>计划名称不能大于30位</td>
                    <td>0.318s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': '123456789012345678901234567890111', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': '名称不能超过30', 'code': 500, 'data': None}
实际结果: {'msg': '名称不能超过30', 'code': 500, 'data': None}
test_add_plan_03 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>95</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_04</td>
                    <td>课程不能为空</td>
                    <td>0.3s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:15_4', 'courseId': '', 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': '课程不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '课程不能为空', 'code': 500, 'data': None}
test_add_plan_04 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>96</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_05</td>
                    <td>课程不存在</td>
                    <td>0.394s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:15_5', 'courseId': '1604221420761000', 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': '课程不存在', 'code': 500, 'data': None}
实际结果: {'msg': '课程不存在', 'code': 500, 'data': None}
test_add_plan_05 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>97</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_06</td>
                    <td>班级不能为空</td>
                    <td>0.383s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:16_6', 'courseId': 1610837480264036353, 'classInfoIds': [''], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': '班级不匹配', 'code': 500, 'data': None}
实际结果: {'msg': '班级不匹配', 'code': 500, 'data': None}
test_add_plan_06 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>98</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_07</td>
                    <td>班级不存在</td>
                    <td>0.385s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:16_7', 'courseId': 1610837480264036353, 'classInfoIds': ['1608192098381826'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': '班级不匹配', 'code': 500, 'data': None}
实际结果: {'msg': '班级不匹配', 'code': 500, 'data': None}
test_add_plan_07 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>99</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_08</td>
                    <td>计划开始时间不能为空</td>
                    <td>0.312s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:16_8', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': '', 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': '开始时间不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '开始时间不能为空', 'code': 500, 'data': None}
test_add_plan_08 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>100</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_09</td>
                    <td>计划结束时间不能为空</td>
                    <td>0.35s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:17_9', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': '', 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': '结束时间不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '结束时间不能为空', 'code': 500, 'data': None}
test_add_plan_09 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>101</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_10</td>
                    <td>负责老师为空,添加成功</td>
                    <td>0.339s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:17_10', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': [], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_plan_10 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>102</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_11</td>
                    <td>教师不存在,添加失败</td>
                    <td>0.374s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:17_11', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['16084041590535938'], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': '教师不匹配', 'code': 500, 'data': None}
实际结果: {'msg': '教师不匹配', 'code': 500, 'data': None}
test_add_plan_11 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>103</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_12</td>
                    <td>实习目的为空,添加成功</td>
                    <td>0.37s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:18_12', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '', 'other': '其他(备注)', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_plan_12 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>104</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_13</td>
                    <td>实习目的不能超过100位</td>
                    <td>0.304s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:18_13', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901', 'other': '其他(备注)', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': '实习目的不能超过100', 'code': 500, 'data': None}
实际结果: {'msg': '实习目的不能超过100', 'code': 500, 'data': None}
test_add_plan_13 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>105</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_14</td>
                    <td>其他(备注)未填写,添加成功</td>
                    <td>0.387s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:18_14', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_plan_14 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>106</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_15</td>
                    <td>其他(备注)长度不能超过200位</td>
                    <td>0.286s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:19_15', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '其他234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789011', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': '其他(备注)长度不能超过200位', 'code': 500, 'data': None}
实际结果: {'msg': '其他(备注)长度不能超过200位', 'code': 500, 'data': None}
test_add_plan_15 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>107</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_16</td>
                    <td>实习形式不能为空</td>
                    <td>0.333s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:19_16', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': [''], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': '实习形式不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '实习形式不能为空', 'code': 500, 'data': None}
test_add_plan_16 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>108</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_17</td>
                    <td>实习形式为集中,添加成功--集中</td>
                    <td>0.374s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:19_17', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': ['centralize'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_plan_17 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>109</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_18</td>
                    <td>实习形式为自主,添加成功--自主</td>
                    <td>0.479s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:20_18', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': ['oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_plan_18 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>110</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_19</td>
                    <td>实习报告提交开始时间不能为空</td>
                    <td>0.291s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:20_19', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': '', 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': '报告提交开始日期不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '报告提交开始日期不能为空', 'code': 500, 'data': None}
test_add_plan_19 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>111</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_20</td>
                    <td>实习报告提交结束时间不能为空</td>
                    <td>0.299s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:21_20', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': '', 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': '报告提交结束日期不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '报告提交结束日期不能为空', 'code': 500, 'data': None}
test_add_plan_20 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>112</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_21</td>
                    <td>报告模块路径为空,添加成功</td>
                    <td>0.367s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:21_21', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_plan_21 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>113</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_22</td>
                    <td>实习内容为空,添加成功</td>
                    <td>0.365s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:21_22', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_plan_22 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>114</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_23</td>
                    <td>实习内容长度不能大于500位</td>
                    <td>0.295s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:22_23', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '2345678901234567890123456789012345678901234567890123456789012345678901234567890234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789023456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890112345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901111', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': '实习内容长度不能超过500位', 'code': 500, 'data': None}
实际结果: {'msg': '实习内容长度不能超过500位', 'code': 500, 'data': None}
test_add_plan_23 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>115</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_24</td>
                    <td>院系不能为空</td>
                    <td>0.264s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:22_24', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': '院系不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '院系不能为空', 'code': 500, 'data': None}
test_add_plan_24 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>116</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_25</td>
                    <td>院系填写错误</td>
                    <td>0.306s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:22_25', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1608511347396610', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': '院系班级不匹配', 'code': 500, 'data': None}
实际结果: {'msg': '院系班级不匹配', 'code': 500, 'data': None}
test_add_plan_25 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>117</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_26</td>
                    <td>专业不能为空</td>
                    <td>0.311s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:22_26', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '', 'termId': 1610837400509345794}
预期结果: {'msg': '专业不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '专业不能为空', 'code': 500, 'data': None}
test_add_plan_26 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>118</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_27</td>
                    <td>专业填写错误</td>
                    <td>0.34s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:23_27', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1608402858811393', 'termId': 1610837400509345794}
预期结果: {'msg': '专业班级不匹配', 'code': 500, 'data': None}
实际结果: {'msg': '专业班级不匹配', 'code': 500, 'data': None}
test_add_plan_27 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>119</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_28</td>
                    <td>学期不能为空</td>
                    <td>0.274s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:23_28', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': ''}
预期结果: {'msg': '学期不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '学期不能为空', 'code': 500, 'data': None}
test_add_plan_28 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>120</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_29</td>
                    <td>学期填写错误</td>
                    <td>0.325s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:23_29', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': '16404135152316418'}
预期结果: {'msg': '学期填写错误', 'code': 500, 'data': None}
实际结果: {'msg': '学期填写错误', 'code': 500, 'data': None}
test_add_plan_29 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>121</td>
                    <td class="Test01addInternshipPlan">Test01addInternshipPlan</td>
                    <td>test_add_plan_30</td>
                    <td>新增计划成功</td>
                    <td>0.404s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化计划20230105_11:16:24_30', 'courseId': 1610837480264036353, 'classInfoIds': ['1610837451885375490'], 'startTime': 1627747200000, 'endTime': 1735453543000, 'teacherIds': ['1610837421766078465'], 'purpose': '实习目的py自动化', 'other': '其他(备注)', 'practiceFormList': ['centralize', 'oneself'], 'reportSubmitStartTime': 1630512000000, 'reportSubmitEndTime': 1727884800000, 'reportTemplate': '', 'content': '实习内容#content#', 'departmentId': '1610837321962614786', 'professionalId': '1610837387477643266', 'termId': 1610837400509345794}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_plan_30 (test_04_Internship_preparation.Test01addInternshipPlan)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>122</td>
                    <td class="Test02publishInternshipPlan">Test02publishInternshipPlan</td>
                    <td>test_publish_plan_1</td>
                    <td>发布计划</td>
                    <td>1.1s</td>
                    
                    <td class="text-danger">错误</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>Traceback (most recent call last):
</pre>
                        

                            <pre>  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py", line 59, in testPartExecutor
    yield
</pre>
                        

                            <pre>  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py", line 615, in run
    testMethod()
</pre>
                        

                            <pre>  File "/Users/shitou/工作/code/work/workAi/yxly/common/myddt.py", line 145, in wrapper
    return func(self, *args, **kwargs)
</pre>
                        

                            <pre>  File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_04_Internship_preparation.py", line 208, in test_publish_plan
    self.add_plan.write_excel(row=case["id"] + 1, column=9, value=case["data"])
</pre>
                        

                            <pre>AttributeError: 'Test02publishInternshipPlan' object has no attribute 'add_plan'
</pre>
                        

                            <pre>用例入参:{'publishStatus': 'published', 'ids': [1610837585067110402]}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_publish_plan_1 (test_04_Internship_preparation.Test02publishInternshipPlan)执行——>【错误Error】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>123</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_01</td>
                    <td>新增项目成功--自主-(需要报名审核-允许自行填报企业信息)</td>
                    <td>0.427s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化项目20230105_11:16:28_1', 'planId': '1610837585067110402', 'practiceForm': 'oneself', 'joinWay': 'need', 'requirement': '实习要求', 'startTime': 1662021598000, 'endTime': 1693557598000, 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': 'need', 'oneselfFillCompanyInfo': 'allow', 'participantList': [{'studentIds': ['1610837516293107713'], 'teacherId': 1610837421766078465}], 'jobIds': ['1610468861604655106']}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_project_01 (test_04_Internship_preparation.Test03InternshipProject)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>124</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_02</td>
                    <td>新增项目成功--自主-(需要报名审核-不允许自行填报企业信息)</td>
                    <td>0.496s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化项目20230105_11:16:29_2', 'planId': '1610837585067110402', 'practiceForm': 'oneself', 'joinWay': 'need', 'requirement': '实习要求', 'startTime': 1662021598000, 'endTime': 1693557598000, 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': 'need', 'oneselfFillCompanyInfo': 'no', 'participantList': [{'studentIds': ['1610837516293107713'], 'teacherId': 1610837421766078465}], 'jobIds': ['1610468861604655106']}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_project_02 (test_04_Internship_preparation.Test03InternshipProject)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>125</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_03</td>
                    <td>新增项目成功--自主-(不需要报名审核-允许自行填报企业信息)</td>
                    <td>0.436s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化项目20230105_11:16:29_3', 'planId': '1610837585067110402', 'practiceForm': 'oneself', 'joinWay': 'need', 'requirement': '实习要求', 'startTime': 1662021598000, 'endTime': 1693557598000, 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': 'no', 'oneselfFillCompanyInfo': 'allow', 'participantList': [{'studentIds': ['1610837516293107713'], 'teacherId': 1610837421766078465}], 'jobIds': ['1610468861604655106']}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_project_03 (test_04_Internship_preparation.Test03InternshipProject)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>126</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_04</td>
                    <td>新增项目成功--自主-(不需要报名审核-不允许自行填报企业信息)</td>
                    <td>0.43s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化项目20230105_11:16:30_4', 'planId': '1610837585067110402', 'practiceForm': 'oneself', 'joinWay': 'need', 'requirement': '实习要求', 'startTime': 1662021598000, 'endTime': 1693557598000, 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': 'no', 'oneselfFillCompanyInfo': 'no', 'participantList': [{'studentIds': ['1610837516293107713'], 'teacherId': 1610837421766078465}], 'jobIds': ['1610468861604655106']}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_project_04 (test_04_Internship_preparation.Test03InternshipProject)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>127</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_05</td>
                    <td>项目名称不能为空</td>
                    <td>0.3s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': '', 'planId': '1610837585067110402', 'practiceForm': 'oneself', 'joinWay': 'need', 'requirement': '实习要求', 'startTime': 1662021598000, 'endTime': 1693557598000, 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': 'need', 'oneselfFillCompanyInfo': 'allow', 'participantList': [{'studentIds': ['1610837516293107713'], 'teacherId': 1610837421766078465}], 'jobIds': ['1610468861604655106']}
预期结果: {'msg': '项目名称不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '项目名称不能为空', 'code': 500, 'data': None}
test_add_project_05 (test_04_Internship_preparation.Test03InternshipProject)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>128</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_06</td>
                    <td>项目名称不能大于30位</td>
                    <td>0.291s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': '1234567890123456789012345678901', 'planId': '1610837585067110402', 'practiceForm': 'oneself', 'joinWay': 'need', 'requirement': '实习要求', 'startTime': 1662021598000, 'endTime': 1693557598000, 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': 'need', 'oneselfFillCompanyInfo': 'allow', 'participantList': [{'studentIds': ['1610837516293107713'], 'teacherId': 1610837421766078465}], 'jobIds': ['1610468861604655106']}
预期结果: {'msg': '名称不能超过30', 'code': 500, 'data': None}
实际结果: {'msg': '名称不能超过30', 'code': 500, 'data': None}
test_add_project_06 (test_04_Internship_preparation.Test03InternshipProject)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>129</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_07</td>
                    <td>实习计划不能为空</td>
                    <td>0.314s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化项目20230105_11:16:31_7', 'planId': '', 'practiceForm': 'oneself', 'joinWay': 'need', 'requirement': '实习要求', 'startTime': 1662021598000, 'endTime': 1693557598000, 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': 'need', 'oneselfFillCompanyInfo': 'allow', 'participantList': [{'studentIds': ['1610837516293107713'], 'teacherId': 1610837421766078465}], 'jobIds': ['1610468861604655106']}
预期结果: {'msg': '计划不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '计划不能为空', 'code': 500, 'data': None}
test_add_project_07 (test_04_Internship_preparation.Test03InternshipProject)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>130</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_08</td>
                    <td>实习计划不匹配</td>
                    <td>0.295s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化项目20230105_11:16:31_8', 'planId': '1610468261604655106', 'practiceForm': 'oneself', 'joinWay': 'need', 'requirement': '实习要求', 'startTime': 1662021598000, 'endTime': 1693557598000, 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': 'need', 'oneselfFillCompanyInfo': 'allow', 'participantList': [{'studentIds': ['1610837516293107713'], 'teacherId': 1610837421766078465}], 'jobIds': ['1610468861604655106']}
预期结果: {'msg': '计划信息不存在', 'code': 500, 'data': None}
实际结果: {'msg': '计划信息不存在', 'code': 500, 'data': None}
test_add_project_08 (test_04_Internship_preparation.Test03InternshipProject)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>131</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_09</td>
                    <td>实习形式不能为空</td>
                    <td>0.304s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化项目20230105_11:16:31_9', 'planId': '1610837585067110402', 'practiceForm': '', 'joinWay': 'need', 'requirement': '实习要求', 'startTime': 1662021598000, 'endTime': 1693557598000, 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': 'need', 'oneselfFillCompanyInfo': 'allow', 'participantList': [{'studentIds': ['1610837516293107713'], 'teacherId': 1610837421766078465}], 'jobIds': ['1610468861604655106']}
预期结果: {'msg': '实习形式不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '实习形式不能为空', 'code': 500, 'data': None}
test_add_project_09 (test_04_Internship_preparation.Test03InternshipProject)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>132</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_10</td>
                    <td>实习形式填写错误</td>
                    <td>0.323s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化项目20230105_11:16:32_10', 'planId': '1610837585067110402', 'practiceForm': 'onelf', 'joinWay': 'need', 'requirement': '实习要求', 'startTime': 1662021598000, 'endTime': 1693557598000, 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': 'need', 'oneselfFillCompanyInfo': 'allow', 'participantList': [{'studentIds': ['1610837516293107713'], 'teacherId': 1610837421766078465}], 'jobIds': ['1610468861604655106']}
预期结果: {'msg': '实习形式填写错误', 'code': 500, 'data': None}
实际结果: {'msg': '实习形式填写错误', 'code': 500, 'data': None}
test_add_project_10 (test_04_Internship_preparation.Test03InternshipProject)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>133</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_11</td>
                    <td>实习要求不填写,添加成功</td>
                    <td>0.459s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化项目20230105_11:16:32_11', 'planId': '1610837585067110402', 'practiceForm': 'oneself', 'joinWay': '', 'requirement': '', 'startTime': 1662021598000, 'endTime': 1693557598000, 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': 'need', 'oneselfFillCompanyInfo': 'allow', 'participantList': [{'studentIds': ['1610837516293107713'], 'teacherId': 1610837421766078465}], 'jobIds': ['1610468861604655106']}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_project_11 (test_04_Internship_preparation.Test03InternshipProject)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>134</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_12</td>
                    <td>实习要求不能大于500</td>
                    <td>0.33s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化项目20230105_11:16:32_12', 'planId': '1610837585067110402', 'practiceForm': 'oneself', 'joinWay': 'need', 'requirement': '123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890', 'startTime': 1662021598000, 'endTime': 1693557598000, 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': 'need', 'oneselfFillCompanyInfo': 'allow', 'participantList': [{'studentIds': ['1610837516293107713'], 'teacherId': 1610837421766078465}], 'jobIds': ['1610468861604655106']}
预期结果: {'msg': '实习要求不能超过500', 'code': 500, 'data': None}
实际结果: {'msg': '实习要求不能超过500', 'code': 500, 'data': None}
test_add_project_12 (test_04_Internship_preparation.Test03InternshipProject)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>135</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_13</td>
                    <td>实习开始时间不能为空</td>
                    <td>0.326s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化项目20230105_11:16:33_13', 'planId': '1610837585067110402', 'practiceForm': 'oneself', 'joinWay': 'need', 'requirement': '实习要求', 'startTime': '', 'endTime': 1693557598000, 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': 'need', 'oneselfFillCompanyInfo': 'allow', 'participantList': [{'studentIds': ['1610837516293107713'], 'teacherId': 1610837421766078465}], 'jobIds': ['1610468861604655106']}
预期结果: {'msg': '实习开始时间不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '实习开始时间不能为空', 'code': 500, 'data': None}
test_add_project_13 (test_04_Internship_preparation.Test03InternshipProject)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>136</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_14</td>
                    <td>实习结束时间不能为空</td>
                    <td>0.275s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化项目20230105_11:16:33_14', 'planId': '1610837585067110402', 'practiceForm': 'oneself', 'joinWay': 'need', 'requirement': '实习要求', 'startTime': 1662021598000, 'endTime': '', 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': 'need', 'oneselfFillCompanyInfo': 'allow', 'participantList': [{'studentIds': ['1610837516293107713'], 'teacherId': 1610837421766078465}], 'jobIds': ['1610468861604655106']}
预期结果: {'msg': '实习结束时间不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '实习结束时间不能为空', 'code': 500, 'data': None}
test_add_project_14 (test_04_Internship_preparation.Test03InternshipProject)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>137</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_15</td>
                    <td>项目开始日期需早于项目结束日期</td>
                    <td>0.318s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化项目20230105_11:16:33_15', 'planId': '1610837585067110402', 'practiceForm': 'oneself', 'joinWay': 'need', 'requirement': '实习要求', 'startTime': 1693557598000, 'endTime': 1662021598000, 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': 'need', 'oneselfFillCompanyInfo': 'allow', 'participantList': [{'studentIds': ['1610837516293107713'], 'teacherId': 1610837421766078465}], 'jobIds': ['1610468861604655106']}
预期结果: {'msg': '项目开始日期需早于项目结束日期', 'code': 500, 'data': None}
实际结果: {'msg': '项目开始日期需早于项目结束日期', 'code': 500, 'data': None}
test_add_project_15 (test_04_Internship_preparation.Test03InternshipProject)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>138</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_16</td>
                    <td>报名审核填写错误(后期在做修改,目前不做改动-0104)</td>
                    <td>0.378s</td>
                    
                    <td class="text-warning">失败</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化项目20230105_11:16:34_16', 'planId': '1610837585067110402', 'practiceForm': 'oneself', 'joinWay': 'need', 'requirement': '实习要求', 'startTime': 1662021598000, 'endTime': 1693557598000, 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': 'nd', 'oneselfFillCompanyInfo': 'allow', 'participantList': [{'studentIds': ['1610837516293107713'], 'teacherId': 1610837421766078465}], 'jobIds': ['1610468861604655106']}
预期结果: {'msg': '报名审核填写错误', 'code': 500, 'data': None}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_project_16 (test_04_Internship_preparation.Test03InternshipProject)执行——>【失败】
</pre>
                        

                            <pre>Traceback (most recent call last):
</pre>
                        

                            <pre>  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py", line 59, in testPartExecutor
    yield
</pre>
                        

                            <pre>  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py", line 615, in run
    testMethod()
</pre>
                        

                            <pre>  File "/Users/shitou/工作/code/work/workAi/yxly/common/myddt.py", line 145, in wrapper
    return func(self, *args, **kwargs)
</pre>
                        

                            <pre>  File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_04_Internship_preparation.py", line 291, in test_add_project
    raise e
</pre>
                        

                            <pre>  File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_04_Internship_preparation.py", line 284, in test_add_project
    self.assertEqual(expected['msg'], res['msg'])
</pre>
                        

                            <pre>  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py", line 839, in assertEqual
    assertion_func(first, second, msg=msg)
</pre>
                        

                            <pre>  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py", line 1220, in assertMultiLineEqual
    self.fail(self._formatMessage(msg, standardMsg))
</pre>
                        

                            <pre>  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py", line 680, in fail
    raise self.failureException(msg)
</pre>
                        

                            <pre>AssertionError: '报名审核填写错误' != 'success'
- 报名审核填写错误
+ success

</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>139</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_17</td>
                    <td>报名审核不能为空(后期在做修改,目前不做改动-0104)</td>
                    <td>0.343s</td>
                    
                    <td class="text-warning">失败</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化项目20230105_11:16:34_17', 'planId': '1610837585067110402', 'practiceForm': 'oneself', 'joinWay': 'need', 'requirement': '实习要求', 'startTime': 1662021598000, 'endTime': 1693557598000, 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': '', 'oneselfFillCompanyInfo': 'allow', 'participantList': [{'studentIds': ['1610837516293107713'], 'teacherId': 1610837421766078465}], 'jobIds': ['1610468861604655106']}
预期结果: {'msg': '报名审核不能为空', 'code': 500, 'data': None}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_project_17 (test_04_Internship_preparation.Test03InternshipProject)执行——>【失败】
</pre>
                        

                            <pre>Traceback (most recent call last):
</pre>
                        

                            <pre>  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py", line 59, in testPartExecutor
    yield
</pre>
                        

                            <pre>  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py", line 615, in run
    testMethod()
</pre>
                        

                            <pre>  File "/Users/shitou/工作/code/work/workAi/yxly/common/myddt.py", line 145, in wrapper
    return func(self, *args, **kwargs)
</pre>
                        

                            <pre>  File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_04_Internship_preparation.py", line 291, in test_add_project
    raise e
</pre>
                        

                            <pre>  File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_04_Internship_preparation.py", line 284, in test_add_project
    self.assertEqual(expected['msg'], res['msg'])
</pre>
                        

                            <pre>  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py", line 839, in assertEqual
    assertion_func(first, second, msg=msg)
</pre>
                        

                            <pre>  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py", line 1220, in assertMultiLineEqual
    self.fail(self._formatMessage(msg, standardMsg))
</pre>
                        

                            <pre>  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py", line 680, in fail
    raise self.failureException(msg)
</pre>
                        

                            <pre>AssertionError: '报名审核不能为空' != 'success'
- 报名审核不能为空
+ success

</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>140</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_18</td>
                    <td>自行填报企业信息填写错误(后期在做修改,目前不做改动-0104)</td>
                    <td>0.383s</td>
                    
                    <td class="text-warning">失败</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化项目20230105_11:16:34_18', 'planId': '1610837585067110402', 'practiceForm': 'oneself', 'joinWay': 'need', 'requirement': '实习要求', 'startTime': 1662021598000, 'endTime': 1693557598000, 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': 'need', 'oneselfFillCompanyInfo': 'aow', 'participantList': [{'studentIds': ['1610837516293107713'], 'teacherId': 1610837421766078465}], 'jobIds': ['1610468861604655106']}
预期结果: {'msg': '实习计划不匹配', 'code': 500, 'data': None}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_project_18 (test_04_Internship_preparation.Test03InternshipProject)执行——>【失败】
</pre>
                        

                            <pre>Traceback (most recent call last):
</pre>
                        

                            <pre>  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py", line 59, in testPartExecutor
    yield
</pre>
                        

                            <pre>  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py", line 615, in run
    testMethod()
</pre>
                        

                            <pre>  File "/Users/shitou/工作/code/work/workAi/yxly/common/myddt.py", line 145, in wrapper
    return func(self, *args, **kwargs)
</pre>
                        

                            <pre>  File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_04_Internship_preparation.py", line 291, in test_add_project
    raise e
</pre>
                        

                            <pre>  File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_04_Internship_preparation.py", line 284, in test_add_project
    self.assertEqual(expected['msg'], res['msg'])
</pre>
                        

                            <pre>  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py", line 839, in assertEqual
    assertion_func(first, second, msg=msg)
</pre>
                        

                            <pre>  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py", line 1220, in assertMultiLineEqual
    self.fail(self._formatMessage(msg, standardMsg))
</pre>
                        

                            <pre>  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py", line 680, in fail
    raise self.failureException(msg)
</pre>
                        

                            <pre>AssertionError: '实习计划不匹配' != 'success'
- 实习计划不匹配
+ success

</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>141</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_19</td>
                    <td>自行填报企业信息不能为空(后期在做修改,目前不做改动-0104)</td>
                    <td>0.369s</td>
                    
                    <td class="text-warning">失败</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化项目20230105_11:16:35_19', 'planId': '1610837585067110402', 'practiceForm': 'oneself', 'joinWay': 'need', 'requirement': '实习要求', 'startTime': 1662021598000, 'endTime': 1693557598000, 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': 'need', 'oneselfFillCompanyInfo': '', 'participantList': [{'studentIds': ['1610837516293107713'], 'teacherId': 1610837421766078465}], 'jobIds': ['1610468861604655106']}
预期结果: {'msg': '自行填报企业信息不能为空', 'code': 500, 'data': None}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_project_19 (test_04_Internship_preparation.Test03InternshipProject)执行——>【失败】
</pre>
                        

                            <pre>Traceback (most recent call last):
</pre>
                        

                            <pre>  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py", line 59, in testPartExecutor
    yield
</pre>
                        

                            <pre>  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py", line 615, in run
    testMethod()
</pre>
                        

                            <pre>  File "/Users/shitou/工作/code/work/workAi/yxly/common/myddt.py", line 145, in wrapper
    return func(self, *args, **kwargs)
</pre>
                        

                            <pre>  File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_04_Internship_preparation.py", line 291, in test_add_project
    raise e
</pre>
                        

                            <pre>  File "/Users/shitou/工作/code/work/workAi/yxly/testcase/test_04_Internship_preparation.py", line 284, in test_add_project
    self.assertEqual(expected['msg'], res['msg'])
</pre>
                        

                            <pre>  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py", line 839, in assertEqual
    assertion_func(first, second, msg=msg)
</pre>
                        

                            <pre>  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py", line 1220, in assertMultiLineEqual
    self.fail(self._formatMessage(msg, standardMsg))
</pre>
                        

                            <pre>  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/case.py", line 680, in fail
    raise self.failureException(msg)
</pre>
                        

                            <pre>AssertionError: '自行填报企业信息不能为空' != 'success'
- 自行填报企业信息不能为空
+ success

</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>142</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_20</td>
                    <td>参与学生不能为空</td>
                    <td>0.31s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化项目20230105_11:16:35_20', 'planId': '1610837585067110402', 'practiceForm': 'oneself', 'joinWay': 'need', 'requirement': '实习要求', 'startTime': 1662021598000, 'endTime': 1693557598000, 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': 'need', 'oneselfFillCompanyInfo': 'allow', 'participantList': [{'studentIds': [], 'teacherId': 1610837421766078465}], 'jobIds': ['1610468861604655106']}
预期结果: {'msg': '参与学生不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '参与学生不能为空', 'code': 500, 'data': None}
test_add_project_20 (test_04_Internship_preparation.Test03InternshipProject)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>143</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_21</td>
                    <td>参与学生填写错误</td>
                    <td>0.377s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化项目20230105_11:16:35_21', 'planId': '1610837585067110402', 'practiceForm': 'oneself', 'joinWay': 'need', 'requirement': '实习要求', 'startTime': 1662021598000, 'endTime': 1693557598000, 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': 'need', 'oneselfFillCompanyInfo': 'allow', 'participantList': [{'studentIds': ['160468861604655106'], 'teacherId': 1610837421766078465}], 'jobIds': ['1610468861604655106']}
预期结果: {'msg': '学生信息不正确', 'code': 500, 'data': None}
实际结果: {'msg': '学生信息不正确', 'code': 500, 'data': None}
test_add_project_21 (test_04_Internship_preparation.Test03InternshipProject)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>144</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_22</td>
                    <td>关联指定老师不填写,添加成功</td>
                    <td>0.38s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化项目20230105_11:16:36_22', 'planId': '1610837585067110402', 'practiceForm': 'oneself', 'joinWay': 'need', 'requirement': '实习要求', 'startTime': 1662021598000, 'endTime': 1693557598000, 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': 'need', 'oneselfFillCompanyInfo': 'allow', 'participantList': [{'studentIds': ['1610837516293107713'], 'teacherId': ''}], 'jobIds': ['1610468861604655106']}
预期结果: {'msg': 'success', 'code': 200, 'data': True}
实际结果: {'msg': 'success', 'code': 200, 'data': True}
test_add_project_22 (test_04_Internship_preparation.Test03InternshipProject)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>145</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_23</td>
                    <td>关联指定老师填写错误</td>
                    <td>0.358s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化项目20230105_11:16:36_23', 'planId': '1610837585067110402', 'practiceForm': 'oneself', 'joinWay': 'need', 'requirement': '实习要求', 'startTime': 1662021598000, 'endTime': 1693557598000, 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': 'need', 'oneselfFillCompanyInfo': 'allow', 'participantList': [{'studentIds': ['1610837516293107713'], 'teacherId': 16104688616046551}], 'jobIds': ['1610468861604655106']}
预期结果: {'msg': '关联指定老师填写错误', 'code': 500, 'data': None}
实际结果: {'msg': '关联指定老师填写错误', 'code': 500, 'data': None}
test_add_project_23 (test_04_Internship_preparation.Test03InternshipProject)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>146</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_24</td>
                    <td>推荐岗位不能为空</td>
                    <td>0.337s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化项目20230105_11:16:37_24', 'planId': '1610837585067110402', 'practiceForm': 'oneself', 'joinWay': 'need', 'requirement': '实习要求', 'startTime': 1662021598000, 'endTime': 1693557598000, 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': 'need', 'oneselfFillCompanyInfo': 'allow', 'participantList': [{'studentIds': ['1610837516293107713'], 'teacherId': 1610837421766078465}], 'jobIds': []}
预期结果: {'msg': '岗位不能为空', 'code': 500, 'data': None}
实际结果: {'msg': '岗位不能为空', 'code': 500, 'data': None}
test_add_project_24 (test_04_Internship_preparation.Test03InternshipProject)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
                <tr class="case_">
                    <td>147</td>
                    <td class="Test03InternshipProject">Test03InternshipProject</td>
                    <td>test_add_project_25</td>
                    <td>推荐岗位填写错误</td>
                    <td>0.415s</td>
                    
                    <td class="text-success">成功</td>
                    
                    <td>
                        <button type="button" class="btn btn_info btn-primary btn-sm">查看详情</button>
                    </td>
                </tr>

                <tr class="test_log">

                     <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all">
                        

                            <pre>用例入参:{'name': 'py自动化项目20230105_11:16:37_25', 'planId': '1610837585067110402', 'practiceForm': 'oneself', 'joinWay': 'need', 'requirement': '实习要求', 'startTime': 1662021598000, 'endTime': 1693557598000, 'applyStartTime': '', 'applyEndTime': '', 'applyAudit': 'need', 'oneselfFillCompanyInfo': 'allow', 'participantList': [{'studentIds': ['1610837516293107713'], 'teacherId': 1610837421766078465}], 'jobIds': ['161046884655106']}
预期结果: {'msg': '推荐岗位填写错误', 'code': 500, 'data': None}
实际结果: {'msg': '推荐岗位填写错误', 'code': 500, 'data': None}
test_add_project_25 (test_04_Internship_preparation.Test03InternshipProject)执行——>【通过】
</pre>
                        
                        
                    </td>
                </tr>
                
            </table>
        </div>

        <div style="height: 200px"></div>
    </div>

</div>



<script type="text/javascript">

    const resulte = {
            "success": `141`,
            "all": `147`,
            "fail": `4`,
            "skip": '0',
            "error": `2`,
            "runtime": '80.52 S',
            "begin_time": "80.52 S",
            "pass_rate": '95.92',
        }
    ;
    const history = [{'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'}, {'success': 11, 'all': 26, 'fail': 15, 'skip': 0, 'error': 0, 'runtime': '17.06 S', 'begin_time': '2022-12-23 11:04:53', 'pass_rate': '42.31'}, {'success': 15, 'all': 26, 'fail': 11, 'skip': 0, 'error': 0, 'runtime': '16.82 S', 'begin_time': '2022-12-23 11:10:29', 'pass_rate': '57.69'}, {'success': 14, 'all': 31, 'fail': 14, 'skip': 0, 'error': 3, 'runtime': '16.68 S', 'begin_time': '2022-12-23 11:24:23', 'pass_rate': '45.16'}, {'success': 14, 'all': 31, 'fail': 14, 'skip': 0, 'error': 3, 'runtime': '15.31 S', 'begin_time': '2022-12-23 11:50:26', 'pass_rate': '45.16'}, {'success': 14, 'all': 31, 'fail': 17, 'skip': 0, 'error': 0, 'runtime': '19.41 S', 'begin_time': '2022-12-23 11:53:02', 'pass_rate': '45.16'}, {'success': 19, 'all': 32, 'fail': 13, 'skip': 0, 'error': 0, 'runtime': '18.26 S', 'begin_time': '2022-12-23 13:56:17', 'pass_rate': '59.38'}, {'success': 21, 'all': 32, 'fail': 11, 'skip': 0, 'error': 0, 'runtime': '19.63 S', 'begin_time': '2022-12-23 14:54:12', 'pass_rate': '65.62'}, {'success': 25, 'all': 32, 'fail': 7, 'skip': 0, 'error': 0, 'runtime': '18.92 S', 'begin_time': '2022-12-23 15:00:04', 'pass_rate': '78.12'}, {'success': 26, 'all': 32, 'fail': 6, 'skip': 0, 'error': 0, 'runtime': '18.33 S', 'begin_time': '2022-12-23 15:01:19', 'pass_rate': '81.25'}, {'success': 7, 'all': 16, 'fail': 0, 'skip': 0, 'error': 9, 'runtime': '4.59 S', 'begin_time': '2022-12-23 15:03:33', 'pass_rate': '43.75'}, {'success': 4, 'all': 9, 'fail': 1, 'skip': 0, 'error': 4, 'runtime': '2.53 S', 'begin_time': '2022-12-23 15:04:12', 'pass_rate': '44.44'}, {'success': 27, 'all': 32, 'fail': 5, 'skip': 0, 'error': 0, 'runtime': '19.26 S', 'begin_time': '2022-12-23 15:06:22', 'pass_rate': '84.38'}, {'success': 27, 'all': 32, 'fail': 5, 'skip': 0, 'error': 0, 'runtime': '18.92 S', 'begin_time': '2022-12-23 15:07:58', 'pass_rate': '84.38'}, {'success': 27, 'all': 32, 'fail': 5, 'skip': 0, 'error': 0, 'runtime': '18.01 S', 'begin_time': '2022-12-23 15:10:26', 'pass_rate': '84.38'}, {'success': 28, 'all': 32, 'fail': 4, 'skip': 0, 'error': 0, 'runtime': '19.33 S', 'begin_time': '2022-12-23 15:31:35', 'pass_rate': '87.50'}, {'success': 28, 'all': 32, 'fail': 4, 'skip': 0, 'error': 0, 'runtime': '18.24 S', 'begin_time': '2022-12-23 15:36:47', 'pass_rate': '87.50'}, {'success': 29, 'all': 32, 'fail': 3, 'skip': 0, 'error': 0, 'runtime': '21.94 S', 'begin_time': '2022-12-23 16:20:37', 'pass_rate': '90.62'}, {'success': 29, 'all': 32, 'fail': 3, 'skip': 0, 'error': 0, 'runtime': '20.53 S', 'begin_time': '2022-12-23 16:21:09', 'pass_rate': '90.62'}, {'success': 31, 'all': 32, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '19.00 S', 'begin_time': '2022-12-23 16:25:20', 'pass_rate': '96.88'}, {'success': 32, 'all': 32, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '18.70 S', 'begin_time': '2022-12-23 16:26:19', 'pass_rate': '100.00'}, {'success': 32, 'all': 32, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '18.82 S', 'begin_time': '2022-12-23 16:43:23', 'pass_rate': '100.00'}, {'success': 30, 'all': 31, 'fail': 0, 'skip': 0, 'error': 1, 'runtime': '53.09 S', 'begin_time': '2022-12-23 19:05:51', 'pass_rate': '96.77'}, {'success': 31, 'all': 31, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '18.21 S', 'begin_time': '2022-12-23 19:09:09', 'pass_rate': '100.00'}, {'success': 30, 'all': 31, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '15.82 S', 'begin_time': '2022-12-23 19:09:46', 'pass_rate': '96.77'}, {'success': 3, 'all': 3, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '1.54 S', 'begin_time': '2022-12-24 17:34:33', 'pass_rate': '100.00'}, {'success': 3, 'all': 3, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '2.35 S', 'begin_time': '2022-12-24 17:36:32', 'pass_rate': '100.00'}, {'success': 5, 'all': 5, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '8.45 S', 'begin_time': '2022-12-24 20:26:29', 'pass_rate': '100.00'}, {'success': 32, 'all': 33, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '24.90 S', 'begin_time': '2022-12-24 20:29:36', 'pass_rate': '96.97'}, {'success': 33, 'all': 33, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '24.88 S', 'begin_time': '2022-12-24 20:30:36', 'pass_rate': '100.00'}, {'success': 33, 'all': 33, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '23.42 S', 'begin_time': '2022-12-27 10:13:10', 'pass_rate': '100.00'}, {'success': 1, 'all': 1, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '3.69 S', 'begin_time': '2022-12-27 11:04:21', 'pass_rate': '100.00'}, {'success': 1, 'all': 15, 'fail': 0, 'skip': 0, 'error': 14, 'runtime': '6.81 S', 'begin_time': '2022-12-27 11:24:50', 'pass_rate': '6.67'}, {'success': 7, 'all': 15, 'fail': 4, 'skip': 0, 'error': 4, 'runtime': '6.84 S', 'begin_time': '2022-12-27 11:29:52', 'pass_rate': '46.67'}, {'success': 8, 'all': 15, 'fail': 5, 'skip': 0, 'error': 2, 'runtime': '7.09 S', 'begin_time': '2022-12-27 11:30:59', 'pass_rate': '53.33'}, {'success': 9, 'all': 15, 'fail': 5, 'skip': 0, 'error': 1, 'runtime': '7.83 S', 'begin_time': '2022-12-27 11:35:03', 'pass_rate': '60.00'}, {'success': 10, 'all': 15, 'fail': 5, 'skip': 0, 'error': 0, 'runtime': '7.92 S', 'begin_time': '2022-12-27 11:36:43', 'pass_rate': '66.67'}, {'success': 10, 'all': 15, 'fail': 5, 'skip': 0, 'error': 0, 'runtime': '7.43 S', 'begin_time': '2022-12-27 11:38:30', 'pass_rate': '66.67'}, {'success': 15, 'all': 20, 'fail': 5, 'skip': 0, 'error': 0, 'runtime': '17.49 S', 'begin_time': '2022-12-27 13:13:59', 'pass_rate': '75.00'}, {'success': 15, 'all': 20, 'fail': 5, 'skip': 0, 'error': 0, 'runtime': '18.16 S', 'begin_time': '2022-12-27 13:14:25', 'pass_rate': '75.00'}, {'success': 48, 'all': 77, 'fail': 10, 'skip': 0, 'error': 19, 'runtime': '164.06 S', 'begin_time': '2022-12-27 14:17:07', 'pass_rate': '62.34'}, {'success': 48, 'all': 77, 'fail': 10, 'skip': 0, 'error': 19, 'runtime': '34.83 S', 'begin_time': '2022-12-27 14:27:15', 'pass_rate': '62.34'}, {'success': 16, 'all': 45, 'fail': 8, 'skip': 0, 'error': 21, 'runtime': '16.68 S', 'begin_time': '2022-12-27 14:37:20', 'pass_rate': '35.56'}, {'success': 4, 'all': 14, 'fail': 3, 'skip': 0, 'error': 7, 'runtime': '4.64 S', 'begin_time': '2022-12-27 14:38:18', 'pass_rate': '28.57'}, {'success': 4, 'all': 14, 'fail': 3, 'skip': 0, 'error': 7, 'runtime': '4.41 S', 'begin_time': '2022-12-27 14:38:36', 'pass_rate': '28.57'}, {'success': 5, 'all': 14, 'fail': 3, 'skip': 0, 'error': 6, 'runtime': '4.97 S', 'begin_time': '2022-12-27 14:40:10', 'pass_rate': '35.71'}, {'success': 5, 'all': 14, 'fail': 4, 'skip': 0, 'error': 5, 'runtime': '5.20 S', 'begin_time': '2022-12-27 14:41:31', 'pass_rate': '35.71'}, {'success': 5, 'all': 14, 'fail': 9, 'skip': 0, 'error': 0, 'runtime': '6.57 S', 'begin_time': '2022-12-27 14:43:50', 'pass_rate': '35.71'}, {'success': 20, 'all': 45, 'fail': 13, 'skip': 0, 'error': 12, 'runtime': '19.22 S', 'begin_time': '2022-12-27 14:45:55', 'pass_rate': '44.44'}, {'success': 1, 'all': 13, 'fail': 1, 'skip': 0, 'error': 11, 'runtime': '3.10 S', 'begin_time': '2022-12-27 14:48:00', 'pass_rate': '7.69'}, {'success': 1, 'all': 13, 'fail': 1, 'skip': 0, 'error': 11, 'runtime': '3.07 S', 'begin_time': '2022-12-27 14:48:31', 'pass_rate': '7.69'}, {'success': 2, 'all': 13, 'fail': 11, 'skip': 0, 'error': 0, 'runtime': '6.09 S', 'begin_time': '2022-12-27 14:49:43', 'pass_rate': '15.38'}, {'success': 21, 'all': 45, 'fail': 24, 'skip': 0, 'error': 0, 'runtime': '25.36 S', 'begin_time': '2022-12-27 14:51:21', 'pass_rate': '46.67'}, {'success': 51, 'all': 77, 'fail': 26, 'skip': 0, 'error': 0, 'runtime': '39.21 S', 'begin_time': '2022-12-27 14:52:13', 'pass_rate': '66.23'}, {'success': 50, 'all': 77, 'fail': 26, 'skip': 0, 'error': 1, 'runtime': '38.96 S', 'begin_time': '2022-12-27 15:07:27', 'pass_rate': '64.94'}, {'success': 51, 'all': 77, 'fail': 26, 'skip': 0, 'error': 0, 'runtime': '79.21 S', 'begin_time': '2022-12-27 15:10:37', 'pass_rate': '66.23'}, {'success': 53, 'all': 77, 'fail': 24, 'skip': 0, 'error': 0, 'runtime': '76.66 S', 'begin_time': '2022-12-27 15:15:12', 'pass_rate': '68.83'}, {'success': 54, 'all': 77, 'fail': 23, 'skip': 0, 'error': 0, 'runtime': '61.72 S', 'begin_time': '2022-12-27 15:17:59', 'pass_rate': '70.13'}, {'success': 53, 'all': 77, 'fail': 23, 'skip': 0, 'error': 1, 'runtime': '39.40 S', 'begin_time': '2022-12-27 15:38:19', 'pass_rate': '68.83'}, {'success': 34, 'all': 77, 'fail': 42, 'skip': 0, 'error': 1, 'runtime': '38.39 S', 'begin_time': '2022-12-27 18:24:36', 'pass_rate': '44.16'}, {'success': 35, 'all': 77, 'fail': 39, 'skip': 0, 'error': 3, 'runtime': '36.32 S', 'begin_time': '2022-12-27 18:30:32', 'pass_rate': '45.45'}, {'success': 35, 'all': 77, 'fail': 42, 'skip': 0, 'error': 0, 'runtime': '73.32 S', 'begin_time': '2022-12-27 18:32:59', 'pass_rate': '45.45'}, {'success': 63, 'all': 77, 'fail': 14, 'skip': 0, 'error': 0, 'runtime': '66.47 S', 'begin_time': '2022-12-28 09:43:06', 'pass_rate': '81.82'}, {'success': 67, 'all': 77, 'fail': 10, 'skip': 0, 'error': 0, 'runtime': '51.57 S', 'begin_time': '2022-12-28 09:53:52', 'pass_rate': '87.01'}, {'success': 4, 'all': 5, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '7.77 S', 'begin_time': '2022-12-28 10:21:49', 'pass_rate': '80.00'}, {'success': 68, 'all': 77, 'fail': 9, 'skip': 0, 'error': 0, 'runtime': '57.32 S', 'begin_time': '2022-12-28 10:23:02', 'pass_rate': '88.31'}, {'success': 0, 'all': 5, 'fail': 5, 'skip': 0, 'error': 0, 'runtime': '8.49 S', 'begin_time': '2022-12-28 11:00:34', 'pass_rate': '0.00'}, {'success': 71, 'all': 77, 'fail': 6, 'skip': 0, 'error': 0, 'runtime': '54.60 S', 'begin_time': '2022-12-28 11:01:43', 'pass_rate': '92.21'}, {'success': 75, 'all': 77, 'fail': 2, 'skip': 0, 'error': 0, 'runtime': '47.77 S', 'begin_time': '2022-12-28 11:05:20', 'pass_rate': '97.40'}, {'success': 77, 'all': 77, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '49.33 S', 'begin_time': '2022-12-28 11:40:16', 'pass_rate': '100.00'}, {'success': 76, 'all': 77, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '40.79 S', 'begin_time': '2022-12-28 15:13:17', 'pass_rate': '98.70'}, {'success': 77, 'all': 77, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '41.11 S', 'begin_time': '2022-12-28 15:18:51', 'pass_rate': '100.00'}, {'success': 77, 'all': 77, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '40.24 S', 'begin_time': '2022-12-28 15:21:34', 'pass_rate': '100.00'}, {'success': 76, 'all': 77, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '40.87 S', 'begin_time': '2022-12-28 15:23:06', 'pass_rate': '98.70'}, {'success': 75, 'all': 77, 'fail': 2, 'skip': 0, 'error': 0, 'runtime': '41.54 S', 'begin_time': '2022-12-28 15:24:48', 'pass_rate': '97.40'}, {'success': 75, 'all': 77, 'fail': 2, 'skip': 0, 'error': 0, 'runtime': '42.31 S', 'begin_time': '2022-12-28 15:28:12', 'pass_rate': '97.40'}, {'success': 75, 'all': 77, 'fail': 2, 'skip': 0, 'error': 0, 'runtime': '40.92 S', 'begin_time': '2022-12-28 15:33:51', 'pass_rate': '97.40'}, {'success': 75, 'all': 77, 'fail': 2, 'skip': 0, 'error': 0, 'runtime': '42.46 S', 'begin_time': '2022-12-28 15:35:37', 'pass_rate': '97.40'}, {'success': 75, 'all': 77, 'fail': 2, 'skip': 0, 'error': 0, 'runtime': '42.98 S', 'begin_time': '2022-12-28 15:39:15', 'pass_rate': '97.40'}, {'success': 75, 'all': 77, 'fail': 2, 'skip': 0, 'error': 0, 'runtime': '41.36 S', 'begin_time': '2022-12-28 15:40:57', 'pass_rate': '97.40'}, {'success': 75, 'all': 77, 'fail': 2, 'skip': 0, 'error': 0, 'runtime': '41.38 S', 'begin_time': '2022-12-28 15:42:55', 'pass_rate': '97.40'}, {'success': 75, 'all': 77, 'fail': 2, 'skip': 0, 'error': 0, 'runtime': '40.45 S', 'begin_time': '2022-12-28 15:44:25', 'pass_rate': '97.40'}, {'success': 75, 'all': 77, 'fail': 2, 'skip': 0, 'error': 0, 'runtime': '40.97 S', 'begin_time': '2022-12-28 15:46:12', 'pass_rate': '97.40'}, {'success': 73, 'all': 77, 'fail': 4, 'skip': 0, 'error': 0, 'runtime': '42.81 S', 'begin_time': '2022-12-28 15:47:07', 'pass_rate': '94.81'}, {'success': 77, 'all': 77, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '39.53 S', 'begin_time': '2022-12-28 15:50:11', 'pass_rate': '100.00'}, {'success': 74, 'all': 77, 'fail': 3, 'skip': 0, 'error': 0, 'runtime': '43.91 S', 'begin_time': '2022-12-28 16:12:34', 'pass_rate': '96.10'}, {'success': 74, 'all': 77, 'fail': 3, 'skip': 0, 'error': 0, 'runtime': '42.36 S', 'begin_time': '2022-12-28 16:13:35', 'pass_rate': '96.10'}, {'success': 74, 'all': 77, 'fail': 3, 'skip': 0, 'error': 0, 'runtime': '42.94 S', 'begin_time': '2022-12-28 16:14:59', 'pass_rate': '96.10'}, {'success': 77, 'all': 77, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '46.91 S', 'begin_time': '2022-12-28 16:25:35', 'pass_rate': '100.00'}, {'success': 77, 'all': 77, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '40.87 S', 'begin_time': '2022-12-28 16:33:19', 'pass_rate': '100.00'}, {'success': 77, 'all': 77, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '39.74 S', 'begin_time': '2022-12-28 16:39:59', 'pass_rate': '100.00'}, {'success': 77, 'all': 77, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '47.71 S', 'begin_time': '2022-12-28 16:41:45', 'pass_rate': '100.00'}, {'success': 75, 'all': 77, 'fail': 2, 'skip': 0, 'error': 0, 'runtime': '41.14 S', 'begin_time': '2022-12-28 16:46:12', 'pass_rate': '97.40'}, {'success': 77, 'all': 77, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '39.60 S', 'begin_time': '2022-12-28 17:10:55', 'pass_rate': '100.00'}, {'success': 76, 'all': 77, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '44.19 S', 'begin_time': '2022-12-28 17:37:41', 'pass_rate': '98.70'}, {'success': 77, 'all': 77, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '42.35 S', 'begin_time': '2022-12-28 17:38:44', 'pass_rate': '100.00'}, {'success': 19, 'all': 19, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '14.00 S', 'begin_time': '2022-12-28 21:58:24', 'pass_rate': '100.00'}, {'success': 11, 'all': 11, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '11.19 S', 'begin_time': '2022-12-28 22:00:20', 'pass_rate': '100.00'}, {'success': 23, 'all': 23, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '10.85 S', 'begin_time': '2022-12-28 22:02:52', 'pass_rate': '100.00'}, {'success': 15, 'all': 15, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '7.90 S', 'begin_time': '2022-12-28 22:05:34', 'pass_rate': '100.00'}, {'success': 77, 'all': 77, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '41.16 S', 'begin_time': '2022-12-29 10:31:09', 'pass_rate': '100.00'}, {'success': 77, 'all': 77, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '41.76 S', 'begin_time': '2022-12-29 11:06:47', 'pass_rate': '100.00'}, {'success': 77, 'all': 77, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '43.37 S', 'begin_time': '2022-12-29 11:36:25', 'pass_rate': '100.00'}, {'success': 0, 'all': 0, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '1.41 S', 'begin_time': '2022-12-29 13:47:58', 'pass_rate': 0}, {'success': 0, 'all': 1, 'fail': 0, 'skip': 0, 'error': 1, 'runtime': '0.94 S', 'begin_time': '2022-12-29 13:48:47', 'pass_rate': '0.00'}, {'success': 0, 'all': 1, 'fail': 0, 'skip': 0, 'error': 1, 'runtime': '0.94 S', 'begin_time': '2022-12-29 13:49:44', 'pass_rate': '0.00'}, {'success': 8, 'all': 10, 'fail': 2, 'skip': 0, 'error': 0, 'runtime': '4.75 S', 'begin_time': '2022-12-29 13:51:43', 'pass_rate': '80.00'}, {'success': 9, 'all': 10, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '4.52 S', 'begin_time': '2022-12-29 13:53:28', 'pass_rate': '90.00'}, {'success': 5, 'all': 5, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '1.63 S', 'begin_time': '2022-12-29 13:58:16', 'pass_rate': '100.00'}, {'success': 0, 'all': 1, 'fail': 0, 'skip': 0, 'error': 1, 'runtime': '1.02 S', 'begin_time': '2022-12-29 14:03:56', 'pass_rate': '0.00'}, {'success': 9, 'all': 10, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '4.69 S', 'begin_time': '2022-12-29 14:06:30', 'pass_rate': '90.00'}, {'success': 0, 'all': 1, 'fail': 0, 'skip': 0, 'error': 1, 'runtime': '0.01 S', 'begin_time': '2022-12-29 14:11:02', 'pass_rate': '0.00'}, {'success': 8, 'all': 10, 'fail': 1, 'skip': 0, 'error': 1, 'runtime': '4.29 S', 'begin_time': '2022-12-29 14:11:56', 'pass_rate': '80.00'}, {'success': 9, 'all': 10, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '6.62 S', 'begin_time': '2022-12-29 14:13:24', 'pass_rate': '90.00'}, {'success': 9, 'all': 10, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '6.26 S', 'begin_time': '2022-12-29 14:15:09', 'pass_rate': '90.00'}, {'success': 9, 'all': 10, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '6.22 S', 'begin_time': '2022-12-29 14:19:08', 'pass_rate': '90.00'}, {'success': 83, 'all': 84, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '47.59 S', 'begin_time': '2022-12-29 14:20:20', 'pass_rate': '98.81'}, {'success': 83, 'all': 84, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '47.76 S', 'begin_time': '2022-12-29 14:35:17', 'pass_rate': '98.81'}, {'success': 81, 'all': 84, 'fail': 3, 'skip': 0, 'error': 0, 'runtime': '47.89 S', 'begin_time': '2022-12-29 15:32:18', 'pass_rate': '96.43'}, {'success': 82, 'all': 84, 'fail': 2, 'skip': 0, 'error': 0, 'runtime': '50.49 S', 'begin_time': '2022-12-29 17:06:12', 'pass_rate': '97.62'}, {'success': 82, 'all': 84, 'fail': 2, 'skip': 0, 'error': 0, 'runtime': '54.94 S', 'begin_time': '2022-12-29 17:43:04', 'pass_rate': '97.62'}, {'success': 9, 'all': 10, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '6.58 S', 'begin_time': '2022-12-29 17:51:39', 'pass_rate': '90.00'}, {'success': 83, 'all': 84, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '48.80 S', 'begin_time': '2022-12-29 17:52:42', 'pass_rate': '98.81'}, {'success': 83, 'all': 84, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '47.63 S', 'begin_time': '2022-12-29 17:54:56', 'pass_rate': '98.81'}, {'success': 83, 'all': 84, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '47.44 S', 'begin_time': '2022-12-29 17:56:51', 'pass_rate': '98.81'}, {'success': 90, 'all': 91, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '50.78 S', 'begin_time': '2022-12-29 18:06:22', 'pass_rate': '98.90'}, {'success': 1, 'all': 2, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '5.88 S', 'begin_time': '2022-12-30 13:53:38', 'pass_rate': '50.00'}, {'success': 1, 'all': 2, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '5.85 S', 'begin_time': '2022-12-30 13:53:54', 'pass_rate': '50.00'}, {'success': 0, 'all': 2, 'fail': 0, 'skip': 0, 'error': 2, 'runtime': '5.14 S', 'begin_time': '2022-12-30 14:03:29', 'pass_rate': '0.00'}, {'success': 1, 'all': 2, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '6.51 S', 'begin_time': '2022-12-30 14:05:52', 'pass_rate': '50.00'}, {'success': 9, 'all': 30, 'fail': 14, 'skip': 0, 'error': 7, 'runtime': '14.13 S', 'begin_time': '2022-12-30 15:04:47', 'pass_rate': '30.00'}, {'success': 9, 'all': 30, 'fail': 14, 'skip': 0, 'error': 7, 'runtime': '13.47 S', 'begin_time': '2022-12-30 15:10:08', 'pass_rate': '30.00'}, {'success': 13, 'all': 30, 'fail': 10, 'skip': 0, 'error': 7, 'runtime': '13.12 S', 'begin_time': '2022-12-30 15:19:55', 'pass_rate': '43.33'}, {'success': 13, 'all': 30, 'fail': 10, 'skip': 0, 'error': 7, 'runtime': '13.59 S', 'begin_time': '2022-12-30 15:23:43', 'pass_rate': '43.33'}, {'success': 14, 'all': 30, 'fail': 16, 'skip': 0, 'error': 0, 'runtime': '15.90 S', 'begin_time': '2022-12-30 15:31:30', 'pass_rate': '46.67'}, {'success': 4, 'all': 30, 'fail': 26, 'skip': 0, 'error': 0, 'runtime': '13.36 S', 'begin_time': '2022-12-30 15:53:15', 'pass_rate': '13.33'}, {'success': 97, 'all': 121, 'fail': 24, 'skip': 0, 'error': 0, 'runtime': '97.81 S', 'begin_time': '2022-12-30 15:59:28', 'pass_rate': '80.17'}, {'success': 9, 'all': 30, 'fail': 21, 'skip': 0, 'error': 0, 'runtime': '19.76 S', 'begin_time': '2022-12-30 16:21:24', 'pass_rate': '30.00'}, {'success': 9, 'all': 30, 'fail': 21, 'skip': 0, 'error': 0, 'runtime': '16.73 S', 'begin_time': '2022-12-30 16:23:19', 'pass_rate': '30.00'}, {'success': 9, 'all': 30, 'fail': 21, 'skip': 0, 'error': 0, 'runtime': '12.78 S', 'begin_time': '2022-12-30 16:25:42', 'pass_rate': '30.00'}, {'success': 99, 'all': 121, 'fail': 22, 'skip': 0, 'error': 0, 'runtime': '67.08 S', 'begin_time': '2022-12-30 17:11:04', 'pass_rate': '81.82'}, {'success': 9, 'all': 30, 'fail': 21, 'skip': 0, 'error': 0, 'runtime': '12.29 S', 'begin_time': '2022-12-30 17:21:00', 'pass_rate': '30.00'}, {'success': 24, 'all': 30, 'fail': 6, 'skip': 0, 'error': 0, 'runtime': '18.88 S', 'begin_time': '2022-12-30 17:35:31', 'pass_rate': '80.00'}, {'success': 27, 'all': 30, 'fail': 3, 'skip': 0, 'error': 0, 'runtime': '15.16 S', 'begin_time': '2022-12-30 17:39:14', 'pass_rate': '90.00'}, {'success': 119, 'all': 121, 'fail': 2, 'skip': 0, 'error': 0, 'runtime': '69.70 S', 'begin_time': '2022-12-30 18:34:27', 'pass_rate': '98.35'}, {'success': 118, 'all': 121, 'fail': 2, 'skip': 0, 'error': 1, 'runtime': '62.75 S', 'begin_time': '2022-12-30 18:37:38', 'pass_rate': '97.52'}, {'success': 21, 'all': 32, 'fail': 0, 'skip': 0, 'error': 11, 'runtime': '94.84 S', 'begin_time': '2022-12-30 18:39:42', 'pass_rate': '65.62'}, {'success': 118, 'all': 121, 'fail': 2, 'skip': 0, 'error': 1, 'runtime': '63.49 S', 'begin_time': '2022-12-30 18:49:32', 'pass_rate': '97.52'}, {'success': 117, 'all': 121, 'fail': 2, 'skip': 0, 'error': 2, 'runtime': '60.90 S', 'begin_time': '2022-12-30 18:57:05', 'pass_rate': '96.69'}, {'success': 119, 'all': 121, 'fail': 2, 'skip': 0, 'error': 0, 'runtime': '61.76 S', 'begin_time': '2022-12-30 18:59:07', 'pass_rate': '98.35'}, {'success': 29, 'all': 30, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '16.23 S', 'begin_time': '2022-12-30 19:03:57', 'pass_rate': '96.67'}, {'success': 118, 'all': 121, 'fail': 3, 'skip': 0, 'error': 0, 'runtime': '77.36 S', 'begin_time': '2022-12-30 19:12:30', 'pass_rate': '97.52'}, {'success': 120, 'all': 121, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '64.02 S', 'begin_time': '2023-01-03 09:58:12', 'pass_rate': '99.17'}, {'success': 29, 'all': 31, 'fail': 2, 'skip': 0, 'error': 0, 'runtime': '19.17 S', 'begin_time': '2023-01-03 14:51:07', 'pass_rate': '93.55'}, {'success': 1, 'all': 1, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '6.57 S', 'begin_time': '2023-01-03 16:44:14', 'pass_rate': '100.00'}, {'success': 120, 'all': 123, 'fail': 2, 'skip': 0, 'error': 1, 'runtime': '72.88 S', 'begin_time': '2023-01-04 14:33:09', 'pass_rate': '97.56'}, {'success': 121, 'all': 122, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '69.55 S', 'begin_time': '2023-01-04 14:37:25', 'pass_rate': '99.18'}, {'success': 121, 'all': 124, 'fail': 2, 'skip': 0, 'error': 1, 'runtime': '69.43 S', 'begin_time': '2023-01-04 14:51:24', 'pass_rate': '97.58'}, {'success': 4, 'all': 29, 'fail': 1, 'skip': 0, 'error': 24, 'runtime': '26.23 S', 'begin_time': '2023-01-04 15:56:34', 'pass_rate': '13.79'}, {'success': 10, 'all': 29, 'fail': 19, 'skip': 0, 'error': 0, 'runtime': '39.22 S', 'begin_time': '2023-01-04 15:58:49', 'pass_rate': '34.48'}, {'success': 12, 'all': 25, 'fail': 13, 'skip': 0, 'error': 0, 'runtime': '29.73 S', 'begin_time': '2023-01-04 16:03:38', 'pass_rate': '48.00'}, {'success': 133, 'all': 147, 'fail': 14, 'skip': 0, 'error': 0, 'runtime': '100.91 S', 'begin_time': '2023-01-04 16:05:00', 'pass_rate': '90.48'}, {'success': 133, 'all': 147, 'fail': 14, 'skip': 0, 'error': 0, 'runtime': '95.05 S', 'begin_time': '2023-01-04 16:08:59', 'pass_rate': '90.48'}, {'success': 31, 'all': 31, 'fail': 0, 'skip': 0, 'error': 0, 'runtime': '15.34 S', 'begin_time': '2023-01-04 16:38:21', 'pass_rate': '100.00'}, {'success': 134, 'all': 147, 'fail': 13, 'skip': 0, 'error': 0, 'runtime': '92.04 S', 'begin_time': '2023-01-04 16:39:21', 'pass_rate': '91.16'}, {'success': 135, 'all': 147, 'fail': 12, 'skip': 0, 'error': 0, 'runtime': '98.78 S', 'begin_time': '2023-01-04 16:55:38', 'pass_rate': '91.84'}, {'success': 17, 'all': 25, 'fail': 8, 'skip': 0, 'error': 0, 'runtime': '22.40 S', 'begin_time': '2023-01-04 17:01:15', 'pass_rate': '68.00'}, {'success': 17, 'all': 25, 'fail': 8, 'skip': 0, 'error': 0, 'runtime': '28.06 S', 'begin_time': '2023-01-04 17:48:20', 'pass_rate': '68.00'}, {'success': 18, 'all': 25, 'fail': 7, 'skip': 0, 'error': 0, 'runtime': '25.34 S', 'begin_time': '2023-01-04 17:54:04', 'pass_rate': '72.00'}, {'success': 18, 'all': 25, 'fail': 6, 'skip': 0, 'error': 1, 'runtime': '20.50 S', 'begin_time': '2023-01-04 17:55:48', 'pass_rate': '72.00'}, {'success': 18, 'all': 25, 'fail': 7, 'skip': 0, 'error': 0, 'runtime': '21.54 S', 'begin_time': '2023-01-04 17:58:17', 'pass_rate': '72.00'}, {'success': 18, 'all': 25, 'fail': 6, 'skip': 0, 'error': 1, 'runtime': '20.76 S', 'begin_time': '2023-01-04 18:00:04', 'pass_rate': '72.00'}, {'success': 18, 'all': 25, 'fail': 6, 'skip': 0, 'error': 1, 'runtime': '22.06 S', 'begin_time': '2023-01-04 18:01:04', 'pass_rate': '72.00'}, {'success': 0, 'all': 1, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '4.37 S', 'begin_time': '2023-01-04 18:03:58', 'pass_rate': '0.00'}, {'success': 0, 'all': 22, 'fail': 1, 'skip': 0, 'error': 21, 'runtime': '2.78 S', 'begin_time': '2023-01-04 18:04:32', 'pass_rate': '0.00'}, {'success': 0, 'all': 22, 'fail': 1, 'skip': 0, 'error': 21, 'runtime': '5.08 S', 'begin_time': '2023-01-04 18:04:48', 'pass_rate': '0.00'}, {'success': 0, 'all': 22, 'fail': 1, 'skip': 0, 'error': 21, 'runtime': '2.76 S', 'begin_time': '2023-01-04 18:05:29', 'pass_rate': '0.00'}, {'success': 0, 'all': 22, 'fail': 1, 'skip': 0, 'error': 21, 'runtime': '17.05 S', 'begin_time': '2023-01-04 18:05:48', 'pass_rate': '0.00'}, {'success': 0, 'all': 22, 'fail': 1, 'skip': 0, 'error': 21, 'runtime': '3.09 S', 'begin_time': '2023-01-04 18:07:06', 'pass_rate': '0.00'}, {'success': 0, 'all': 22, 'fail': 1, 'skip': 0, 'error': 21, 'runtime': '2.75 S', 'begin_time': '2023-01-04 18:07:44', 'pass_rate': '0.00'}, {'success': 0, 'all': 22, 'fail': 1, 'skip': 0, 'error': 21, 'runtime': '2.96 S', 'begin_time': '2023-01-04 18:08:17', 'pass_rate': '0.00'}, {'success': 0, 'all': 1, 'fail': 1, 'skip': 0, 'error': 0, 'runtime': '7.34 S', 'begin_time': '2023-01-04 18:14:28', 'pass_rate': '0.00'}, {'success': 19, 'all': 25, 'fail': 6, 'skip': 0, 'error': 0, 'runtime': '12.06 S', 'begin_time': '2023-01-04 18:17:02', 'pass_rate': '76.00'}, {'success': 19, 'all': 25, 'fail': 6, 'skip': 0, 'error': 0, 'runtime': '11.88 S', 'begin_time': '2023-01-04 18:18:52', 'pass_rate': '76.00'}, {'success': 19, 'all': 25, 'fail': 6, 'skip': 0, 'error': 0, 'runtime': '11.68 S', 'begin_time': '2023-01-04 18:20:14', 'pass_rate': '76.00'}, {'success': 19, 'all': 25, 'fail': 6, 'skip': 0, 'error': 0, 'runtime': '12.14 S', 'begin_time': '2023-01-04 18:22:05', 'pass_rate': '76.00'}, {'success': 143, 'all': 147, 'fail': 4, 'skip': 0, 'error': 0, 'runtime': '79.46 S', 'begin_time': '2023-01-05 10:13:52', 'pass_rate': '97.28'}, {'success': 142, 'all': 147, 'fail': 5, 'skip': 0, 'error': 0, 'runtime': '74.37 S', 'begin_time': '2023-01-05 10:49:16', 'pass_rate': '96.60'}, {'success': 141, 'all': 147, 'fail': 4, 'skip': 0, 'error': 2, 'runtime': '80.52 S', 'begin_time': '2023-01-05 11:15:17', 'pass_rate': '95.92'}];

    var passRate = [];
    var dTime = [];
    history.forEach(function (item, index, array) {
        passRate.push(item.pass_rate);
        dTime.push(item.begin_time)
    });
    if (passRate.length === 1) {
        passRate.unshift(0);
        dTime.unshift(0)
    }

    function char01() {
        let myChart = echarts.init(document.getElementById('char1'));
        let option = {
            color: ['#28a745', '#ffc107', '#dc3545', '#17a2b8'],
            tooltip: {
                trigger: 'item',
                formatter: '{a} <br/>{b}: {c} ({d}%)',
                backgroundColor: 'rgba(3, 14, 70, 0.5)',
                borderColor: '#333',
                textStyle: {
                    color: '#fff',
                    fontSize: "13"
                },
            },
            legend: {
                bottom: "0%",
                // 小图标的宽度和高度
                itemWidth: 10,
                itemHeight: 10,
                data: ['通过', '失败', '错误', '跳过'],
                textStyle: {
                    color: "rgba(255,255,255,.5)",
                    fontSize: "12"
                },
            },
            series: [
                {
                    name: '测试结果',
                    type: 'pie',
                    radius: ['50%', '70%'],
                    avoidLabelOverlap: false,
                    label: {
                        show: false,
                        position: 'center'
                    },
                    emphasis: {
                        label: {
                            show: true,
                            fontSize: '20',
                            fontWeight: 'bold',
                            color: '#fff',
                        }
                    },
                    labelLine: {
                        show: false
                    },
                    data: [
                        {value: resulte.success, name: '通过'},
                        {value: resulte.fail, name: '失败'},
                        {value: resulte.error, name: '错误'},
                        {value: resulte.skip, name: '跳过'}
                    ]
                }
            ]
        };
        myChart.setOption(option)

    }

    char01();

    //    大图
    function char02() {

        // 基于准备好的dom,初始化echarts实例
        let myChart = echarts.init(document.getElementById("char2"));
        // 2. 指定配置和数据
        option = {
            tooltip: {
                trigger: 'axis',
                formatter: '{a} <br/>{b}:  ({c}%)',
                backgroundColor: 'rgba(3, 14, 70, 0.5)',
                borderColor: '#333',
                textStyle: {
                    color: '#fff',
                    fontSize: "13"
                },
            },

            grid: {
                left: "10",
                top: "30",
                right: "10",
                bottom: "0",
                containLabel: true
            },

            xAxis: [{
                type: "category",
                boundaryGap: false,
                show: false,
                axisLabel: {
                    textStyle: {
                        color: "rgba(255,255,255,.6)",
                        fontSize: 12
                    }
                },
                axisLine: {
                    lineStyle: {
                        color: "rgba(255,255,255,.2)"
                    }
                },

                data: dTime
            },
                {
                    axisPointer: {
                        show: false
                    },
                    axisLine: {
                        show: false
                    },
                    position: "bottom",
                    offset: 20
                }
            ],

            yAxis: [{
                type: "value",
                axisTick: {
                    show: false
                },
                axisLine: {
                    lineStyle: {
                        color: "rgba(255,255,255,.1)"
                    }
                },
                axisLabel: {
                    textStyle: {
                        color: "rgba(255,255,255,.6)",
                        fontSize: 12
                    }
                },

                splitLine: {
                    lineStyle: {
                        color: "rgba(255,255,255,.1)"
                    }
                }
            }],
            series: [{
                name: "通过率",
                type: "line",
                smooth: true,
                symbol: "circle",
                symbolSize: 5,
                showSymbol: true,
                lineStyle: {
                    normal: {
                        color: "#0184d5",
                        width: 2
                    }
                },
                areaStyle: {
                    normal: {
                        color: new echarts.graphic.LinearGradient(
                            0,
                            0,
                            0,
                            1,
                            [{
                                offset: 0,
                                color: "rgba(1, 132, 213, 0.4)"
                            },
                                {
                                    offset: 0.8,
                                    color: "rgba(1, 132, 213, 0.1)"
                                }
                            ],
                            false
                        ),
                        shadowColor: "rgba(0, 0, 0, 0.1)"
                    }
                },
                itemStyle: {
                    normal: {
                        color: "#0184d5",
                        borderColor: "rgba(221, 220, 107, .1)",
                        borderWidth: 18
                    }
                },
                data: passRate
            },
            ]
        };
        // 重新把配置好的新数据给实例对象
        myChart.setOption(option);

    }

    char02();

    function char03() {
        // 基于准备好的dom,初始化echarts实例
        let myChart = echarts.init(document.getElementById("char3"));
        var data = [resulte.success, resulte.fail, resulte.error, resulte.skip];
        var titlename = ["通过用例", "失败用例", "错误用例", "跳过用例",];
        var valdata = [resulte.all, resulte.all, resulte.all, resulte.all];
        var myColor = ['#28a745', '#ffc107', '#dc3545', '#17a2b8'];
        option = {
            //图标位置
            grid: {
                top: "10%",
                left: "22%",
                bottom: "10%"
            },
            xAxis: {
                show: false
            },
            yAxis: [{
                show: true,
                data: titlename,
                inverse: true,
                axisLine: {
                    show: false
                },
                splitLine: {
                    show: false
                },
                axisTick: {
                    show: false
                },
                axisLabel: {
                    color: "#fff",

                    rich: {
                        lg: {
                            backgroundColor: "#339911",
                            color: "#fff",
                            borderRadius: 15,
                            align: "center",
                            width: 15,
                            height: 15
                        }
                    }
                }
            },
                {
                    show: false,
                    inverse: true,
                    data: valdata,
                    axisLabel: {
                        textStyle: {
                            fontSize: 12,
                            color: "#fff"
                        }
                    },
                    axisTick: {
                        show: false
                    },
                    axisLine: {
                        show: false
                    },
                }
            ],
            series: [{
                type: "bar",
                yAxisIndex: 0,
                data: data,
                barCategoryGap: 50,
                barWidth: 18,
                itemStyle: {
                    normal: {
                        barBorderRadius: 20,
                        color: function (params) {
                            var num = myColor.length;
                            return myColor[params.dataIndex % num];
                        }
                    }
                },
                label: {
                    normal: {
                        show: true,
                        position: "right",
                        formatter: "{c}条",
                        color:"#fff",

                    }
                }
            },
                {
                    type: "bar",
                    yAxisIndex: 1,
                    barCategoryGap: 50,
                    data: valdata,
                    barWidth: 20,
                    itemStyle: {
                        normal: {
                            color: "none",
                            borderColor: "#00c1de",
                            borderWidth: 2,
                            barBorderRadius: 15
                        }
                    }
                }
            ]
        };

        // 使用刚指定的配置项和数据显示图表。
        myChart.setOption(option);
        window.addEventListener("resize", function () {
            myChart.resize();
        });
    }

    char03()

</script>


<script>
    var tbodyTr = $('tbody .case_');
    var testResult = $("#testResult");
    var testClass = $("#testClass");
    <!--    用例执行详细信息显示切换-->
    $(".btn_info").click(function () {
        $(this).parent().parent().next().toggle();

    });
    // 当选择用例类之后触发
    testClass.change(function () {
        $('.test_log').hide();
        var cls = $(this).val();
        var res = testResult.val();
        elementDisplay(cls, res);
        sort()
    });
    testResult.change(function () {
        var res = $(this).val();
        var cls = testClass.val();
        elementDisplay(cls, res);
        sort()
    });

    function elementDisplay(cls, res) {
        // 用例数据的显示
        if (cls === "所有") {
            if (res === "所有") {
                tbodyTr.has('button').show();
            } else if (res === '成功') {
                tbodyTr.hide();
                tbodyTr.has('button').has('.text-success').show()

            } else if (res === '错误') {
                tbodyTr.hide();
                tbodyTr.has('button').has('.text-danger').show()

            } else if (res === '失败') {
                tbodyTr.hide();
                tbodyTr.has('button').has('.text-warning').show()

            } else if (res === '跳过') {
                tbodyTr.hide();
                tbodyTr.has('button').has('.text-info').show()
            }
        } else {
            if (res === "所有") {
                tbodyTr.hide();
                tbodyTr.has('button').has('.' + cls + '').show()
            } else if (res === '成功') {
                tbodyTr.hide();
                tbodyTr.has('button').has('.' + cls + '').has('.text-success').show()
            } else if (res === '错误') {
                tbodyTr.hide();
                tbodyTr.has('button').has('.' + cls + '').has('.text-danger').show()
            } else if (res === '失败') {
                tbodyTr.hide();
                tbodyTr.has('button').has('.' + cls + '').has('.text-warning').show()
            } else if (res === '跳过') {
                tbodyTr.hide();
                tbodyTr.has('button').has('.' + cls + '').has('.text-info').show()
            }
        }
    }

    function sort() {
        //重新排列显示序号
        // 选择所有可以见的tr
        var visibleTr = tbodyTr.filter(":visible");

        visibleTr.each(function (index, element) {
            element.firstElementChild.innerHTML = index + 1;

        })

    }

    $('.nav-tabs li').click(function () {
        $(this).find('a').addClass('active');
        $(this).siblings().find('a').removeClass('active');
        $(this).parent().next().children('.tab-content div').eq($(this).index()).addClass('active show').siblings().removeClass('active show')
    });

</script>


</body>
</html>