SOAPUI接口测试使用手册

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

SoapUI接口测试使用手册SoapUI接口测试使用手册(V1.0)SoapUI接口测试使用手册1.SoapUI的介绍SoapUI是专门针对Webservice接口的测试工具,功能强大且界面易用。它是直接利用WebService的WSDL文件测试Web服务的接口,利用SOAPUI测试不需要了解底层的接口、调用关系及详细协议,也不需要使用编程来实现测试用例,而是基于WSDL自动产生测试消息。SOAPUI还支持接口的负载测试。在对同一WebService接口进行测试时,SOAPUI比Loadrunner表现的性能会更加优越、真实,更接近反映接口的性能指标。并且SoapUI支持多种语言,java、c++,且wcf这种形式的接口也可支持。2.SoapUI的安装SoapUI基于JAVA开发,支持多个平台,需要设置JAVA_HOME变量指向到相应的JRE目录,同时修改PATH变量,将JRE1.6的bin目录添加到PATH里面。3.SoapUI接口测试3.1创建/导入工程启动SoapUI程序,双击目录bin下的soapui.bat,即可启动程序。程序第一次打开后,在左侧导航面板上,自动有一个空的Projects工程。鼠标右键点击Projects,选择第一项“NewSoapUIProject”,新建一个工程。(如果本地有现成的工程,也可直接选择第二项导入工程“ImportProject”,选择本地的xml文件导入即可)如下图SoapUI接口测试使用手册页面弹出“NewSoapUIProject”框,输入ProjectName,“InitialWSDL/WADL”可填入URL地址或直接导入WSDL文件,(在这一步骤中,也可不导入WSDL文件,等到工程创建好后,右键点击工程名,选择“AddWSDL”也可导入)如下图所示:默认选上:CreateRequests:Createsamplerequestsforalloperations?(为每个接口创建一个请求)CreateTestSuite:CreatesaTestSuitefortheimportedWSDLorWADL(为WSDL或WADL创建一个测试包)点击OK按钮,弹出创建测试包的对话框“GenerateTestSuite”:SoapUI接口测试使用手册说明:SingleTestCasewithoneRequestforeachOperation(为每个接口的请求都创建一个测试用例)Createnewemptyrequests(创建一个空的请求)GeneratesadefaultLoadTestforeachcreatedTestCase(为每个创建好的测试用例生成一个默认的负载测试)点击OK按钮,在弹出框中填入测试包的名称,点击确定按钮后,工程便创建成功。此处显示的都是WSDL文件中的所有方法,只须选择要测试的方法即可用来进行接口的性能测试,如果有需要可以勾选SoapUI接口测试使用手册由此图可以看到,SoapUI提供的测试用例管理的映射关系是这样的:3.2执行测试上面步骤我们已经为WSDL文件的每个操作创建了请求和测试用例测试包TestSuite测试用例TestCase测试步骤TestStep测试用例TestCase项目Project测试包TestSuite测试步骤TestStep工程名Project请求RequestSoapUI接口测试使用手册以LoginTestCase为例,展开测试包下的“LoginTestCase”,双击“TestSteps”下的“Login”。双击login后,在SoapUI的右侧会出现请求编辑器:请求编辑器分为三部分:_顶部的工具栏,包含一组请求相关的动作、操作工具栏端口地址请求区域响应区域SoapUI接口测试使用手册_左边是请求区域_右边是响应区域报文中“?”是需要被替换的内容,输入请求的参数,点击运行按钮(绿色图标),soapui会将我们填写后的soap报文发送给服务接口进行调用,返回的结果报文会显示在右侧区域。见下图:SoapUI接口测试使用手册根据响应的结果报文可查看接口是否被正确调用。3.3测试用例多个测试用例就组成一个测试包(TestSuite),双击测试包,弹出下图:双击SoapUI接口测试使用手册点击运行按钮时,可将此测试包中的所有测试用例按顺序从上到下执行测试,可以随意更改测试用例的顺利,只需右键点击某测试用例,选择“moveTestUP”或“MoveTestDown”即可。SoapUI接口测试使用手册点击运行按钮,可将这四条测试用例一次执行完,显示为绿色表示四条用例全部执行成功,如果其中有一条用例执行失败,则显示为红色。见下图:运行按钮SoapUI接口测试使用手册执行结果SoapUI接口测试使用手册如果想单独执行某条测试用例,可双击测试用例名称,直接点击运行按钮即可。比如单独测试login,双击LoginTestCase弹出下图:双击SoapUI接口测试使用手册直接点击运行按钮,即可将Login测试用例完成测试。SoapUI接口测试使用手册3.4测试步骤3.4.1添加测试步骤一条测试用例中可以包含多个测试步骤,测试步骤是按顺序执行的,也可以调用其它的测试用例。添加测试步骤时,可有3种方法:(1)右键点击测试用例名称,在弹出菜单中选择“AddStep”;(2)右键点击测试步骤名称,在弹出菜单中选择“InsertStep”;(3)下图为双击测试用例名称打开的测试用例信息框,红色方框内为各种测试步骤,点击相应图标可以进行测试步骤的添加。日志部分SoapUI接口测试使用手册点击测试步骤,左下方会显示该步骤的相关属性,可以在此进行属性的编辑,右击测试步骤,会弹出一些相关操作。添加测试请求注意点:SoapUI接口测试使用手册点击上图红色圆圈即可添加一个请求,上图红色方框要勾选上,代表将请求中的option操作步骤元素也添加进来,否则添加的请求不完整。3.4.2修改测试步骤点击某测试请求,右键选择ChangeOperation,见下图SoapUI接口测试使用手册RecreateRequest:重新创建一个新的Request.CreateOptional:重新创建Request时也同时会创建optional.KeepExisting:重新创建Request时会保存之前填写的Value值。3.4.2属性Properteis测试用例里都会有一些主要的测试步骤来验证接口的功能,可以组合一条测试用例的所有步骤,通过属性的设置和传递在这些测试步骤间共享数据。测试步骤主要有:Properties:允许你定义任意数量的属性值,可以用来参数化请求等。PropertyTransfer:属性传递,允许你在测试步骤间传递属性值,它可以将各个测试步骤联系起来。可以将一个Properties的步骤将属性传给一个TestRequest的步骤,也可以是将属性从一个请求的出参传递给另一个请求的入参。允许你定义任意数量的属性值,可以用来参数化请求等下面就建立一个属性(Properties)的操作。按照上面添加测试步骤的方法,添加一个Properties,也可点击下图中第3个按钮完成属性的添加。SoapUI接口测试使用手册输入好属性名后,会弹出下图,点击工具栏第一个按钮,添加属性名称Name双击Value一列的框,可以添加属性值。这样包含2个属性username和password的测试步骤就添加完成了。另外,Value值也可以写成函数的形式,比如username的Value值可以写成函数:${=((int)(Math.random()*100))}或${=newRandom().nextInt(100)}-----返回0—100之间的随机整数。SoapUI也可以导入txt和Properties文件,达到批量参数化的设置,但文件添加PropertiesSoapUI接口测试使用手册中不能有中文显示。下面以txt文件举例说明:Txt中的数据可以Name和Values以空格隔开,也可以写成Name=Value的形式,见以下两图:将此txt文件的数据批量导入到SoapUIProperties中的方法为:点击属性弹出框中Loadfrom后的浏览图标,选择txt文件,即可成功导入。SoapUI接口测试使用手册弹出“CreatemissingProperties?”提示框,选择“是”,就可以将txt文件中的数据批量导入到Properties中,见下图:点击属性弹出框中Saveto后的图标,可以进行数据的保存,默认保存为Properties格式,也可以自定义保存的格式(包括xls格式)。SoapUI接口测试使用手册3.4.3属性传递3.4.2.1PropertyTransferSoapUI为我们提供了两种属性传递的方法,一种是PropertyTransfer,另一种是PropertyExpansion。下面先介绍第一种方法PropertyTransfer。属性传递给请求参数添加一个PropertyTransfer(属性传递),先要双击某测试步骤,然后点击TestSteps的第四个按钮,添加PropertyTransfer,如下图。SoapUI接口测试使用手册输入好属性传递名后,会弹出下图,点击下图左侧第一个按钮,可添加一个传递的属性。添加的传递属性会在左侧显示出来,如下图,添加了1个属性传递“moveuser”添加PropertyTransfer点击此按钮添加ProperytransferSoapUI接口测试使用手册Source表示来源是你使用了哪个测试步骤,Target表示目标是传递给哪个测试步骤,比如上图中moveuser表示将右边栏上半部分Source中返回的值传递给Target中指定的元素。即将属性(Properties)为username的值传递给login中的请求:Request,并且下面的方框中明确了传递的元素username。通过以上步骤就完成了属性传递的添加。上图中传递给Login请求的元素username的Xpath表达式写法如下:要传递的目标是Login,双击Login测试步骤(或请求),打开login的请求报文,为如下代码:soapenv:Envelopexmlns:soapenv=:sam=:Header/soapenv:Bodysam:loginusername?/usernamepassword12345/password/sam:login/soapenv:Body/soapenv:Envelope双击LoginTestCase,执行包含3个测试步骤的测试用例,点击运行按钮。declarenamespacesam=:login/username固定模式,不做改动传递的元素为usernameXpath表达式SoapUI接口测试使用手册双击Login请求,可看到属性为username的值Login被自动传递到代码中。请求参数传递给请求参数同上面同样步骤,只是Xpath表达式不同。比如我们要将A接口的请求参数QueryType传递给B接口的请求参数QueryValue。Xpath表达式填写规则如下:A接口的请求代码:SoapUI接口测试使用手册B接口的请求代码:按照上面两幅图中的红色框中方式输入传递的参数属性:点击上方绿色箭头,可查看参数是否被成功传递。如下图:SoapUI接口测试使用手册响应结果传递给请求同上面同样步骤,只是Xpath表达式不同。比如我们要将A接口的响应参数Result传递给B接口的请求参数QueryValue。Xpath表达式填写规则如下:A接口的响应代码:B接口的请求代码:SoapUI接口测试使用手册按照上面两幅图中的红色框中方式输入传递的参数属性:点

1 / 65
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功