接口测试

jmeter中websocket接口测试

喜欢而已 提交于 2019-12-08 13:03:34
一、 Websocket协议简介 Websocket是一个持久化的协议,相对于HTTP这种非持久的协议来说; HTTP协议 : HTTP的生命周期通过 Request 来界定,也就是一个 Request 一个 Response ,那么在 HTTP1.0 中,这次HTTP请求就结束了。 在HTTP1.1中进行了改进,使得有一个keep-alive,也就是说,在一个HTTP连接中,可以发送多个Request,接收多个Response。但是请记住 Request = Response , 在HTTP中永远是这样,也就是说一个request只能有一个response。而且这个response也是被动的,不能主动发起。 Websocket协议: WebSocket是一种双向通信协议。在建立连接后,WebSocket服务器端和客户端都能主动向对方发送或接收数据,就像Socket一样; WebSocket需要像TCP一样,先建立连接,连接成功后才能相互通信。 WebSocket只需要经过一次HTTP请求,就可以做到源源不断的信息传送了(在程序设计中,这种设计叫做回调,即:你有信息了再来通知我,而不是我傻乎乎的每次跑来问你) 二、 添加Websocket插件 在jmeter中测试websocket协议接口,需要先安装websocket插件和依赖包; 需添加的插件为:

接口测试用例设计

若如初见. 提交于 2019-12-08 01:26:04
一、接口测试的测试方案规格建议可以有如下几点: 1、需求所涉及的接口的背景描述 2、接口跟页面功能交互的关联关系 3、接口逻辑的流程图 4、接口文档定义 5、接口所涉及的缓存,以及缓存对应的key值,失效时间定义 6、接口所涉及的SQL,以及数据库表字段定义 7、接口历史功能验证(新增接口测试不需要) 8、接口涉及话单,短信,推送消息等描述 9、接口涉及的配置参数和开关等描述 10、接口设计的基本流程描述 11、接口涉及的正常用例测试点设计 12、接口涉及的异常用例测试点设计 二、页面测试用例设计 页面功能测试主要是由3大块的组成: 1.页面功能展示: 页面功能展示主要是校验一些页面的静态图片、字体、间距、排版等等之类的内容显示是否规范,具体的校验可以通过需求中的原型图比例标注进行校验。 2.页面跳转展示: 需要校验页面上所有可以点击的链接按钮是否都可以跳转到指定的页面,跳转过程中页面加载loading动画是否正确,具体的标准可以跟PD确认 3.页面逻辑校验: 页面展示的数据也是有逻辑的。(前端展示的状态需要跟后端配置的数据一致) 4.其他: 我们在做页面功能测试的时候也需要考虑一些异常的场景测试,暂时总结出来的主要包括几种: 数字,字母,符号,表情等输入校验 超长字符,最小字符长度验证 APP端和PC端同步操作时数据同步校验 网络连接中断后重新连接测试 三、页面测试用例编写

客户端GUI测试技术和自动化测试架构设计简谈

北城余情 提交于 2019-12-08 01:25:47
客户端自动化特点 客户端的自动化,通常做过的人都不是很愿意深入讨论。因为除了功能和逻辑之外,不得不面对各种界面变化,各种和环境交互,各种兼容问题以及想不到灰色地带,就算这样,也找不到太多有效的bug。然而即便如此,客户端的自动化必须去做,尤其是GUI的。它的自动化特点是: 复杂 成本高 不容易发现问题 技术要求高 架构很难通用 下面,从一些基本的东西开始一点点的讨论客户端GUI测试的一些问题和处理办法,以及自动化架构设计的一些思路。事实上就像上面说的,GUI的测试并不是为了发现bug,而是回归的一种方式,作为保证而已——它过了不能说明质量多么好,但是不过,质量肯定不达标。即使在微软内部,客户端的GUI一样不是个受欢迎的家伙,通常用来做BVT的测试(或一些重要性回归,冒烟等)。 客户端自动化简述 这里并不花过多的笔墨介绍什么是客户端,或者如何分类的种种——这些东西教材和网上的东西一坨一坨很多很多,这里可能“漫谈”的,是实际工作中,客户端和GUI自动化中可能遇到的一些底层技术,基本上原理,架构设计方法以及一些项目存在困惑,这些方面的一些处理的方法。 最早的自动化 我个人认为所谓的计算机行业的自动化,是一直跟着这个行业的发展在走,比如下面的这些: 老式计算机——CPU计算: 最早自动解决手工分配穿孔的卡片问题 内存分配任务调度:操作系统的核心就是内存和任务的自动管理 系统配置Loader

【分页查询测试】定义Dao接口

感情迁移 提交于 2019-12-06 20:17:31
本项目使用Spring Data Mongodb完成Mongodb数据库的查询,Spring Data Mongodb提供一套快捷操作 mongodb的方法。 创建Dao,继承MongoRepository,并指定实体类型和主键类型。 定义一个接口 public interface CmsPageRepository extends MongoRepository<CmsPage,String> { } 接口CmsPageRepository名字是因为要操作CmsPage集合下面的数据, Repository是固定写法继承的MongoRepository,要指定它的模型类和主键,比如这个主键是pageID,它的类型是String,所以写String。引用的这个包,里面会提供很多固定好的方法,可以直接拿来用。 来源: https://www.cnblogs.com/JS314/p/11997342.html

python接口测试之requests(session,cookie)

