I am seriously struggling to wrap my head around this one, so its best to describe it. I have been tasked to setup automation at my current company and thus far I have been building out the framework robustly to handle anything I start throwing at it in terms of reporting, logging etc. my first task is the automated testing of a c# webservice (My Auto is in java).
Lets say, this service has 2 controllers foo
and bar
.
foo
contains around 16 calls in the controller
bar
contains around 14 calls in the controller
There are a large number of unit tests in this webservice already and im seriously struggling to figure out what integration tests may look like.
To my understanding the unit tests will mock everything, should i be almost duplicating those tests because the webservice is deployed on the real server and running as part of the application (utilised by the front end)?
Should I be testing the webservice calls for all sorts of input on the data?
OR, should i be writing a handful
of tests to flow through the API to ensure its working correctly? Right now I have hundreds of input related tests checking for all sorts of data input which I feel is unnecessary, I am testing each call atomically for input and scenarios like deletion, adding a new, duplication etc.
I can't really grasp the concept of the integration and what is expected, at this rate I will have over 400+ tests for all ~30 calls and I feel its completely wrong.
any advice is greatly appreciated.