Unit Testing/debugging is generally done by launching a service from Process Designer or from Process Inspector, If you have complex services or Processes Ideally you should have two monitor where in on one you see the task/service executing in browser and on the other the Process Inspector shows where the token is. This is fine when developing. But for maintenance regression and modification purposes the Best practice is to have a Unit Test Wrapper Service with data constructors, coupled with select drop downs for providing various combinations of input data to the underlying service which is being tested. You may also want to put in a display coach at the end of invocation if the service outputs data which needs to be validated.
We build Unit Test Wrappers or also called Test Harnesses for
1. Human Tasks (to make then runnable outside a process, though they actually run in a process)
2. Standalone Services (Which Run independently of a Process)
3. Processes which take input data through a message start
4. Reusable Integrations (place them in functional area toolkits with included Test Harnesses)