前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >接口测试平台代码实现98:全局域名-5

接口测试平台代码实现98:全局域名-5

作者头像
我去热饭
发布2022-05-19 09:31:20
5330
发布2022-05-19 09:31:20
举报
文章被收录于专栏:测试开发干货

之前一节我们迅速 复制粘贴搞定了 全局域名的:

models.py,urls.py,views.py。

所以本节我们要搞定的是P_apis.html中的部分了。

首先看看我们现在的html页面的结构,全部收缩,看的直观一些:

如上图,我们开辟一块空间,用来存放全局域名,整体内容,基本和全局请求头类似,所以我们依然是复制粘贴,然后改各个标签的id和内部其他字段数据。

当然不要忘了 给这个按钮onclick属性连接上我们的打开host设置框的函数:

(经常有同学反馈找不到图里的行数,其实我们可以通过ctrl+f 来搜索其中关键字。)

需要注意的是,请求头是 name = key : value ,每行三个框。

而域名是 name = host ,每行俩个框。

复制完后,改动的时候注意要一行一行的改。千万不要漏掉,整个过程要保持大脑非常清晰,虽然几乎全都是把header改成host,但是也要注意其他地方。当然,style内的样式属性基本不用改。但是注意,有些是host,有些是hosts。而且要保持好心态,因为一次性改动这么大一堆代码,很难做到一遍成,一次通。

改完后代码如下:(注意host输入框的宽度调整为了70%)

代码语言:javascript
复制
{# 全局域名 #}

<div id="project_host_div" style="display: none;border-radius:5px;width: 70%;height: 70%;
position: absolute;left: 15%;top: 15%;box-shadow: 4px 4px 8px grey;
padding-left: 10px;background-color: white">
    <div class="btn-group" style="float: right">
        <button onclick="project_host_save()" type="button" class="btn btn-success">保存</button>
        <button onclick="project_host_close()" type="button" class="btn btn-default">取消</button>
    </div>
    <h4>请设置本项目的全局公共请求头:</h4>
    <div id="host_plan">
        {% for i in project_host %}
            <input type="text" name="host_id" value="{{ i.id }}" style="display: none;">
            <input type="text" name="host_name" value="{{ i.name }}" style="width: 20%;margin-top: 3px" placeholder="name"> = "
            <input type="text" name="host_host" value="{{ i.host }}" style="width: 70%" placeholder="host"> "
            <br>
        {% endfor %}
    </div>
    <br>
    <button onclick="add_project_host()">新增</button>

</div>
<script>
    function project_host_div_show() {
        document.getElementById('project_host_div').style.display = 'block';
    }
    function project_host_close() {
        document.location.reload()
    }
    function project_host_save() {
        var names = document.getElementsByName('host_name');
        var hosts = document.getElementsByName('host_host');
        var ids = document.getElementsByName('host_id');
        var req_names= [];
        var req_hosts=[];
        var req_ids=[];
        for(var i=0;i<names.length;i++){
            req_names.push(names[i].value);
            req_hosts.push(hosts[i].value);
            req_ids.push(ids[i].value)

        }
        $.get('/save_project_host/',{
            "project_id":"{{ project.id }}",
            "req_names":req_names.toString(),
            "req_hosts":req_hosts.toString(),
            "req_ids":req_ids.toString(),
        },function (ret) {
            document.location.reload();
        })
    }
    function add_project_host() {
        var host_plan = document.getElementById('host_plan');
        var i0 = document.createElement('input');
        i0.name = 'host_id';
        i0.value = 'new';
        i0.style.display ='none';
        var i1 = document.createElement('input');
        i1.style='width: 20%;margin-top: 3px';
        i1.placeholder='name';
        i1.name='host_name';
        var i2 = document.createElement('input');
        i2.style='width: 70%';
        i2.placeholder='host';
        i2.name='host_host';
        host_plan.appendChild(i0);
        host_plan.appendChild(i1);
        host_plan.appendChild(document.createTextNode(' = " '));
        host_plan.appendChild(i2);
        host_plan.appendChild(document.createTextNode(' "'));
        host_plan.appendChild(document.createElement("br"));
    }
</script>

然后我们刷新页面,进行各种测试。我这边发现测试全部正常:

好,本节内容到此结束。

下节我们去把这个全局变量-域名插入到接口库/用例库 的使用中的前后端开发。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-12-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 测试开发干货 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档