I am developing a program, which depends on basically all other programs in our company. As there are so many programs that could potentially change and I never get notified of the changes, I would like make a test environment, where various windows operations are tested on one of our standard desktop computers. This solution would work fine, though my problem is that updates to other programs are installed right after a restart so I need some way of getting the test computer to restart automatically and importantly provide a username and password to log into windows (I often need to test to log in with various users as they have different profiles). Is this possible with software alone or do I need some sort of a hardware solution?
Just to verify I understand what you're asking:
You have a test machine that is dependent on a production machine elsewhere in the environment. The test machine needs to be restarted when the production machine is restarted. The test machine should automatically logon upon restarting. Is this correct?
You could do this:
We'll call the production machine "Computer A" and the test machine "Computer B". Computer A will need a script that is called upon restart (run it in the task scheduler). This script should contain the following command:
This will cause test machine to restart whenever Computer A is restarted.
Logging in automatically is a relatively simple affair. Follow this Microsoft article to enable "Automatic logon."