Web Services 通过robotframework工具进行REST Web服务测试

8iwquhpp  于 2023-10-24  发布在  其他
关注(0)|答案(2)|浏览(167)

我刚接触robot框架,正在通过robot框架进行REST Web服务测试自动化。我的经理建议我通过robot框架自动化SOAPUI,我发现了一个库,即使下面给出的这个库似乎也没有很好的文档记录。即使库中给出的示例更具体地针对基于SOAP的Web服务,我正在寻找通过soapui自动化而不是基于soapwebservices的rest web服务测试。https://github.com/pavlobaron/robotframework-soapuilibrary
因此,请建议我在机器人框架中通过SOAPUI自动化进行REST Web服务测试自动化。
另一种方法是在没有soapui工具的情况下通过robotframework实现rest web service测试自动化。
有没有人能就上述两个解决方案向我推荐一下关于REST Web服务的RobotFramework测试自动化的解决方案?

4ioopgfo

4ioopgfo1#

要测试RESTful服务,您可以使用Requests库。
为了测试SOAP服务,您可以使用Suds库。
在robotframework的主页上可以找到这两个以及其他许多内容的链接。这里有一个快速链接:
http://robotframework.org/#test-libraries
下面是一个连接到RESTful服务并验证它返回状态码200以及JSON数据具有某些特定键的示例(请注意,在我编写此测试时,此测试通过,但如果在我编写此测试和您阅读此测试之间API发生更改,则可能会失败)

*** Settings ***
| Library | RequestsLibrary
| Library | Collections

*** Variables ***
| ${SERVICE_ROOT} | http://api.openweathermap.org
| ${SERVICE_NAME} | openweathermap

*** Test Cases ***
| Example RESTful API test
| | [Documentation] | Example of how to test a RESTful service
| | 
| | Create session | ${SERVICE_NAME} | ${SERVICE_ROOT}
| | ${response}= | Get | ${SERVICE_NAME} | /data/2.5/weather?q=chicago,il
| | 
| | Should be equal as numbers | ${response.status_code} | 200
| | ... | Expected a status code of 200 but got ${response.status_code} | values=False
| | 
| | ${json}= | To JSON | ${response.content}
| | :FOR | ${key} | IN
| | ... | coord | sys | weather | base | main | wind | clouds | dt | id | name | cod
| | | Run keyword and continue on failure
| | | ... | Dictionary should contain key | ${json} | ${key} 
| | | ... | expected json result should contain key '${key}' but did not
kfgdxczn

kfgdxczn2#

这是我关于如何集成SoapUI和RF的博客:http://hardwayoreasyway.blogspot.com/2018/04/integrating-soapui-into-robot-framework.html
总的来说:
1.一个关键字运行每个测试用例的测试程序与开关:-rMI
1.使用XML库处理XML报告。如果它发现案例是“Finished”,则意味着通过。如果不是,将捕获失败消息并抛出FAIL

相关问题