User for MSSQL 2008 Service Accounts

Setting the sqlserviceaccount as an admin does become substantially more insecure (or perhaps loses accountability would be a better term) with the more people who know the password so you're not wrong to worry about it. Not to mention that keeping it with minimum permissions helps to ensure that the account can't do much to the actual server if the account is compromised.

You've mentioned that you have a test environment so you already have the perfect place to test out a non-admin user. Just switch the service from running on your account to a regular user. I know that SQL Server doesn't require an administrator account to run so simply go as low on the totem pole as you can for it. If you're assigning the service to a regular user and it's giving you invalid permission errors then post them here and we'll see if we can work through them. While giving out admin privileges is simpler it does add another all-powerful user to the system that needs to be monitored.

Update:

The two following articles seem to suggest ways to set up accounts for database mirroring:

How to: Allow Database Mirroring Network Access Using Windows Authentication (Transact-SQL)
Setting Up Login Accounts for Database Mirroring