接口测试

Jmeter接口自动化培训

断了今生、忘了曾经 提交于 2019-12-05 06:26:51
课程前提 速成班,讲的不会非常深,每个人基础不一样,但是实现接口自动化没有问题,因为jmeter更多的用来做性能测试。当然有兴趣我们也可以穿插一点 课程基本大纲 接口基础概念 部署本地测试环境(使用django创建接口) mysql python django 也会教一点,不过不是重点,如果不想学代码直接测试我写的接口就行。 使用jmeter测试自己开发接口 持续集成 重点:讲一点我在工作中的关于测试技能方面的经验~~~~~ 关于收费:99 不满意退款 关于时间 速成班,课程总时间10个小时左右。2周讲完。 最后~凑齐10人开班 课程中问题或者引申的问题不能说百分百解决,但群主一定会尽力解决。有兴趣看下面加群方式~~~ 最后的最后推荐阅读我的 软件测试技能提升自学还是培训? 软件测试汪简书地址 软件测试汪博客地址 欢迎关注微信公众号:软件测试汪。软件测试交流群:809111560 转载请注意出处,谢谢合作 来源: https://www.cnblogs.com/suim1218/p/11910357.html

关于python实现接口测试自动化的实践

六月ゝ 毕业季﹏ 提交于 2019-12-05 06:25:14
亲测们,项目一开始直接使用jmeter 实现了接口自动化的测试需求(后面有空的话给亲们解说),然而计划赶不上变化啊,放着好好地方便不用,非得来点硬的,用python代码实现,得唻,搞就搞,谁怕谁。 下面先介绍下我的目录层级结构,比较简单,没有大的项目那么复杂。 common里面放了一些自己封装的函数,和有一些常用的变量;token文件最主要登陆的时候保存了下参数,用来传递德纳,知识有限,还没有想到别的好方法; login里面就是测试用例; package 里面放了一个第三方模块; run里面放了执行文件和一个生成报告的文件; 今天,时间紧后面再详述,可以以自己看代码的啦,https://github.com/Jinfei920029/Interface_test_sfm1。 直接上代码罗 https://github.com/Jinfei920029/Interface_test_sfm1 来源: CSDN 作者: m0_38043408 链接: https://blog.csdn.net/m0_38043408/article/details/80505585

如何简单实现接口自动化测试(基于 python)

微笑、不失礼 提交于 2019-12-05 06:24:30
GitChat 作者:饿了么技术社区 原文: 如何简单实现接口自动化测试(基于 python) 关注微信公众号:GitChat 技术杂谈 ,这里一本正经的讲技术 一、简介 本文从一个简单的登录接口测试入手,一步步调整优化接口调用姿势,然后简单讨论了一下接口测试框架的要点,最后介绍了一下我们目前正在使用的接口测试框架 pithy 。期望读者可以通过本文对接口自动化测试有一个大致的了解。 二、引言 为什么要做接口自动化测试? 在当前互联网产品迭代频繁的背景下,回归测试的时间越来越少,很难在每个迭代都对所有功能做完整回归。但接口自动化测试因其实现简单、维护成本低,容易提高覆盖率等特点,越来越受重视。 为什么要自己写框架呢? 使用requets + unittest很容易实现接口自动化测试,而且requests的api已经非常人性化,非常简单,但通过封装以后(特别是针对公司内特定接口),再加上对一些常用工具的封装,可以进一步提高业务脚本编写效率。 三、环境准备 确保本机已安装python2.7以上版本,然后安装如下库: pip install flask pip install requests 后面我们会使用flask写一个用来测试的接口,使用requests去测试。 四、测试接口准备 下面使用flask实现两个http接口,一个登录,另外一个查询详情,但需要登录后才可以

接口测试原理和基本步骤

