ContributionsMost RecentMost LikesSolutionsRe: Does TestComplete Truly run Headless (TestExecute as well)?Okay, so we are in business :) My test ran all the way through and passed (not that simple little google one either, rather a very lengthy complex GUI test). I used the -i 2 option to psexec AFTER leaving a user session logged in on the remote system. So all I have left to do is create that actual interactive login at the end of a build (my job, not yours to answer). I am certain I will be able to do that part just fine. For tests that aren't GUI related, TestComplete indeed runs completely "headless" and remote (hands-off). For those that require GUI interaction, having the remote user login established is really an acceptable work around. Thanks and sorry for the trouble, but it was worth a lot to me.Re: Does TestComplete Truly run Headless (TestExecute as well)?Wow - thanks everyone for helping with this. I will try this at 10:00 EST. Your participation is quite valued here and I really need this product to work as the TestComplete interface is very "friendly" to "Non-developer" test types and I really don't want to try and train them up on my Selenium/C# version of testing in Visual Studio, rather I would rather teach them how to use THIS in June. For now I am the sole "automated" tester doing proof of concept test development and while my own suite (Selenium/C#) suffices, TestComplete would be better for them, plus I can help write the scripts for them behind the scenes. Take care and thanks again.Re: Does TestComplete Truly run Headless (TestExecute as well)?The attachments above show a simply example heading out to the google page, headless, on a VM, with a remote launch of a bat file containing testexecute invocation. I was thrilled to get this far, but now need to get past the error shown. I used google instead of our own proprietary stuff as an example.Re: Does TestComplete Truly run Headless (TestExecute as well)?Ok wow - frustrated, but that was good to hear "Valid User Session". So I psexec in "hands-off the system" it kicks off the .bat which launches TestExecute, first line in Keyword test is Browser plus URL to site (works), 2nd line examine title and assert (works), 3rd line place data in a search box (works), 4th line click the search button (Fails), here is the error: The operation cannot be performed, because the user session is non-interactive. Possible cause: The test is run from a scheduled task with the Run whether user is logged on or not option enabled. Possible solution: Enable the Run only when the user is logged on option in the scheduled task and ensure the user is logged on when the task is triggered. All of this was headless and it ran right up until it had to click a button, implying user must be Logged in, but user was logged in via psexec which is why I got through first 3 lines of keyword test, but maybe that is not valid user login enough to click the search button. GUI is rendered nowhere. Still your words are encouraging. what is most frustrating is that I can do an entire GUI runthrough, headless, remote using Visual Studio c# and Selenium because it allows me to pick a driver (IEDriverServer or PhantomJS for headless). So I can write all my tests in C#/Selenium just fine headless, but we WANT TO USE TestComplete and make that work as well. Thanks Re: Does TestComplete Truly run Headless (TestExecute as well)?TestComplete works Headless, on a VM with remote launch, yep, but it still fails to examine GUI actions like this. I am at my wits end. Not a Windows OS constriction either, becuz I have Selenium with c# running headless, remotely, examining every GUI object imaginable just fine. Wow - that was very annoying. Thanks anyway. Please just tell people IT DOES NOT WORK ON GUIS UNATTENDED, REMOTE, HEADLESS. -thanks it will save us all timeRe: Does TestComplete Truly run Headless (TestExecute as well)? I have not been doing "automated testing" full time, but I finished making this thing work. I have TestComplete tests running headless, on a VM, with remote launch. Here's what works: Create a Test.proj file for use with MSBUILD at the end of a build/deploy, add this line: <Exec Command=""C:\Program Files (x86)\PSTools\PsExec.exe" -u domain\username -p password \\192.168.n.n C:\Users\username\Desktop\TestLinkup.bat" /> where 192... is YOUR remote system (VM, whatever) Copy your test suite over to that remote system Create the TestLinkup.bat file there and add this line: "C:\<path>\TestExecute.exe" "C:\TestCompleteProj<path>\myProj.pjs" /r /p:projsuite1 /SilentMode /exit You can also optionally add lines to package/mail results: cd C:\TestComplete 10 Projects\Management Tools\Log\ExportedResults for %%x in (*.mht) do set filename=%%x "C:\Program Files (x86)\SMTPMAIL.EXE" from=user@domain.com to=user@domain.com body="Test Results Attached" subject="Test Results" server=n.n.n.n attachment="C:\<pathtoResults>\%Filename%" DEL/q "%Filename%" Or, optionally, I created a little script within testcomplete to package email the results instead: function PackandMailResults() { var WorkDir, FileName, FileList, ArchivePath; WorkDir = Project.ConfigPath + "Log\\ExportedResults\\"; FileName = WorkDir + "testResults.mht"; Log.SaveResultsAs(FileName, 2); FileList = slPacker.GetFileListFromFolder(WorkDir); delete WorkDir+"CompressedResults"; ArchivePath = WorkDir + "CompressedResults"; if (slPacker.Pack(FileList, WorkDir, ArchivePath)) Log.Message("Files compressed successfully."); // ToAddress Required. The e-mail address to which the message will be sent. // FromHost Required. The host from which the message will be sent. // - on my desktop, nnn@domain.com // - for us, the smtp server is <hostname> (nn.nn.nn.nn) // FromName Required. The "user-friendly" name of the e-mail sender. // FromAddress Required. The e-mail address from which the message will be sent. // Subject Required. The message subject. // Body Required. The message body. // FileName1, FileName2..FileNameN Optional. The full paths to the files you want to send with the message. if (SendMail( "username@domain.com", "nn.nn.nn.nn", "username", "username@domain.com", "Test Results", "Hello Chris, Test results are attached", FileName)) { Log.Message("Mail was sent with Results"); aqFile.Delete("CompressedResults.ZIP"); } else Log.Warning("Mail was not sent"); } Also, don't forget to have HKEY_CURRENT_USER\Software\Microsoft\terminal Server Client with RemoteDesktop_SuppressWhenMinimized set to 2 (or HKEY_LOCAL_MACHINE for "everybody") Now I will build tests in Selenium/C# in Visual Studio AND in TestComplete over the next 4 months to "mix it up" a little bit. Thanks and Happy New Year, Chris Re: Does TestComplete Truly run Headless (TestExecute as well)?This is good news - I don't use Team City, but this entire conversation has most likely solved my problem. I can do all of this with our CM test.proj. I have a different hat on for today and Tomorrow morning, but will implement the solution Thursday afternoon and post the results here: This is the solution I am sure - thanks very much. Re: Does TestComplete Truly run Headless (TestExecute as well)?Hey Colin, Thanks much - this conversation with all three of you was very valuable to me. I think if I revisit the sites that Tanya and Alexei showed me in this and other threads I should be fine, so don't strain to get info from your build person. Just knowing and believing that this is possible is enough for me to do the digging and make it happen. TestComplete is going to be a much better way to go than the framework I built within Visual Studio using Selenium/c# - the people I write tests for will become automated testers next year (summer), by choice of their own, and we will upgrade to a multi-seat license then. For now I am on proof of concept and setting up the baseline automated test suite(s). Re: Does TestComplete Truly run Headless (TestExecute as well)?You people are awesome Alexei, Tanya, and Colin, you really are. Very helpful.Re: Does TestComplete Truly run Headless (TestExecute as well)?Thanks for all of your quick replies. So I will continue on and make this work because I am reading that it is possible. This is good news. Tanya, thanks and yes I have that part working (run tests via the TestExecute command l line. You can specify the needed command-line arguments in PsExec or Similar tools). But if I launch it remotely without "seeing a GUI pop-up" it exits in error. Alexei, (tests need to interact with GUI of the tested program, then you must make it possible for the tested program to output its GUI and at the same time make it possible for TestComplete to access this GUI). I also have a suite in Visual Studio with C# using Selenium with the same test steps against the same app I am testing with TC. I switch to the headless driver Phantomjs and the whole thing is launched remotely, no GUI "popping" up, yet all GUI objects are instantiated and the test runs it's course and passes. So windows is not requiring a GUI to pop up anywhere. I will try to get the same success with TestComplete. I am glad to hear the answer is Yes, and I will repost any success. Note: I appreciate ALL the answers here, but in particular I am very glad to see Colin's response as it is a match.