SoapUI测试登录
实际登录过程为:
1. 打开/login页面
2. 登录
3. 自动调整至/dashboard页面
SoapUI的设计上,每一次请求后,都会清理掉cookie,于是设计的测试登录过程如下:
1. post:/login
2. 读取第一步的session,传递给下一步
3. get:/dashboard
1. 创建一个TestSuite
2. 新建一个TestCase,命名为login

3. 添加HTTP Request:login,设置Method为POST,在Requset参数配置参数(具体根据接口文档配置),勾选Post QueryString(对应于过程中的第一步)

4. 添加HTTP Request:dashboard,设置Method为GET(对应于第三步)

5. 在login和dashboard两步中添加Groovy Script

6. 在Groovy Script中传递cookie中的userSession信息
import com.eviware.soapui.support.types.StringToStringMap
def cookiesList = testRunner.testCase.getTestStepByName("login").testRequest.response.responseHeaders["set-cookie"]
log.info cookiesList
//Get the cookie
String cookieNew = cookiesList.get(0)
log.info "cookie : "+cookieNew
//Put cookie to a StringMap
def cookieMap = new StringToStringMap()
cookieMap.put("Cookie",cookieNew)
testRunner.testCase.getTestStepByName("dashboard").httpRequest.setRequestHeaders(cookieMap);
测试结果:
运行该Test Case

在TestCase Log中找到Step3的结果,打开后,查看Response Message中的HTML,可以看到dashboard页面
刚刚开始入门SoapUI,整个登录过程的测试,挺坎坷的。一直不知道session怎么传递。
首先看菜单,就觉得可以使用Property Transfer:

折腾了很久,都没有成功。也不想网上搜索的使用Property Transfer时,可以使用Select Source XPath

由于一直使用Property Transfer传递值不成功,仔细看了login那一步的Response Message,发现Raw中,有在cookie中写入usersSession

马上转为考虑从cookie中读取userSession。
但是我所找到的所有网上的读取cookie都是使用:

但是一直不成功,并且SoapUI一直报错说cookiesList为null,导致后面的代码无法执行。
一度放弃研究SoapUI,然后发现,login -- Response Message -- Raw中的是“set-cookie”,结果发现,这里大小写敏感。

参考:
1. Property Transfer使用:http://blog.csdn.net/wanglha/article/details/48286169
2. SoapUI设置Cookie:https://www.cnblogs.com/milo-xie/p/6431575.html
SoapUI测试登录的更多相关文章
- 使用 SoapUI 测试ASP.NET Web API
我们为不同的目的开发了很多web服务,经过授权的用户就可以访问和使用这些web服务.soapUI 是一个强大的测试web服务的工具,他不仅可以测试SOAP服务,他也支持测试RESTful服务.在这里我 ...
- PI-利用SoapUI 测试web service的方法介绍
在运用webservice调用数据的过程中,非常关键的一个步骤就是获取到webservice的地址,并测试webservice的连通情 况,webservice的连通测试主要是两个方面:1,查看web ...
- 使用SoapUI 测试Web Service
原文:使用SoapUI 测试Web Service 如何测试写好的Webservice?你当然可以写代码来测试,但还是太麻烦,你得花时间去学习各语言的关于Webservice调用的相关API.这里推荐 ...
- SoapUI SoapUI测试WebService协议接口简介
SoapUI测试WebService协议接口简介 by:授客 QQ:1033553122 1. 创建项目,入口:File -> New SOAP Project,或者右键默认项目Project- ...
- 用SoapUI 测试Web Service
如何测试写好的Webservice? 方法一:写代码来测试,但还是太麻烦,你得花时间去学习各语言的关于Webservice调用的相关API. 方法二:使用Webservice开发的必备工具- Soap ...
- soapUI 使用soapUI测试http+json协议接口简介
使用soapUI测试http+json协议接口简介 by:授客 QQ:1033553122 SoapUI-Pro-x64-5.1.2_576025(含破解文件),软件下载地址: http://pan. ...
- 使用SoapUI测试windows身份验证的webservice
有个朋友问到用soapui测试wcf服务时如果使用windows身份验证要怎么传输凭据,于是自己试了一下.其实服务端是wcf还是webservice还是webapi都无所谓,关键是windows身份验 ...
- SoapUI 测试接口演示
SoapUI 测试接口演示 CreateTime--2018年4月2日15:54:05 Author:Marydon 以webservice为例 1.安装: SoapUI-x64-5.4.0-E ...
- 利用SoapUI 测试web service的一些问题总结
总结两个利用SoapUI 测试web service的一些问题: 1.请求一个soap service 请求的时候:按照下面的配置输入请求地址后, 2.根据实际service接口的需要,传入相应的参数 ...
随机推荐
- OpenCV 中的三大数据类型( 概述 )
前言 OpenCV 提供了许多封装好了的类型,而其中,以三大类型最为核心.本文将大致介绍这三大类型. CvArr:不确定数组 它可以被视为一个抽象基类,后面的两大类型都继承此类型并扩展.只要某个函数的 ...
- 统计分析表的存储过程遇ORA-00600错误分析与处理
1. 统计分析表的存储过程部分内容 CREATE OR REPLACE procedure SEA.sp_analyze_XXX_a is v_sql_1 varchar ...
- Unity3D研究院之拓展Scene视图
Scene视图是编辑游戏模型的地方,其实它还可以进行编辑.如下图所示,我给Scene视图做了简单的编辑. Scene视图的拓展是基于对象的,意思就是你必须在Hierarchy视图中选择一个对象才行.H ...
- android -volley-请求数据
private List<gson.DataBean>arrGson;//请求的数据 //请求数据的方法 public void initData() { RequestQueue mQu ...
- PHP进阶知识
关于PHP程序员技术职业生涯规划:http://rango.swoole.com/ Micro Service Framework For PHP:https://github.com/pinguo/ ...
- UITableView使用指南
本文转载至 http://blog.csdn.net/yu0089/article/details/8227402 一.概述 UITableView是iOS开发比不可少也是最重要的一个控件类.可以说任 ...
- Eclipse如何删除插件
删除Eclipse安装的插件方法: help -> install new softWare -> what is already installed ->选中 要卸载的插件 -&g ...
- 怎么使用Aspose.Cells读取excel 转化为Datatable
说明:vs2012 asp.net mvc4 c# 使用Aspose.Cells 读取Excel 转化为Datatable 1.HTML前端代码 <%@ Page Language=" ...
- 关于TensorFlow若干问题的汇总
1.TensorFlow中padding的两种类型SAME和VALID 简而言之:padding='SAME'表示采用在两端填充0进行补全的方式,左右填充0的个数可能并不同. padding='VAL ...
- LeetCode:安排工作以达到最大收益【455】
LeetCode:安排工作以达到最大收益[455] 题目描述 有一些工作:difficulty[i] 表示第i个工作的难度,profit[i]表示第i个工作的收益. 现在我们有一些工人.worker[ ...