业务流梳理,需要实现的内容,含jdbc和正则表达式,和取值

1. 登录用户

2. 获取一个未分配的订单,判断是否是未分配

3. 获取配货单号

4. 分配配货单

5. 查询已分配的配货单

6. 查询包裹出库记录

1.登录操作

开启fillder抓包,手工登录页面 wms系统,获取登录的接口

会发现一个登录操作,有很多接口,为什么会这么多,要根据业务去分析,而我们现在业务登录是需要去认证中心去认证,所以会这么多,在获取请求时你不知道哪些接口有用,你可以全部写上,在挨个调试,实战登录,详细步骤不赘述,百度一大把,目前截图下来的是需要注意,

1.新增线程组

新增线程组后,注意 添加cookie管理器(管理上下传递的cookie) 和缺省默认值(如果在http请求中忘记写入了url地址时,会默认调用缺省默认值)

在新增一个http请求,用于你发送请求

在新建一个用户自定义变量,主要用于后期自己定义变量使用

因为熟悉业务流,清楚登录的接口,目前这个项目只需要用到两个接口就可以模拟登录

1.正常的提交用户名和密码进行登录

2.在验证中心获取验证的信息后,登录

用户名和密码,为都已经设置为变量,变量配置为:

在添加一个查看结果树,用于查看返回的响应结果,以及返回过来的返回码

注:针对我的每一个请求,每次接口的请求都会做验证点,验证请求的数据是否正确,因为返回200只代表我们请求没有问题,但是不能确定我们请求逻辑是否正确,是否为我们需要的,所以断言是很有必要的

而你如何知道你要断言的内容:1.有接口文档的返回内容进行断言 2.通过页面操作,抓包的返回内容,选取一些有代表性的验证点

如:登录成功后,在登录页面,会显示登录成功的用户,所以登录的断言如下:

断言添加

断言内容如下:

查看结果树,如果不确定是否断言成功,可以去响应文本中查看

2.获取未分配配货单

同样,在页面上操作功能,获取配货单的接口,页面如下

接口请求

模拟请求:

把订单号像用户名和密码一样,设置为变量,改动订单号时,只需改动变量值就可以,改变后如下:

断言成功,查看结果树

3.获取配货单号(正则使用)

在查询未分配数据时,需要从数据中获取页面上的配货单号,方便一个接口操作使用,配货单号在响应数据中有返回,所以我们通过正则获取配货单号,

正则表达式:

如何写你的正则表达式,根据你返回的请求查看,如下响应数据返回的的内容:

1. 查询数据库中分配的id(数据库连接)

要分配配货单是需要先查询分配的id才可以,所以也就是为什么上一步要获取内部单号,

1.添加jdbc

2 .配置jdbc

Jdbc request配置

以下注意,名称要与配置jdbC名称一致,在写sql时我使用了上一个正则的变量,在cariable name中我有定义了一个变量id,用于下一个job使用

请求数据:

请求的url

请求的响应数据

对比结果是否与数据库相同,相同说明正则提前数据正确,sql语句正确

4.分配配货单

页面操作内容,通过fillder抓包获取接口

请求如下:

请求如下

注意 id这里获取不能直接用id,目测是因为从数据库中返回的是一个list,而list获取数据时,要遍历或者指明获取第几个,所以这里使用时,也需要指明要使用第几个数据 需要指明获取的的第几个

断言数据:

在页面操作配货单时会提示分配成功

所以断言的内容就为:返回数据包含分配成功

5.查询已分配配货单

抓包获取接口

查询都是,判断返回数据是否有自己的内容,断言数据,有数据就显示有几个数据,没有数据就不会显示记录,所以断言如下:

到此为止登录后对未分配的订单进行分配操作,并在已分配列表中可以进行展示

6.查询包裹出库记录

我们还可以通过获取内部单号,

使用正则提取

我在使用退件重发的其中一条接口进行验证获取的内部单号

返回和请求

