2

As I look into writing automation frameworks at the API layer(relatively new to this area), a question that keeps cropping up in my mind is.....why should I write an automation framework at code level in C#(with RestSharp) or Java(RestAssured), as opposed to using a tool like Postman or SoapUI and utilising what they have to create a framework?

What would be the pro's and con's of each?

4

๐Ÿ‘Pros of coding:

  • You can easily integrate your test into CI process
  • You can code any assertion logic you need in your tests
  • You can utilize any library that is suitable for your chosen coding platform
  • You can flexibly manage your test data
  • You can build whatever test report you want

๐Ÿ‘ŽCons of coding:

  • It requires coding skills

๐Ÿ‘Pros of tools:

  • They doesn't require coding skills at all or requires less coding skills
  • They have user-friendly interface
  • They are intended to address some general issues of API testing (see cons) so there are a lot of people who can help you with your problems

๐Ÿ‘ŽCons of tools:

  • They are intended to address some general issues of API testing so you wouldn't likely be able to introduce more or less complicated logic of your test
  • This is not trivial to integrate the tools into CI
  • Usually tools have their reporting standard that cannot be changed or you're limited in the changes
  • You either are not able to extend tool functionality or limited in the extension by the existing plugins
| improve this answer | |
  • 2
    great answer, another con for coding is the need to "invent the wheel", especially when it comes to reporting, execution and other infrastructure things – Rsf Sep 7 '18 at 13:50
  • @rsf, with coding also other open source components, can be assembled like unit testing framework, reporting frameworks at the same time with the flexibility of the customized coded solution. – Vishal Aggarwal Sep 8 '18 at 1:04

Your Answer

By clicking โ€œPost Your Answerโ€, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.