A service class in the context of this post is a class used to encapsulate domain logic. When creating an endpoint to create a new blog post, for example, many will opt to put the core logic of creating that new post inside of a service class method rather than operate directly in the controller. The reason developers choose to encapsulate that logic is usually to be able to reuse it in other places within the project.
class PostService { public static function create() { // do some creating... }} class PostController { public function store(Request $request) { // validate and whatever else... PostService::create($request->all()); return back(); }} You are going to have a hell of a time trying to test anything that utilizes these service classes.