自动化RESTAPI测试并将其与持续集成(CI Jenkins)集成

自动化RESTAPI测试并将其与持续集成(CI Jenkins)集成,rest,jenkins,playframework,automated-tests,rest-assured,Rest,Jenkins,Playframework,Automated Tests,Rest Assured,我发现了许多与此相关的类似问题,但不是我正在寻找的特定答案。实际上,我的要求有点不同,所以我最后发布了以下问题 我想自动化restapi,对于相同的情况,我有两个选项。 第一个是放心,第二个是播放框架 例如,要测试此重新启动PI: http://servername:9000/dbs/all/list/m1/p1/sch1 (↑ 这将提供xml响应) 因此,我已经用Java编写了一个代码,并且工作得很好。我将其与Maven项目集成,以便与Jenkins集成。 示例代码: import c

我发现了许多与此相关的类似问题,但不是我正在寻找的特定答案。实际上,我的要求有点不同,所以我最后发布了以下问题

我想自动化restapi,对于相同的情况,我有两个选项。 第一个是
放心
,第二个是
播放框架

例如,要测试此重新启动PI:

http://servername:9000/dbs/all/list/m1/p1/sch1
(↑ 这将提供xml响应)

因此,我已经用
Java编写了一个代码,并且工作得很好。我将其与
Maven
项目集成,以便与
Jenkins
集成。 示例代码:

   import com.jayway.restassured
    public class TestNGSimpleTest2 {

        @Test
        public void testApi() {
                expect().
                statusCode(200).
                body("Status", equalTo("Su22ccess")).
                when().
                get("http://localhost:9000/dbs/all/list/m1/p1/sch1");

        }
因此,我的第一个问题是:

  • 放心是最好的工具吗
  • 游戏框架更好吗
  • 我找到了许多其他工具,如Jmeter、RightAPI等来测试RestAPI。但我不认为这是汽车制造的。我说得对吗

  • 您发布的重新发布代码对于基本情况来说可以正常工作。如果您想:

    • 不断添加新的测试用例,并且没有太多资源
    • 使用格式良好的错误消息发布警报(特别是在Slack或GitHub等位置)
    • 减少误报
    • 再次使用相同的测试进行监测
    构建这些功能需要时间和资源,这取决于团队的规模,可能是一个好主意,也可能不是一个好主意

    您发布的一些商业解决方案可以为您解决其中一些问题


    是一个无代码的解决方案,支持您直接描述的工作流:

    用于自动化REST API测试,作为一个起点,我建议使用和


    Postman为构建请求提供了一个优秀的UI,newman是它的命令行对应项。在Postman UI中创建一组请求和相应的测试后,您可以通过newman从Jenkins运行整个集合,防止测试失败时部署。

    我们可以集成Jenkins和JMeter,以自动化重新启动PI测试

    原因是,

    • 在Jenkins中,我们可以以任何方式(每分钟/小时/天/月…)或基于提交等安排测试/构建

    • 我们可以在JMeter中将n数量的API捆绑在一起,并在单个测试中执行。(维护很容易)

    • jenkins插件“Performance”可用于检查每个API调用的响应时间,将响应时间与以前的响应时间进行比较
    • JMeter有一个内置线程功能,它有助于比任何单线程测试更快地执行测试
    截图:

    台阶

  • 我们可以在JMeter中准备API

  • 在Jenkins中以非GUI模式配置测试

  • 在Jenkins中安装并配置性能插件


  • 是什么让你认为用自动化测试框架创建的测试不会是“自动化的”?你的问题对我来说很奇怪……如果你在配置“重”框架时遇到困难,你可以使用轻一些的框架,比如。