时光怂恿深爱的人放手 提交于 2019-12-05 03:53:54
1、接口测试原理 接口测试,实际上是针对于接口做测试的。 那么接口是什么? 软件开发,既要做前端,也要做后端,并且后端是整个业务的核心,用于处理业务请求,实现具体的功能;而前端只是提供一个页面给用户看结果以及提供页面给用户做输入。所以整个业务的处理逻辑都在后端。而后端逻辑相对很复杂,所以在开发的时候,会由架构师确定接口,然后再针对这个接口实现其具体的功能。 接口也可以认为是我们要做多少事情,因为在技术层面,如果要实现登录、注册、增、删、改、查等操作,就会先设计好一个模块,说明具体实现哪些功能点,这个功能点应该有哪些输入项,有哪些方法。 这个东西就是我们所谓的接口,在java里,接口里包含属性名和方法,所有的方法都是抽象方法,只有方法名,而没有这个方法的具体实现。也就是说:我知道这是一个登录功能,但是登录怎么实现,这完全是不知道的,需要开发人员具体去实现。那么作为我们的开发人员,他就会领到一个任务去实现这个接口。比如,实现登录接口,注册接口等。 我们可以认为,虽然他是在实现登录接口、注册接口。也就相当于我们根据这个接口去实现登录功能,注册功能。所以这个接口实际上也就是后台一个具体的功能。 那么什么又是接口测试? 实际上我们所说的接口测试就是开发人员把这个接口实现了,他需要去验证这个接口的实现是否正确。 但是这是一个后台的功能,这个开发也是一个后台开发,他去验证接口的时候

什么是接口测试?怎样做接口测试?

空扰寡人 提交于 2019-12-05 02:18:24
1.什么是接口? 2.接口都有哪些类型? 3.接口的本质是什么? 4.什么是接口测试? 5.问什么要做接口测试? 6.怎样做接口测试? 7.接口测测试点是什么? 8.接口测试都要掌握哪些知识? 9.其他相关知识? 1.什么是接口? 接口测试主要用于外部系统与系统之间以及内部各个子系统之间的交互点,定义特定的交互点,然后通过这些交互点来,通过一些特殊的规则也就是协议,来进行数据之间的交互。 2.接口都有哪些类型? 接口一般分为两种:1.程序内部的接口 2.系统对外的接口 系统对外的接口:比如你要从别的网站或服务器上获取资源或信息,别人肯定不会把数据库共享给你,他只能给你提供一个他们写好的方法来获取数据,你引用他提供的接口就能使用他写好的方法,从而达到数据共享的目的。 程序内部的接口:方法与方法之间,模块与模块之间的交互,程序内部抛出的接口,比如bbs系统,有登录模块、发帖模块等等,那你要发帖就必须先登录,那么这两个模块就得有交互,它就会抛出一个接口,供内部系统进行调用。 接口的分类:1.webservice接口 2.http api接口 webService接口是走soap协议通过http传输,请求报文和返回报文都是xml格式的,我们在测试的时候都用通过工具才能进行调用,测试。 http api接口是走http协议,通过路径来区分调用的方法,请求报文都是key-value形式的

接口测试用例设计

时光毁灭记忆、已成空白 提交于 2019-12-05 01:56:14
一、基础校验 请求参数缺失 请求参数数据类型错误 请求参数为特殊值,如:null,undefined,true,false 请求参数字符串长度校验 请求参数包含特殊字符,如:~!@#$%^&*()_+{}|:"?><\/等 请求参数枚举值校验,合法枚举值和不合法枚举值 二、业务测试 接口返回字段是否满足借入方或者外显的需求? 正常业务功能测试(结合具体业务,尽量在接口测试中覆盖全部业务) 异常业务功能是否需要response给出具体错误码给前端或者上游接口 接口超时时间设置是否合理?超时后如何处理? 接口是否涉及事务?接口事务回滚逻辑验证 接口是否依赖其他接口或者配置? 请求接口时是否有其他操作?比如更新数据库、更新缓存、发消息等?如果有其他操作都需要一一验证 接口是否有幂等要求? 三、性能测试 接口需支持的最大并发是多少?最大并发场景下接口响应耗时的要求是多少?   (需要先评估接口的性能要求,然后进行测试并调优) 四、安全测试 敏感字段是否加密处理? 请求接口是否需要身份验证? 是否有SQL注入风险? 来源: https://www.cnblogs.com/daydayup-lin/p/11896253.html

mybatis实战教程(mybatis in action),mybatis入门到精通

倖福魔咒の 提交于 2019-12-05 00:33:50
转自: http://www.yihaomen.com/article/java/302.htm (读者注:其实这个应该叫做很基础的入门一下下,如果你看过Hibernate了那这个就非常的简单) (再加一条,其实大家可以看官方的教程更好些: http://mybatis.github.io/mybatis-3/ ,而且如果英文不是很好的那就看中文的: http://mybatis.github.io/mybatis-3/zh/sqlmap-xml.html ) 写在这个系列前面的话: 以前曾经用过ibatis,这是mybatis的前身,当时在做项目时,感觉很不错,比hibernate灵活。性能也比hibernate好。而且也比较轻量级,因为当时在项目中,没来的及做很很多笔记。后来项目结束了,我也没写总结文档。已经过去好久了。但最近突然又对这个ORM 工具感兴趣。因为接下来自己的项目中很有可能采用这个ORM工具。所以在此重新温习了一下 mybatis, 因此就有了这个系列的 mybatis 教程. 什么是mybatis MyBatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis使用简单的XML或注解用于配置和原始映射,将接口和Java的POJOs(Plan Old Java

