接口测试

Jmeter接口测试(二)正则表达式

扶醉桌前 提交于 2020-03-12 19:06:57
在做接口测试时,经常会遇到一个接口的入参是另一个接口响应报文里的某个字段,这种情况下就需要用正则表达式提取器把两个接口串联起来。 一般正则表达式配合debug sampler进行调试,debug sampler 数据显示在响应数据中。 1、添加正则表达式提取器 2、根据响应报文里的内容,提取要用的字段 备注: 3、正则表达式提取简介 i、正则表达式后没有结束符,只要后面没有空格,换行,都会被提取出来 ii、正则表达式后面的结束符不唯一时,会把所有匹配结束符的内容提取出来 iii、?表示0或者1个 iiii、 正则表达式有?非贪婪模式的,后面没有结束符的,一般会默认没有 iiii、正则表达式提取段落结尾的内容时,直接用(.*) iiiii、正则表达式提取有换行、空格的内容,表达式不唯一。 总结: a、正则表达式一般有结束符; b、没有的时候看要引用的位置,直接引用后面的内容作为结束符; c、如果有多个相同的符号时就需要用非贪婪符号-----问号?(英文状态下输写) 来源: https://www.cnblogs.com/gloria-5/p/12481917.html

接口测试介绍

ぃ、小莉子 提交于 2020-03-12 14:16:38
一、什么是接口 接口测试主要用于外部系统与系统之间以及内部各个子系统之间的交互点,定义特定的交互点,然后通过这些交互点来,通过一些特殊的规则也就是协议,来进行数据之间的交互。 二、接口的类型 接口一般分为两种:    1、程序内部的接口   程序内部的接口:方法与方法之间,模块与模块之间的交互,程序内部抛出的接口,比如bbs系统,有登录模块、发帖模块等等,那你要发帖就必须先登录,那么这两个模块就得有交互,它就会抛出一个接口,供内部系统进行调用。    2、系统对外的接口   系统对外的接口:比如你要从别的网站或服务器上获取资源或信息,别人肯定不会把数据库共享给你,他只能给你提供一个他们写好的方法来获取数据,你引用他提供的接口就能使用他写好的方法,从而达到数据共享的目的。 比较常见的接口:    1、HTTP接口    2、WebService接口   http接口是走http协议,通过路径来区分调用的方法,请求报文都是key-value形式的,返回报文一般都是json串,有get和post等方法,这也是最常用的两种请求方式。    WebService接口是走soap协议通过http传输,请求报文和返回报文都是xml格式的,我们在测试的时候都用通过工具才能进行调用,测试。   Json是一种通用的数据类型,所有的语言都认识它。(json的本质是字符串,他与其他语言无关

接口测试(基础知识)

断了今生、忘了曾经 提交于 2020-03-12 14:00:16
扫盲内容: 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

接口测试全流程扫盲

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

Spring Boot MyBatis

不想你离开。 提交于 2020-03-11 10:17:57
Spring Boot 整合 Druid 概述 Druid 是阿里巴巴开源平台上的一个项目,整个项目由数据库连接池、插件框架和 SQL 解析器组成。该项目主要是为了扩展 JDBC 的一些限制,可以让程序员实现一些特殊的需求,比如向密钥服务请求凭证、统计 SQL 信息、SQL 性能收集、SQL 注入检查、SQL 翻译等,程序员可以通过定制来实现自己需要的功能。 Druid 是目前最好的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括 DBCP、C3P0、BoneCP、Proxool、JBoss DataSource。Druid 已经在阿里巴巴部署了超过 600 个应用,经过多年生产环境大规模部署的严苛考验。Druid 是阿里巴巴开发的号称为监控而生的数据库连接池! 引入依赖 在 pom.xml 文件中引入 druid-spring-boot-starter 依赖 com.alibaba druid-spring-boot-starter 1.1.10 1 2 3 4 5 引入数据库连接依赖 mysql mysql-connector-java runtime 1 2 3 4 5 配置 application.yml 在 application.yml 中配置数据库连接 spring: datasource: druid: url: jdbc:mysql://ip

shop--12.微信测试号的申请和获取微信用户信息

你说的曾经没有我的故事 提交于 2020-03-11 09:36:22
在咱们自己的程序里面编写servlet以响应微信号 在接下来的步骤中,我们将在测试号里面设置接口配置信息的URL,一经设置,微信公众号便会发请求到我们设置好的URL去,我们必须编写程序应答才能顺利连通微信公众号,因此咱们需要编写相应的响应程序 需要编写两个类 【SignUtil】 1 /** 2 * 微信请求校验工具类 3 */ 4 public class SignUtil { 5 // 与接口配置信息中的Token要一致 6 private static String token = "myo2o"; 7 8 /** 9 * 验证签名 10 * 11 * @param signature 12 * @param timestamp 13 * @param nonce 14 * @return 15 */ 16 public static boolean checkSignature(String signature, String timestamp, String nonce) { 17 String[] arr = new String[] { token, timestamp, nonce }; 18 // 将token、timestamp、nonce三个参数进行字典序排序 19 Arrays.sort(arr); 20 StringBuilder content =

WEB自动化测试中针对验证码的解决方案 (三)

风格不统一 提交于 2020-03-08 14:13:32
说明:本文首发于《程序员》杂志2006年第11期,在此连载,转载请先得到本人同意,谢谢。另,本文与程序员杂志上的内容有少许差异。 4 自动测试中 WEB 验证码处理的方法 验证码给自动测试带来了很大的问题,但也并不是完全不能解决。结合我们在上文讨论的验证码实现的方法,图 4 给出了验证码实现的大致原理图。 从图 4 中可以看到,从技术的角度来看,至少设计两种不同的方法来实现自动测试工具对验证码的处理: 1、 完全从客户端角度考虑,靠模式识别的方法识别出验证码图片对应的字符串; 2、 从服务端角度考虑,如果自动测试工具可以获取 Session 中存储的随机数,也就能正确处理验证码了。 这两种方法是解决自动化测试中验证码问题的主要方法,我们分别称其为 识别法 和 服务端插入法 。这两种方法在实现方法上侧重点不同,适用的场合也不同。 识别法 完全不用考虑服务端应用的实现,通过各种技术方法对显示的验证码图片进行“破译”,这样,即使完全不能接触到服务端代码,也能让自动化测试在有验证码的情况下进行下去;但这种方法当然也有其致命的缺点:只能对简单的验证码进行识别,对复杂的验证码,根本就无法识别。 而 服务端插入法 则从服务端入手,通过提供一个额外的客户端接口,向客户端只需要知道该接口的调用方法,就能通过该接口来获取该页面的验证码图片对应的实际数据,并使用该数据继续测试。 另一方面

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

泄露秘密 提交于 2020-03-08 05:29:11
MyBatis 目录 (?) [-] mybatis实战教程mybatis in action之一开发环境搭建 mybatis实战教程mybatis in action之二以接口的方式编程 mybatis实战教程mybatis in action之三实现数据的增删改查 mybatis实战教程mybatis in action之四实现关联数据的查询 mybatis实战教程mybatis in action之五与spring3集成附源码 mybatis实战教程mybatis in action之六与Spring MVC 的集成 mybatis实战教程mybatis in action之七实现mybatis分页源码下载 mybatis实战教程mybatis in action之八mybatis 动态sql语句 mybatis实战教程mybatis in action之九mybatis 代码生成工具的使用 mybatis SqlSessionDaoSupport的使用附代码下载 转自: http://www.yihaomen.com/article/java/302.htm (读者注:其实这个应该叫做很基础的入门一下下,如果你看过Hibernate了那这个就非常的简单) 写在这个系列前面的话: 以前曾经用过ibatis,这是mybatis的前身,当时在做项目时,感觉很不错

接口测试 JAVA

早过忘川 提交于 2020-03-07 10:22:11
接口测试框架: https://github.com/test-assured/rest-assured BurpSuite工具扩展机制 定制自己的代理服务器 bmp Json YAML 解析lib : https://gitthub.com/FasterXML/jackso-dataformats-text 模板解析工具: https://mustache.github.io/ jsonpath修改工具: https://github.com.json-path.JsonPAth Junit5 框架: https://junit.org/junit5/docs/current/user-guide/ 测试报告框架: https://github.com/allure-framework/allure2 来源: https://www.cnblogs.com/testingcode/p/12432755.html

Java序列化

社会主义新天地 提交于 2020-03-07 04:42:02
简要解释:  序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化。可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。  序列化是为了解决在对对象流进行读写操作时所引发的问题。序列化的实现:将需要被序列化的类实现Serializable接口,该接口没有需要实现的方法,implements Serializable只是为了标注该对象是可被序列化的,然后使用一个输出流(如:FileOutputStream)来构造一个ObjectOutputStream(对象流)对象,接着,使用ObjectOutputStream对象的writeObject(Object obj)方法就可以将参数为obj的对象写出(即保存其状态),要恢复的话则用输入流。详细解释: 当两个进程在进行远程通信时,彼此可以发送各种类型的数据。无论是何种类型的数据,都会以 二进制序列 的形式在网络上传送。发送方需要把这个Java对象转换为字节序列,才能在网络上传送;接收方则需要把字节序列再恢复为Java对象。   只能将支持 java.io.Serializable 接口的对象写入流中。 每个 serializable 对象的类都被编码,编码内容包括类名和类签名、对象的字段值和数组值,以及从初始对象中引用的其他所有 对象的闭包 。 1.概念   序列化:把Java对象转换为字节序列的过程。