There are different kinds of testing like you said.
I like unittesting. To unit test your webservice, you would create a seperate project, and create a testclass that has a bunch of testmethods. In each of those methods you yould test your DLL (NOT The Webservice hosted by IIS/whatever) and verify it behaves as expected.
You should also make sure that the DLL is not comunication to anything on the outside during a UNIT-Test (That means: Filesystem, Database, other webservices, anything you dont control). Reason for that is that you want to test YOUR code, and not possible infrastructure issues like network, authorization, or state of the database...
There are testrunners in VS or you can download testdriven.Net or resharper.
See: http://en.wikipedia.org/wiki/Unit%5Ftesting
Then there are also integration tests. Those would basically test the webservice when it is hosted by IIS, and make sure that the setup as a whole works smoothly. An integration test supplements a unittest, but should not be the only test. I would go as far and say "Integration tests are late tests", and fixing bugs dicovered during integration usually costs more then fixing those dicovered during unit tests.