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

接口测试平台代码实现49:自动异常测试-2

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

本节开始之前先感谢有同学反馈并主动过修复的一个bug:就是在某些接口的返回值中,中文会显示乱码的问题

我们找到views.py中调试层发送接口的函数

代码语言:javascript
复制
Api_send

然后看到它最后一行,就是把返回值直接给到前端的代码:

代码语言:javascript
复制
return HttpResponse(response.text)

之所以中文会出现乱码,就是在这里没有进行任何处理。所以按照如下方式修改即可解决问题:

好,回归主题,让我们继续自动异常测试功能的开发。

打开P_apis.html,找到这个div:

我们虽然已经写好了大概,但是还少了俩个按钮,一个开始测试,一个关闭。

所以给加上:

效果如下:

好的我们先简单的把关闭功能写完:

刷新测试确实可以关闭,就继续往下做。

现在我们打开div的js函数error_test,要加上自动显示该接口名称的代码:

(别忘了加上颜色)

效果如下:

然后继续,我们貌似落下了一个重要的函数,就是清除数据的初始化函数。在我们打开新的弹层时,为了不显示上一个接口的数据,所以要进行调用初始化函数。

但是这里我们要想一想,我们之前的做法是把这个div中所有的输入框全部清空即可,这样做的前提是这个div中的输入框固定且都有自己的id。

但是这个异常测试的div比较特殊,最顶部展示接口id的small标签无需清空,下面的待替换数据也永远显示默认的几个待替换数据。再下面的就是各个替换规则后自动生成的多行文本框。而不同的接口下面的这些替换具体条也完全不同,我们要做的不是清空这些多行文本框,而是要删除这些文本框。

但是删除要怎么删除呢?我们可以在自动生成的时候,给每一个文本框都加上一个name,然后删除的时候用一个循环遍历所有该name的文本框即可。但是如果真的达到几百个文本框。那么删除它们所浪费的时间必然不少。有没有简便设计呢?当然有:

就是我们直接把这个div的初始html写死,只要打开就抛弃之前一切html,直接按照写死的新html来展示即可。

我们来刷新一下 打开看看效果:

看来是成功了,但是这里写起来很麻烦么?其实很简单,我们只需要开始时候写成这样:

然后去复制html的一大段:

然后回来 把光标放在俩个引号之间:

粘贴,它就会自动换行和拼接了。

好了,本节内容到此为止,需要下载源码的同学请移步到:

接口测试平台系列 进行下载

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

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

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

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

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