Web services web服务的自动化测试

Web services web服务的自动化测试,web-services,testing,automation,soapui,Web Services,Testing,Automation,Soapui,我为一个中端团队工作&我一直在使用soapui手动测试web服务。我的任务是让回归测试用例自动化。我们现在没有任何自动化团队&因此我有充分的自由使用我想要的任何工具&让我的经理知道哪个工具适合我。但是我还没有学会自动化测试。有没有人对哪一个是Middier自动化测试的好工具有什么建议?我们有许多服务,在这些服务中,我们使用SAP中的结果验证结果。例如,如果我正在测试Midtier中某个项目的价格,我应该检查返回的价格是否与SAP中的价格匹配。我一直在手动执行此操作,登录SAP,查看提供的交易代码

我为一个中端团队工作&我一直在使用soapui手动测试web服务。我的任务是让回归测试用例自动化。我们现在没有任何自动化团队&因此我有充分的自由使用我想要的任何工具&让我的经理知道哪个工具适合我。但是我还没有学会自动化测试。有没有人对哪一个是Middier自动化测试的好工具有什么建议?我们有许多服务,在这些服务中,我们使用SAP中的结果验证结果。例如,如果我正在测试Midtier中某个项目的价格,我应该检查返回的价格是否与SAP中的价格匹配。我一直在手动执行此操作,登录SAP,查看提供的交易代码并检查该项目的价格,有人能想出任何好的自动化测试工具来处理这种情况吗?

我在类似情况下做了什么(需要测试一个非常复杂的第三方应用程序,该应用程序往往会反复出现质量问题):我使用常规JUnit 4环境编写了一些单元测试,但我没有测试本地java类,而是执行web服务调用并检查响应。如果需要针对SAP R/3后端验证结果,也可以使用java连接器(JCo)进行验证可从中获得。缺点是-您显然需要知道如何用Java编写测试代码。

如果您想自动化web服务回归测试,可以使用Soap UI Pro。自动化在Soap UI中非常简单,我也在做同样的事情。我已经使用Soap UI自动化了我的所有航班集成web服务。您可以使用groovy scriptin用于复杂场景的g语言

谢谢,
Hanumat

我们在一个大型项目中所做的是使用许多连接的遗留系统(200多个服务):

  • 对于每个服务,我们都使用适当的断言创建了SoapUI项目,这些断言反映了服务的优点(连接性、功能性等)
  • 我们设置为运行服务的SoapUI项目列表。所有执行的服务都会被记录(请求、响应)
  • 我们创建了ant作业来分析记录的响应并创建每日报告(也在Hudson上运行)
我们还通过在服务器日志中搜索模式来处理异步服务。
这里重要的是要有一个SoupUI项目创建约定(命名、所需的断言等)。

我正在处理一个类似的请求。由于客户端已经使用soapUI(操作系统)自动化了一些服务,我的工作有点困难

操作系统版本没有数据源、数据循环测试步骤来创建数据驱动的测试套件,但总有解决办法

您甚至可以使用开源版本来实现三种流行的自动化框架

  • 动作驱动框架-要将此框架应用于soapUI,您必须在服务的设置、执行和验证中确定一些常见的测试步骤。一旦确定,请在测试套件和/或测试用例中将它们分离出来,并只需调用适当的测试套件/测试步骤

    例如: 我有一个测试步骤,它验证了服务已经在数据库中创建了订单条目,因此我将创建一个测试套件+测试用例,并在其中添加一个jdbc测试步骤,以根据我提供的数据搜索订单id。查询将参数化。 在实际的脚本中,我将执行服务并提取运行db查询所需的所有值。这些值将使用运行测试步骤传递给可重用测试用例

    需要记住的是,如果您有大量的测试用例/参数,并且认为需要修改服务,那么请将这些参数放入excel文件中,并使用groovy从测试套件设置脚本区域加载它们

    您将需要ScriptomAPI来使用excel或Jxl(稍微复杂一点的实现)

  • 数据驱动框架,在此框架中,您基本上确定了要在服务上运行的不同场景,并使用相关数据填充excel,然后使用groovy和scriptom或Jetcel或jxl api循环遍历excel中的所有行,并使用不同的数据元素执行服务。这种方法可能会变得非常复杂随你喜欢,随你想

  • 关键字驱动框架-这可能是所有框架中最复杂的,因为它需要你做很多规划、开发等。我目前正在设计这样一个框架。如果没有保密协议,我会与你分享一些细节

  • 我也知道你是groovy的新手,你应该去看看soapUI和groovy的网站,他们有很多非常好的例子,记住总是有stackoverflow来回答你的问题


    让我知道您是如何完成这项工作的。

    如果您的web服务是REST,只需先使用REST客户端(Chrome插件)记录并使用Maven导出即可。创建Maven项目并添加插件exp:

    <plugin>
        <groupId>com.restlet.client</groupId>
        <artifactId>maven-plugin</artifactId>    
        <version>2.3.0.1</version>
        <executions>
            <execution>
                <phase>test</phase>
                <goals>
                    <goal>test</goal>
                </goals>   
                <configuration>
                    <file>API_Testing.json</file>
                    <selectedEnvironment>Staging</selectedEnvironment>
                    <licenseKey/>
                </configuration>
            </execution>
        </executions>
    </plugin>
    
    
    com.restlet.client
    maven插件
    2.3.0.1
    测试
    测试
    API_Testing.json
    登台
    
    谢谢vwegert的回复。你说得对,我需要知道如何用Java编写测试代码&我真的不知道。所以我仍然希望学习QTP。再次感谢!谢谢Hanumat,你找到我可以学习的培训材料了吗?我刚开始使用SOAP UI,对groovy脚本一无所知