Ask a Question

Headless for Desktop UI

SOLVED
wynfranc100
Occasional Contributor

Headless for Desktop UI

Hi.

 

There is a headless GUI for Web, can we do the same for the desktop application? Any docs and links to share about that?

 

Thanks

 

 

1 ACCEPTED SOLUTION

Accepted Solutions
AlexKaras
Community Hero

Re: Headless for Desktop UI

@wynfranc100 :

Hi,

 

I got your question like this: "I would like to start my desktop application on a box so that this desktop application does not display its UI and drive this application using TestComplete/TestExecute. Is this possible?"

 

If my understanding of your question is right, then no, this is not possible.

Couple of notes:

a) It is Chrome's internal feature to provide a headless page processing. You must program your desktop application in a similar way and this is not related to TestComplete;

b) TestComplete essentially designed to mimic human user's actions over the tested application. To do this, TestComplete analyses tested application to get info about its UI elements and then interacts with these elements by sending events to their window handling procedures, exactly as operating system does. Because of this TestComplete cannot interact via UI with applications that do not display UI on desktop;

c) On the contrary, Selenium and Appium do not mimic end user's actions like TestComplete does but instead inject their code into web page and emulate end user's activities via direct calls to handling routines. Due to this Selenium/Appium can drive web pages that are not rendered on the desktop;

d) Headless web pages can be driven by TestComplete only for tests that are executed on the systems that are under Selenium/Appium control (e.g. CrossBrowserTesting, BrowserStack, etc.). This is because in this case TestComplete does not directly control tested web pages, but does this using Selenium/Appium.

 

Hope this makes my answer more clear.

 

Regards,
  /Alex [Community Hero]
____
[Community Heroes] are not employed by SmartBear Software but
are just volunteers who have some experience with the tools by SmartBear Software
and a desire to help others. Posts made by [Community Heroes]
may differ from the official policies of SmartBear Software and should be treated
as the own private opinion of their authors and under no circumstances as an
official answer from SmartBear Software.
The [Community Hero] signature is used with permission by SmartBear Software.
https://community.smartbear.com/t5/custom/page/page-id/hall-of-fame
================================

View solution in original post

7 REPLIES 7
Marsha_R
Community Hero

Re: Headless for Desktop UI

TestExecute works for 

  • Desktop, Web, and Mobile modules

  • Intelligent Quality add-on

https://support.smartbear.com/testexecute/docs/

Marsha_R
[Community Hero]
____
[Community Heroes] are not employed by SmartBear Software but
are just volunteers who have some experience with the tools by SmartBear Software
and a desire to help others. Posts made by [Community Heroes]
may differ from the official policies of SmartBear Software and should be treated
as the own private opinion of their authors and under no circumstances as an
official answer from SmartBear Software.
The [Community Hero] signature is used with permission by SmartBear Software.
https://community.smartbear.com/t5/custom/page/page-id/hall-of-fame
mattb
Staff

Re: Headless for Desktop UI

And TestExecute requires an interactive/open users session. 

wynfranc100
Occasional Contributor

Re: Headless for Desktop UI

Thanks, What I meant is something like this in Chrome if there is a corresponding command for Desktop UI

 

function Test_Chrome_Headless()
{
  var server = "http://localhost:9515";
  var capabilities = {
    "goog:chromeOptions": {
      "args": ["--headless"]
    }
  };

  var url = "https://services.smartbear.com/samples/TestComplete15/smartstore/";
  Browsers.RemoteItem(server, capabilities).Run(url);
  …
}

mattb
Staff

Re: Headless for Desktop UI

With TestExecute or TestComplete if you wanted headless execution with a desktop application, it would just be on an execution machine, or node. 

TestComplete and TestExecute do not have images available and it does require an interactive user session. 

So if we were to execute on a VM, TestComplete would not take over our local mouse, and perform the "headless" execution. 

Marsha_R
Community Hero

Re: Headless for Desktop UI

@wynfranc100 there are examples under the link I posted. 

Marsha_R
[Community Hero]
____
[Community Heroes] are not employed by SmartBear Software but
are just volunteers who have some experience with the tools by SmartBear Software
and a desire to help others. Posts made by [Community Heroes]
may differ from the official policies of SmartBear Software and should be treated
as the own private opinion of their authors and under no circumstances as an
official answer from SmartBear Software.
The [Community Hero] signature is used with permission by SmartBear Software.
https://community.smartbear.com/t5/custom/page/page-id/hall-of-fame
AlexKaras
Community Hero

Re: Headless for Desktop UI

@wynfranc100 :

Hi,

 

I got your question like this: "I would like to start my desktop application on a box so that this desktop application does not display its UI and drive this application using TestComplete/TestExecute. Is this possible?"

 

If my understanding of your question is right, then no, this is not possible.

Couple of notes:

a) It is Chrome's internal feature to provide a headless page processing. You must program your desktop application in a similar way and this is not related to TestComplete;

b) TestComplete essentially designed to mimic human user's actions over the tested application. To do this, TestComplete analyses tested application to get info about its UI elements and then interacts with these elements by sending events to their window handling procedures, exactly as operating system does. Because of this TestComplete cannot interact via UI with applications that do not display UI on desktop;

c) On the contrary, Selenium and Appium do not mimic end user's actions like TestComplete does but instead inject their code into web page and emulate end user's activities via direct calls to handling routines. Due to this Selenium/Appium can drive web pages that are not rendered on the desktop;

d) Headless web pages can be driven by TestComplete only for tests that are executed on the systems that are under Selenium/Appium control (e.g. CrossBrowserTesting, BrowserStack, etc.). This is because in this case TestComplete does not directly control tested web pages, but does this using Selenium/Appium.

 

Hope this makes my answer more clear.

 

Regards,
  /Alex [Community Hero]
____
[Community Heroes] are not employed by SmartBear Software but
are just volunteers who have some experience with the tools by SmartBear Software
and a desire to help others. Posts made by [Community Heroes]
may differ from the official policies of SmartBear Software and should be treated
as the own private opinion of their authors and under no circumstances as an
official answer from SmartBear Software.
The [Community Hero] signature is used with permission by SmartBear Software.
https://community.smartbear.com/t5/custom/page/page-id/hall-of-fame
================================

View solution in original post

wynfranc100
Occasional Contributor

Re: Headless for Desktop UI

Thanks a lot!

cancel
Showing results for 
Search instead for 
Did you mean: