服务端测试之接口测试用例设计

小伙伴们大家好,上一次和大家分享了《服务端测试之接口测试初探》,讲了一些接口测试的基本概念和理论知识。在上次的分享中,简单提到了接口测试用例设计包含的几个方面。本期我将在上次分享的基础上,和各位小伙伴一起具体看看这几个方面都是什么,在实际的项目中应该如何使用。一、功能性用例设计之前讲过,服务端的接口是和客户端的功能相对应的,对功能的验证,可以参照接口说明文档来进行。概括起来讲,就是我们需要验证接口说明文档中提到的各种情况,保证这些情况下接口的返回和最初设计的是一样的,这样我们就可以认为该接口实现了功能需求。举个例子,目前有一个接口A,关于该接口的请求参数列表如下: 可以看到,规定该接口的请求类型是get,同时该接口包含4个请求参数,那么在功能性的用例设计上,我们可以考虑如下几个方面: 1.以get方式请求; 2.请求中需要包含这4个参数; 3.各个参数的类型符合要求; 4.key参数的长度需要控制在10个字符以内。通过这几个方面写出来的case就是功能性的测试用例了。其实不难看出,功能性测试用例的目的是为了验证服务端在正常情况下是否实现...

python 接口自动化--登录

从目前知道系统登录来看一般主要是与数据库存储用户名密码进行比对,若登录域名和业务域名不是同一个还需要获取业务域的coockiehre项目登录demo:__author__='Administrator'importreimportrequests#roleId:3为派单专员deflogin(username,password,roleId):session=requests.Session()url="https://login.daydao.com/login?source=dayHRe"response=session.get(url)#提取jessionid_valueresponse_set_cookie=response.headers['Set-Cookie']print(response_set_cookie)jessionid_search=re.search(r'JSESSIONID=(?P<jessionid_value>.*?);',response_set_cookie,re.S|re.I|re.M)jessionid_value=jessionid...

测试用例设计--场景法

1、为什么用场景法设计测试用例?大多数业务软件由后台管理(比如:用户管理、角色管理、权限管理等等各种管理)和工作流等几个部分组成。终端用户,期望软件能够实现业务需求,而不是简单的功能的组合。对于单点功能利用等价类、边界值、判定表用例设计方法能够解决大部分问题。涉及业务流程的软件系统,采用场景法比较合适。2、什么是场景法?场景业务流通常分为基本流、备选流、异常流程基本流:基本流表示通过业务流程时输入都正确,能达到目标的流程。(插卡--》输入正确密码--》输入金额--》取款--》取卡)备选流:备选流表示通过业务流程时输入错误(或者操作错误)导致流程存在反复,但是经过纠正后仍能达到能达到目标的流程.(插卡-->输入错误密码--》输入正确密码--》输入金额--》取款--》取卡)异常流:异常流表示通过业务流程时输入错误(或者操作错误)产生异常终止流程 (插卡-->输入3次错误密码--》吞卡).               &n...
IT猿 IT猿·2023-05-06

试用设计--因果图

1、为什么采用因果图测试用例的测试方法?判定表设计法在设计试用例的过程中,考虑了输入与输入存在约束约束关系,没有考虑到输入与输出之间的约束关系。简单的业务逻辑可以用判定表解决,复杂的约束关系就不太适合了。2、什么是因果图设计法?因果图在软件测试用例的设计过程中,用于描述输入与输入、输入与输出之间存在的约束关系。针对需求规格,将原因和影响分为2组4类:输入与输出、输入与输入。输入与输出的关系主要有:恒等、非、与、或恒等:若输入条件发生,则一定会产生对应的输出,若输入条件不发生,则一定不会产生对应的输出非:若输入条件发生,则一定不会产生对应的输出,若输入条件不发生,一定会产生对应的输出 与:多个输入条件,只有所有输入条件发生时,才会产生对应的输出或:在多个输入条件中,只要有一个发生,则会产生对应输出。 输入与输入之间同样存在异、或、唯一、要求等4种关系异(所有输入条件中至多有一个发生,可以一个条件条件也不发生)或(所有输入条件至少有一个输入条件发生,也可以多个条件共存)唯一(所有输入条件有且只有一个发生)要求(所有输入条件中只要有一个条件发生,其他的输入也会发生)&n...
IT猿 IT猿·2023-05-06

试用设计--判定表