久未见 提交于 2019-12-06 18:30:48
1、为什么要session和cookie 因为HTTP是一种无状态的响应,当我们登录一个页面之后,本来需要做其他操作,但是登录进来后,因为服务器不知道我是谁了,又得让我重新登录。为解决这样的问题,需要两个机制,那就是session和cookie。 cookie用于判断两个请求是否来自于同一个浏览器,例如:保持用户登录 第一次:浏览器发送请求,无cookie 第二次:服务器响应,产生sessionID并发给浏览器,浏览器保存到cookie中,存在周期为浏览器关闭时 第三次:浏览器再次请求,带上cookie 第四次:服务器解析cookie,返回响应信息 第一次:浏览器发送请求,服务器完成认证,存储session,可以记录客户端在同一个会话期间的一些操作记录 第二次:浏览器再次请求,带上cookie,服务器对session进行解析,给出HTTP响应 来源: CSDN 作者: MLF_TEST 链接: https://blog.csdn.net/weixin_43579528/article/details/87812196

JAVA泛型,超详细

只愿长相守 提交于 2019-12-06 18:25:00
本文转载,转载出处不详 概述 泛型在java中有很重要的地位,在面向对象编程及各种设计模式中有非常广泛的应用。 什么是泛型?为什么要使用泛型? 泛型,即“参数化类型”。一提到参数,最熟悉的就是定义方法时有形参,然后调用此方法时传递实参。那么参数化类型怎么理解呢? 顾名思义,就是将类型由原来的具体的类型参数化,类似于方法中的变量参数,此时类型也定义成参数形式(可以称之为类型形参), 然后在使用/调用时传入具体的类型(类型实参)。 泛型的本质是为了参数化类型(在不创建新的类型的情况下,通过泛型指定的不同类型来控制形参具体限制的类型)。也就是说在泛型使用过程中, 操作的数据类型被指定为一个参数,这种参数类型可以用在类、接口和方法中,分别被称为泛型类、泛型接口、泛型方法。 一个栗子 一个被举了无数次的例子: List arrayList =new ArrayList(); arrayList.add("aaaa"); arrayList.add(100);for(inti = 0; i< arrayList.size();i++){ String item = (String)arrayList.get(i); Log.d("泛型测试","item = " + item); } 毫无疑问,程序的运行结果会以崩溃结束: java.lang.ClassCastException: java

Now直播应用的后台服务器性能测试实践

大憨熊 提交于 2019-12-06 18:23:13
版权声明:本文由Oliver原创文章,转载请注明出处: 文章原文链接: https://www.qcloud.com/community/article/208 来源:腾云阁 https://www.qcloud.com/community 作者介绍:Oliver,腾讯服务器性能测试团队产品经理。 直播的火爆带来了海量的用户,也带来了海量的服务器并发。本文分析了目前直播行业存在的难点,从腾讯目前的新直播产品——NOW直播出发, 了解直播应用背后的那些事。 直播,突然成为了中国互联网的一个最流行的词汇。在《2016-2020年中国网络直播行业深度调研及投资前景预测报告》中的数据表示,2015年,全国在线直播平台数量接近200家,其中网络直播的市场规模约为90亿,网络直播平台用户数量已经达到2亿,大型直播平台每日高峰时段同时在线人数接近400万,同时直播的房间数量超过3000个,更可怕的是,这一数据还在以极快的速度向上攀升。 直播平台用户数量2亿是什么概念?2016版的《微信数据化报告》中提到,目前微信用户达到了6.97亿人,也就是说,在你身边同龄的3-4个朋友之中,很有可能有一个人是网络直播的用户。 直播火没火,看用户就知道,但是直播有没有前景,就要看科技巨头们对它的态度了。 国外的Facebook推出的Facebook live给其用户带来的全新的体验,不仅增加了用户粘性

测试文件上传接口

柔情痞子 提交于 2019-12-06 14:20:23
import requests url = "http://xxxx/api/upload/opinion" url_login = "http://xxxx/api/auth/login" data = {"username":"test3","password":"123456"} res = requests.post(url=url_login,data=data) token = res.json()['data']['token'] headers = {"Authorization":"bearer %s" % token, } file1 = open('20191113.docx','rb') files = {'file':('20191113.docx',file1,'application/vnd.openxmlformats-officedocument.wordprocessingml.document')}"""application/vnd.openxmlformats-officedocument.wordprocessingml.document是抓包时得到""" data1 = {"category":"专项工程", "name":"载人空间站系统", "stage":"工程研制", "version":"V20191025-144234

jmeter微信公众号接口测试实例

我们两清 提交于 2019-12-06 13:51:12
线程组 HTTP Cookie 管理器 HTTP 请求默认值 用户定义的变量 察看结果树 HTTP请求 响应断言 正则表达式提取器 线程组 HTTP Cookie 管理器 HTTP 请求默认值 用户定义的变量 获取Access_token HTTP请求 响应断言 正则表达式提取器 创建标签 HTTP请求 响应断言 正则表达式提取器 编辑标签 HTTP请求 响应断言 查询标签 HTTP请求 响应断言 删除标签 HTTP请求 响应断言 察看结果树 来源: https://www.cnblogs.com/TD1900/p/11987482.html

接口测试-mock测试:实例

拟墨画扇 提交于 2019-12-06 12:15:14
实际事例 1.get接口实例 一段json数据,json的格式 [{ "key1": "values", "key2": "values" }, { "key1": "values", "key2": "values" } ] 代码实例 { "description": "模拟获取某个功能的具体信息接口,get请求和响应,返回json格式数据", "request": { "method": "get", "url": "/book_info", "queries": { "bookname": "软件测试", "checkstatus": "on" } }, "response": { "json": { "error_code": 0, "reason": "successed", "name": "软件测试", "price": "666" }, "status": 200 } } 2.post接口实例 代码实例 { "description": "模拟xx接口,post_form请求和响应,入参是form形式,返回是json数据", "request": { "headers": { "content-type": "application/x-www-form-urlencoded" }, "method": "post", "url": "/login", "forms