接口测试常用工具(转)

久未见 提交于 2019-12-04 19:49:26
Poster 这是火狐浏览器的一个插件,如果你想调试服务器,发出HTTP请求,Poster操作简单,你先设定一个内容类型,数分钟内,你将拥有需要检视HTTP请求结果的所有信息。 Postman Postman是一款网页调试与发送网页HTTP请求的Chrome插件,它可以利用Chrome插件的形式把各种模拟用户HTTP请求的数据发送到服务器,以便开发人员能够及时地作出正确的响应,或者是对产品发布之前的错误信息提前处理,进而保证产品上线之后的稳定性和安全性,Postman的页面相对用户体验性比较好,有的公司也已这个插件的模板做二次开发,搭建自己的接口测试平台 RESTClient RESTClient是用java Swing编写的基于http协议的接口测试工具,工具比较灵巧,便于做接口的调试,源码在官网上可以下载 Fiddler Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯,设置断点,查看所有的“进出”Fiddler的数据(指cookie,html,js,css等文件,这些都可以让你胡乱修改的意思)。 Fiddler 要比其他的网络调试器要更加简单,因为它不仅仅暴露http通讯还提供了一个用户友好的格式 SoapUI soapUI是一个免费、开源、跨平台的功能测试解决方案。一个易于使用的图形界面,和企业级功能

后台权限验证功能测试

喜你入骨 提交于 2019-12-04 19:49:00
功能模块缩略图 测试用例 用户 用户状态 测试接口1 接口类型 测试接口2 接口类型 测试接口2 接口类型 无 匿名用户 getRegisterUserList 管理接口 getPunchChrat 用户接口 register 匿名接口 201731062631 普通用户 getRegisterUserList 管理接口 getPunchChrat 用户接口 register 匿名接口 201731062632 管理员 getRegisterUserList 管理接口 getPunchChrat 用户接口 register 匿名接口 未登录状态下进行接口请求操作 测试结果:用户在未登录的情况下无法进行接口访问,返回结果为403状态码 普通用户登录状态下进行权限验证 这里返回的role代表了用户所拥有的权限角色。 1:管理员 (拥有用户权限和管理权限) 2:普通用户(拥有用户权限) 3:注册用户(只有注册接口的权限) 用户接口权限测试 管理员权限接口测试 管理员登录状态下进行权限验证 用户接口测试 管理员接口测试 测试结果 用户登录状态 匿名接口(注册接口) 用户接口权限验证 用户管理接口权限验证 未登录(匿名用户) 通过 不通过 不通过 普通用户 通过 通过 不通过 管理员 通过 通过 通过 测试小结 :因为在之前Alpha1版本当中就进行了较多的单元测试

【转】接口自动化测试基本流程及测试思路

主宰稳场 提交于 2019-12-04 18:58:23
接口自动化大致步骤: 1、发送请求 2、解析结果 3、验证结果 定义三个和业务相关的类 1、一个用来封装HTTPclient,用来发送请求 2、解析结果xml的类 3、一个用于比较测试结果和期望值的类,用于验证 4、自动生成报告的类:自动发送报告之类的 (locust的python工具) 服务级:Web server(服务) Database(持久化工具-数据库)、Cache(短时间持久化工具-缓存) 接口测试: 1、构造数据 (1)通过接口构造 比如获取一个blog的文章信息,怎么构造数据呢?(文章哪里来??)—返回blog信息 通过添加文章的接口,临时构造数据(blog文章),然后断言的时候看看是不是自己造的数据——会造成接口耦合(两个程序模块有关联就叫做耦合。)—和造文章的接口耦合(如果创建文章的接口挂了,那返回blog信息的接口也就挂了) 公交卡充值依赖支付宝的支付接口服务,调用支付接口会有代价,所以模拟一个支付接口,所有通过mockserver(测试桩)去模拟支付接口的服务----不管输入是什么,返回一直成功或是固定的 如何进行mock?? mockserver介绍: https://www.cnblogs.com/fnng/p/7511539.html 使用: https://blog.csdn.net/qq_35049819/article/details