1、为什么用判定表设计试用例?等价类方法详细的考虑了需求输入域,但对于输入域与输入域存在关联时无法覆盖,(比如等价类划分设计试用例时,设计一条新的测试用例,使其仅覆盖一个无效等价类,直至所有的无效等价类完全被覆盖,没有考虑无效等价类与无效等价类的组合情况)。所以需要一种能考虑输入域间的互相关系设计方法来考虑业务描述性的测试需求。2、什么是判定表?判断表是分析喝表达若干输入条件下,被测对象根据输入作出不同响应的工具,适用于业务逻辑关系和多种条件组合情况。判定表的结构 条件桩:被测对象的所有输入条件项:针对条件桩可能输入的真假值动作桩:针对条件桩被测对象可能采取的所有动作动作项:针对动作桩,被测对象响应可能结果取值3、怎么用判定表设计试用例?步骤:一、列出所有的条件和动作二、根据提取出来的条件桩和动作桩,设计判定表确定规则的个数(假如有n个条件,每个条件有2个取值(0、1),就可以产生2的n次方种规则)三、填写判定表四、简化判定表(合并判定表是牺牲测试充分性,混乱业务逻辑为代价。8条以内的规则不建议合并)五、抽取测试用例(简化判定表后,可抽取判定表中的每一条规则作为测试用例...
IT猿 IT猿·2023-05-06

试用设计--边界值

1、为什么用边界值设计试用例?根据测试经验中得出,被测对象出现缺陷往往是在其接受临界数据产生的2、边界值是什么?边界值属于等价类方法特定的输入域,包含在有效等价类和无效等价类中,边界值方法产生的效果与等价类方法相同,边界值方法选择数据更有针对性。等价类划分是边界值的前置过程,边界值是等价类的补充。上点:上点是输入域边界上的点,闭区间[6,18],上点为6,18。在有效输入域范围内。开区间(6,18)上点6,8在无效输入范围内离点:离上点最近的一个点,如果输入域是闭区间,离点在输入域范围外,如果输入域为开区间,离点在输入域范围内。[6,18]离点5,19------5,(6,7...17,18),19,(6,18)离点就是7,17-------5,6(7,8,...17),18,19括号最近的点是离点内点:输入域内任意一点3、边界值怎么设计试用例?步骤:一、根据等价类方法划分有效及无效等价类,确定上点、离点及内点,每个点统一编号二、设计一个新的测试用例,使其尽可能覆盖所有尚未覆盖的有效等价类,直至所有等价类完全覆盖三、设计一个新的测试用例,使其仅覆盖一个无效等价类,直至所有的无效等价...
IT猿 IT猿·2023-05-06

试用设计--等价类划分

1、为什么要用等价类划分来设计试用例?保证被测对象测试充分性最好的方法是穷举法完全覆盖。但实际的测试活动中会受项目实施的时间、成本、范围、风险很多因素的限制。等价类划分可以减少穷去法带来的大量测试用例,保证测试效果的同时提升测试效率。2、等价类划分是什么?对于测试而言,等价类是某个测试对象的输入域的集合,在集合中单个个体对于揭露测试对象缺陷的效果是等价。有效等价类:针对被测对象需求规格说明而言,有意义的、有效的测试输入集合无效等价类:针对被测对象需求规格说明而言,无意义的,无效的测试输入集合测试用例之所以要考虑两种等价类,是因为软件不仅要能接收合理的数据,也要能经受意外的考验,这样的测试能保证软件具有好的可靠性。3、怎么用等价类划分来进行测试用例的设计?两大步:等价类划分和测试用例的设计注意:考虑每个条件,不可若干条件一起考录,否则会很凌乱。单独考虑各自的有效和无效等价类即可。具体步骤:一、根据需求规格说明书确定被测对象的输入域的有效等价类和无效等价类二、将被测对象的输入域的有效等价类和无效等价类统一进行编号三、设计一个新的测试用例,使其尽可能多的覆盖尚未覆盖的有效等价类,直至所有的...

Web常用函数介绍(LoadRunner相关)

介绍大纲:1.web_url2.web_image3.web_link4.web_submmit_form详细介绍:一.web_url语法:IntWeb_url(constchar*name,constchar*url,,[EXTRARES,,LAST)返回值成功时返回LR_PASS(0),失败时返回LR_FAIL(1)。参数:Name:VuGen中树形视图中显示的名称,在自动事务处理中也可以用做事务的名称。url:页面url地址。ListofAttributesEXTRARES:分隔符,标记下一个参数是资源属性的列表了。ListofResourceAttributesLAST:属性列表结束的标记符。说明Web_url根据函数中的URL属性加载对应的URL,不需要上下文。只有VuGen处于URL-based或者HTML-based(此时AscrīptcontainingexplicitURLsonly选项被选中时)的录制模式时,web_url才会被录制到。可以使用web_url模拟从FTP服务器上下载文件。web_url函数会使FTP服务器执行文件被真实下载时的操作。除非手工指定了"F...

公开的免费WebService接口分享

天气预报Web服务,数据来源于中国气象局 Endpoint  Disco  WSDL IP地址来源搜索WEB服务(是目前最完整的IP地址数据) Endpoint  Disco  WSDL 随机英文、数字和中文简体字WEB服务 Endpoint  Disco  WSDL 中国邮政编码<->地址信息双向查询/搜索WEB服务 Endpoint  Disco  WSDL  验证码图片WEB服务支持中文、字母、数字图像和多媒体 Endpoint  Disco  WSDL Email电子邮件地址验证WEB服务 Endpoint  Disco  WSDL  中文简体字<->繁体字转换WEB服务 ...

WEB服务器与应用服务器的区别

一.简述WEB服务器与应用服务器的区别:1.WEB服务器:理解WEB服务器,首先要理解什么是WEB?WEB可以简单理解为我们所看到的HTML页面就是WEB的数据元素,处理这些数据元素的应用软件就叫WEB服务器,如IIS、apache。WEB服务器与客户端打交道,它要处理的主要信息有:session、request、response、HTML、JS、CS等。2.应用服务器:应用服务器如JSP,处理的是非常规性WEB页面(JSP文件),他动态生成WEB页面,生成的WEB页面在发送给客户端(实际上当应用服务器处理完一个JSP请求并完成JSP生成HTML后它的任务就结束了,其余的就是WEB处理的过程了)。WEB服务器与应用服务器的联系:1.WEB服务器一般是通用的,而应用服务器一般是专用的,如Tomcat只处理JAVA应用程序而不能处理ASPX或PHP。而Apache是一个WEB服务器f(HTTP服务器),后来连接Tomcat应用服务器来支持java。 二。另述 WEB服务器、应用程序服务器、HTTP服务器有何区别?IIS、Apache、Tomcat、Weblogic、We...

电梯测试点有哪些?

在面试的时候,经常会有面试官问:说说电梯的测试点。面试官问这个问题,主要是为了考察一下求职者的测试思维,顺便也能看出求职者的日常观察能力和总结能力。当然,多数面试官也知道这个题在网上能查到答案,但为什么还要问呢?因为....还有很多人不知道嘛在16年的时候,笔者也用这个问题面试了大约十个人,大概情况是:十之六七的人想到哪说到哪,其中差一点的说个八九条,好一点的能说个十来条,之后就说不下去了。而剩下的呢,能从UI、功能、安全、易用、稳定性等等方面来说,但每个方面也只能说出寥寥几条。(什么答案是面试官青睐的呢?下面两张图都可以,合并回答最佳)我常常对我的学生说,做黑盒测试最重要的就是测试思维。什么是测试思维呢?说白了就是一种思考问题的方式,一种做事的规律,一种可以让测试工程师不那么受限于业务、能在进入新项目后迅速做出业绩的手段。下面放了两张图,第一张从整体上进行描述,这种思维方式在做计划时用的多,但有个问题就是在功能测试这里没有继续划分分类,可能还是会导致测试人员在思考功能相关的测试点时,思路不够清晰。第二张图按照电梯和电梯控制系统进行了划分,然后重点写了写控制系统的测试点,给出的这种分类...
ymnets ymnets·2020-03-25

Jmeter4.X

1.前言记录对Jmeter评估研究的过程,本文记录使用apache网站提供的原Jmeter使用自带功能进行脚本录制。本文可用于面向B/SWEB应用测试的工程师熟悉Jmeter使用。章节安排按照脚本设置、场景设置、常看监控的顺序组织。2.录制脚本 使用的测试地址:http://demo.zentao.net/user-login-Lw==.html 特别说明:Jmeter脚本(.jmx)为xml格式,属性结构,由元件组成,使用“取样器”产生请求。  第一步:打开jmeter,更改测试计划名称为Testchandao    第二步:在测试计划(Testchandao)上右键创建”线程组”,将线程组名称改为 loginzentao(登录)  Testchandao---->添加---->Threads(Users)---->线程组  第三步:添加”HTTPCookie管理器”...
ymnets ymnets·2020-03-25

Jmeter-安装配置

1 【步骤一】安装jdk1、下载jdk,到官网下载jdk,地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html2、安装jdk,下载完成后,双击安装2【步骤二】配置jdk环境变量右键计算机属性->高级系统设置->系统属性->高级->环境变量->添加如下的系统变量:变量名:【JAVA_HOME】变量值:【D:ProgramFilesJavajdk1.8.0_92】【jdk安装路径】变量名:【path】变量值:【;%JAVA_HOME%in;】变量名:【CLASSPATH】变量值:【.;%JAVA_HOME%libdt.jar;%JAVA_HOME%libools.jar;】【.不能漏】  3【步骤三】验证jdk运行cmd->输入java-version->显示java版本就表示jdk安装成功,如下图END  【步骤一】安装Jmeter1、下载Jmeter,官网地址:http://jmeter.apache.org...
ymnets ymnets·2020-03-25

python实现微信接口——itchat模块

sudopipinstallitchatitchat.auto_login() 这种方法将会通过微信扫描二维码登录,但是这种登录的方式确实短时间的登录,并不会保留登录的状态,也就是下次登录时还是需要扫描二维码,如果加上hotReload==True,那么就会保留登录的状态,至少在后面的几次登录过程中不会再次扫描二维码,该参数生成一个静态文件itchat.pkl用于存储登录状态这里主要使用的是灰调函数的方法,登录完成后的方法需要赋值在 loginCallback 中退出后的方法,需要赋值在 exitCallback 中.若不设置 loginCallback 的值,将会自动删除二维码图片并清空命令行显示.importitchat,timedeflc():print("FinashLogin!")defec():print("exit")itchat.auto_login(loginCallback=lc,exitCallback=ec)time.sleep()itchat.logout()#强制退出登录sendsend(...

Jmeter 文件上传

本节内容:1.HTTP协议Multipart/fom-data请求分析2.Multipart/form-data文件上传 ...
ymnets ymnets·2023-05-06
首页上一页...388389390391392下一页尾页