jemter实战的更多相关文章

  1. Jemter+Badboy实战经验一(Badboy录制及基础功能)

    1. 使用工具: Apache Jemeter:http://jmeter.apache.org/download_jmeter.cgi (免费官网下载地址) BadBoy:   http://www ...

  2. jmeter接口测试-调用java的jar包-csv参数化请求-BeanShellPreProcessor生成验签作为请求验证参数-中文乱码----实战

    背景及思路: 需求:要做 创建新卡 接口的测试,要求: 1. 不需要每次手动修改请求参数. 方案:文中先用excle将数据准备好,导出为csv格式,再用jmeter的csv请求进行参数化 2. 卡号需 ...

  3. SSH实战 · 唯唯乐购项目(上)

    前台需求分析 一:用户模块 注册 前台JS校验 使用AJAX完成对用户名(邮箱)的异步校验 后台Struts2校验 验证码 发送激活邮件 将用户信息存入到数据库 激活 点击激活邮件中的链接完成激活 根 ...

  4. GitHub实战系列汇总篇

    基础: 1.GitHub实战系列~1.环境部署+创建第一个文件 2015-12-9 http://www.cnblogs.com/dunitian/p/5034624.html 2.GitHub实战系 ...

  5. MySQL 系列(四)主从复制、备份恢复方案生产环境实战

    第一篇:MySQL 系列(一) 生产标准线上环境安装配置案例及棘手问题解决 第二篇:MySQL 系列(二) 你不知道的数据库操作 第三篇:MySQL 系列(三)你不知道的 视图.触发器.存储过程.函数 ...

  6. Asp.Net Core 项目实战之权限管理系统(4) 依赖注入、仓储、服务的多项目分层实现

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

  7. 给缺少Python项目实战经验的人

    我们在学习过程中最容易犯的一个错误就是:看的多动手的少,特别是对于一些项目的开发学习就更少了! 没有一个完整的项目开发过程,是不会对整个开发流程以及理论知识有牢固的认知的,对于怎样将所学的理论知识应用 ...

  8. asp.net core 实战之 redis 负载均衡和"高可用"实现

    1.概述 分布式系统缓存已经变得不可或缺,本文主要阐述如何实现redis主从复制集群的负载均衡,以及 redis的"高可用"实现, 呵呵双引号的"高可用"并不是 ...

  9. Linux实战教学笔记08:Linux 文件的属性(上半部分)

    第八节 Linux 文件的属性(上半部分) 标签(空格分隔):Linux实战教学笔记 第1章 Linux中的文件 1.1 文件属性概述(ls -lhi) linux里一切皆文件 Linux系统中的文件 ...

随机推荐

  1. 通过zookeeper连接hive beeline

    beeline -u 'jdbc:hive2://zk01:2181,zk02:2181,zk03:2181/;serviceDiscoveryMode=zooKeeper;zooKeeperName ...

  2. python进制转换或数据格式转换

    以下是部分进制转换的,都是python内置函数 int(x [,base ])         将x转换为一个整数    long(x [,base ])        将x转换为一个长整数    f ...

  3. Thinkphp3.2邮件发送

    第一步:加入这两个文件 第二部:在common的function中添加代码 function think_send_mail($to, $name, $subject = '', $body = '' ...

  4. transient关键字与序列化、反序列化

    transient,中文翻译是短暂的,和对象序列化.反序列化有关. 一个类只要实现了Serializable接口,则该类实例就可以序列化,具体来说实例的每个非静态成员变量都会序列化.注意是非静态成员变 ...

  5. Mybatis学习笔记8 - resultMap自定义结果集映射规则

    一.resultMap自定义结果集映射规则 示例如下: 接口定义: package com.mybatis.dao; import com.mybatis.bean.Employee; public ...

  6. linux进程间的通信之 共享内存

    一.共享内存介绍 共享内存是三个IPC(Inter-Process Communication)机制中的一个. 它允许两个不相关的进程访问同一个逻辑内存. 共享内存是在两个正在进行的进程之间传递数据的 ...

  7. 性能测试工具LoadRunner27-LR之读取Excel数据

    为何要读取Excel数据? 很多用户喜欢用Excel来统计数据,比如学生成绩表.个人信息等.有时需要把Excel中的数据来进行参数化,数据量比较多时,一个个在LR里输入是不现实的,因此需要用LR来导入 ...

  8. 文本框只允许输入数字.net/javascript

    <input type="text" name="test" onKeyUp="test1.value=(this.value=this.val ...

  9. Datastructure

    时间复杂度的计算 计算最坏情况下执行语句的次数(含有n) 去掉常数项, 只保留最高项, 去掉系数 最后的结果一般是1, logn, n, nlogn, n^2, 2^n, n!, n^n 时间复杂度所 ...

  10. JDK一键安装,配置环境

    人懒,就得“多干活”!  正常安装JDK 的话,它会修改系统的path 变量,加入自己的调用路径(jre) 这样,我们刚安装好后,就可直接调用java –verbose 查看jre 安装的目录了. ( ...