Automate Rest API test and integrate this with Continuous Integration(CI-Jenkins)

后端 未结 3 766
情深已故
情深已故 2021-01-02 01:20

I found many similar questions related to this, but not the particular answer I am looking for. Actually my requirement is little different, so I end up posting the followin

相关标签:
3条回答
  • 2021-01-02 01:34

    The RestAssured code you have posted will work just fine for basic cases. It's not necessarily the "right tool" if you want to:

    • continuously add new test case and don't have many resources
    • propogate alerts with well-formed error messages (especially to places like Slack or GitHub)
    • reduce false-positives
    • re-use the same tests for monitoring

    Building these features takes time and resources which, depending on the size of your team may or may not be a good call.

    Some of the commercial solutions you posted can solve some of these problems for you.

    Assertible is a codeless solution that supports the workflow you described directly: https://assertible.com/blog/automated-api-testing-with-jenkins

    0 讨论(0)
  • 2021-01-02 01:56

    For automating REST API testing, as a starting point I recommend using Postman and newman.

    Postman provides an excellent UI for building requests, and newman is its command-line counterpart. After you create a set of requests and corresponding tests within the Postman UI, you can run the entire collection from Jenkins via newman, preventing a deployment if tests fail.

    0 讨论(0)
  • 2021-01-02 01:56

    We can integrate Jenkins and JMeter for automating RestAPI testing.

    The reason for that is,

    • In Jenkins we can schedule our tests/builds in whichever way(every minute/hour/day/month.....) or based on the commits etc..

    • we can bundle n number of APIs together in JMeter and execute in a single test.(Maintaining is easy)

    • There is a jenkins plugin "Performance" which can be used to check the response time for each API call, which compares the response time with respect to the previous response times.
    • JMeter has an in-build threading feature, which helps execute tests much faster than any single threaded tests.

    Screenshots:

    Steps

    1. We can prepare our APIs in JMeter

    2. Configure the tests in non GUI Mode in Jenkins.

    3. Install and Configure the Performance plugin in Jenkins.

    0 讨论(0)
提交回复
热议问题