Your goal is, possibly, to automate a Windows application written in Windows Forms, WPF or legacy Win32 (MFC, Visual Basic 5, 6) technology. It is not a surprise that you’d like not to be bound to the test tool’s restrictions (GUI test code place here and the service test code strictly there) that so often irritate test .engineers.
PowerShell as a test tool is free of any limitations of this kind. Nothing prevents you from starting a service and checking the result in the application’s GUI in the neighboring lines of code.
The other possibility software engineers like is the ability to check a part of code by hands just by loading necessary modules in PowerShell console and typing Very few letters here (Tab is the most used button).
This page will soon contain the list of posts regarding Windows desktop automation.