Not able to interact with Web Based Terminal through Selenium
My problem statement is related to interacting with a web based terminal
through selenium
- I logged into one site.
- I clicked on specific Jupyter application
- I selected terminal in the Jupyter application
- I have landed on a blank black screen where I need to pass the below
command and get the access token.
Command
curl -X POST https://dummyterminal/oauth/token -k -H
'authorization: Basic Authcode' -H 'content-type: application/x-www-
form-urlencoded' -d
'username=username&password=#password&grant_type=password'
I tried to capture the whole flow from Selenium IDE also, in order to find out if terminal has some web element or not
For terminal it is showing the web element as
cssSelector("canvas.xterm-cursor-layer")
through Selenium IDE, but when I ran with same web element it has thrown below error
I tried searching on Google also but most of the solutions were related interaction of putty with Java code means interaction of desktop
application which is putty with Java code but in my case I need
interaction with web based terminal(which is kind of putty) with selenium
so that I can paste my commands there and retrieve the output
I am not able to paste the above command in the web based terminal,
getting below error:-
output:-
org.openqa.selenium.WebDriverException: unknown error: cannot focus element
(Session info: chrome=70.0.3538.77)
(Driver info: chromedriver=2.36.540470 (e522d04694c7ebea4ba8821272dbef4f9b818c91),platform=Windows NT 10.0.16299 x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 70 milliseconds
Build info: version: '2.53.0', revision: 'XXXX', time: '2016-03-15 16:57:40'
System info: host: 'XXXX', ip: 'XXXXXX', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '1.8.0_191'
Driver info: org.openqa.selenium.chrome.ChromeDriver
Capabilities [{applicationCacheEnabled=false, rotatable=false, mobileEmulationEnabled=false, networkConnectionEnabled=false, chrome={chromedriverVersion=2.36.540470 (e522d04694cxxxx7e21272dbef4f9b818c91), userDataDir=C:UsersXXXXX[enter image description here][1]AppDataLocalTempscoped_dir3736_24657}, takesHeapSnapshot=true, pageLoadStrategy=normal, databaseEnabled=false, handlesAlerts=true, hasTouchScreen=false, version=70.0.3538.77, platform=XP, browserConnectionEnabled=false, nativeEvents=true, acceptSslCerts=false, acceptInsecureCerts=false, locationContextEnabled=true, webStorageEnabled=true, browserName=chrome, takesScreenshot=true, javascriptEnabled=true, cssSelectorsEnabled=true, setWindowRect=true, unexpectedAlertBehaviour=}]
Session ID: f629216f0f8cvvvvvv6f7d95
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:206)
at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:158)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:678)
at org.openqa.selenium.remote.RemoteWebElement.execute(RemoteWebElement.java:327)
at org.openqa.selenium.remote.RemoteWebElement.sendKeys(RemoteWebElement.java:122)
at getToken.getAccessToken.captureTerminalOutput(getAccessToken.java:52)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:85)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:639)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:816)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1124)
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:125)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:108)
at org.testng.TestRunner.privateRun(TestRunner.java:774)
at org.testng.TestRunner.run(TestRunner.java:624)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:359)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:354)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:312)
at org.testng.SuiteRunner.run(SuiteRunner.java:261)
at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1215)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1140)
at org.testng.TestNG.run(TestNG.java:1048)
at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:114)
at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:251)
at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:77)
===============================================
Default test
Tests run: 1, Failures: 1, Skips: 0
===============================================
===============================================
Default suite
Total tests run: 1, Failures: 1, Skips: 0
===============================================
web terminal
add a comment |
My problem statement is related to interacting with a web based terminal
through selenium
- I logged into one site.
- I clicked on specific Jupyter application
- I selected terminal in the Jupyter application
- I have landed on a blank black screen where I need to pass the below
command and get the access token.
Command
curl -X POST https://dummyterminal/oauth/token -k -H
'authorization: Basic Authcode' -H 'content-type: application/x-www-
form-urlencoded' -d
'username=username&password=#password&grant_type=password'
I tried to capture the whole flow from Selenium IDE also, in order to find out if terminal has some web element or not
For terminal it is showing the web element as
cssSelector("canvas.xterm-cursor-layer")
through Selenium IDE, but when I ran with same web element it has thrown below error
I tried searching on Google also but most of the solutions were related interaction of putty with Java code means interaction of desktop
application which is putty with Java code but in my case I need
interaction with web based terminal(which is kind of putty) with selenium
so that I can paste my commands there and retrieve the output
I am not able to paste the above command in the web based terminal,
getting below error:-
output:-
org.openqa.selenium.WebDriverException: unknown error: cannot focus element
(Session info: chrome=70.0.3538.77)
(Driver info: chromedriver=2.36.540470 (e522d04694c7ebea4ba8821272dbef4f9b818c91),platform=Windows NT 10.0.16299 x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 70 milliseconds
Build info: version: '2.53.0', revision: 'XXXX', time: '2016-03-15 16:57:40'
System info: host: 'XXXX', ip: 'XXXXXX', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '1.8.0_191'
Driver info: org.openqa.selenium.chrome.ChromeDriver
Capabilities [{applicationCacheEnabled=false, rotatable=false, mobileEmulationEnabled=false, networkConnectionEnabled=false, chrome={chromedriverVersion=2.36.540470 (e522d04694cxxxx7e21272dbef4f9b818c91), userDataDir=C:UsersXXXXX[enter image description here][1]AppDataLocalTempscoped_dir3736_24657}, takesHeapSnapshot=true, pageLoadStrategy=normal, databaseEnabled=false, handlesAlerts=true, hasTouchScreen=false, version=70.0.3538.77, platform=XP, browserConnectionEnabled=false, nativeEvents=true, acceptSslCerts=false, acceptInsecureCerts=false, locationContextEnabled=true, webStorageEnabled=true, browserName=chrome, takesScreenshot=true, javascriptEnabled=true, cssSelectorsEnabled=true, setWindowRect=true, unexpectedAlertBehaviour=}]
Session ID: f629216f0f8cvvvvvv6f7d95
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:206)
at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:158)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:678)
at org.openqa.selenium.remote.RemoteWebElement.execute(RemoteWebElement.java:327)
at org.openqa.selenium.remote.RemoteWebElement.sendKeys(RemoteWebElement.java:122)
at getToken.getAccessToken.captureTerminalOutput(getAccessToken.java:52)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:85)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:639)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:816)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1124)
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:125)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:108)
at org.testng.TestRunner.privateRun(TestRunner.java:774)
at org.testng.TestRunner.run(TestRunner.java:624)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:359)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:354)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:312)
at org.testng.SuiteRunner.run(SuiteRunner.java:261)
at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1215)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1140)
at org.testng.TestNG.run(TestNG.java:1048)
at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:114)
at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:251)
at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:77)
===============================================
Default test
Tests run: 1, Failures: 1, Skips: 0
===============================================
===============================================
Default suite
Total tests run: 1, Failures: 1, Skips: 0
===============================================
web terminal
add a comment |
My problem statement is related to interacting with a web based terminal
through selenium
- I logged into one site.
- I clicked on specific Jupyter application
- I selected terminal in the Jupyter application
- I have landed on a blank black screen where I need to pass the below
command and get the access token.
Command
curl -X POST https://dummyterminal/oauth/token -k -H
'authorization: Basic Authcode' -H 'content-type: application/x-www-
form-urlencoded' -d
'username=username&password=#password&grant_type=password'
I tried to capture the whole flow from Selenium IDE also, in order to find out if terminal has some web element or not
For terminal it is showing the web element as
cssSelector("canvas.xterm-cursor-layer")
through Selenium IDE, but when I ran with same web element it has thrown below error
I tried searching on Google also but most of the solutions were related interaction of putty with Java code means interaction of desktop
application which is putty with Java code but in my case I need
interaction with web based terminal(which is kind of putty) with selenium
so that I can paste my commands there and retrieve the output
I am not able to paste the above command in the web based terminal,
getting below error:-
output:-
org.openqa.selenium.WebDriverException: unknown error: cannot focus element
(Session info: chrome=70.0.3538.77)
(Driver info: chromedriver=2.36.540470 (e522d04694c7ebea4ba8821272dbef4f9b818c91),platform=Windows NT 10.0.16299 x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 70 milliseconds
Build info: version: '2.53.0', revision: 'XXXX', time: '2016-03-15 16:57:40'
System info: host: 'XXXX', ip: 'XXXXXX', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '1.8.0_191'
Driver info: org.openqa.selenium.chrome.ChromeDriver
Capabilities [{applicationCacheEnabled=false, rotatable=false, mobileEmulationEnabled=false, networkConnectionEnabled=false, chrome={chromedriverVersion=2.36.540470 (e522d04694cxxxx7e21272dbef4f9b818c91), userDataDir=C:UsersXXXXX[enter image description here][1]AppDataLocalTempscoped_dir3736_24657}, takesHeapSnapshot=true, pageLoadStrategy=normal, databaseEnabled=false, handlesAlerts=true, hasTouchScreen=false, version=70.0.3538.77, platform=XP, browserConnectionEnabled=false, nativeEvents=true, acceptSslCerts=false, acceptInsecureCerts=false, locationContextEnabled=true, webStorageEnabled=true, browserName=chrome, takesScreenshot=true, javascriptEnabled=true, cssSelectorsEnabled=true, setWindowRect=true, unexpectedAlertBehaviour=}]
Session ID: f629216f0f8cvvvvvv6f7d95
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:206)
at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:158)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:678)
at org.openqa.selenium.remote.RemoteWebElement.execute(RemoteWebElement.java:327)
at org.openqa.selenium.remote.RemoteWebElement.sendKeys(RemoteWebElement.java:122)
at getToken.getAccessToken.captureTerminalOutput(getAccessToken.java:52)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:85)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:639)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:816)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1124)
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:125)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:108)
at org.testng.TestRunner.privateRun(TestRunner.java:774)
at org.testng.TestRunner.run(TestRunner.java:624)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:359)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:354)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:312)
at org.testng.SuiteRunner.run(SuiteRunner.java:261)
at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1215)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1140)
at org.testng.TestNG.run(TestNG.java:1048)
at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:114)
at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:251)
at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:77)
===============================================
Default test
Tests run: 1, Failures: 1, Skips: 0
===============================================
===============================================
Default suite
Total tests run: 1, Failures: 1, Skips: 0
===============================================
web terminal
My problem statement is related to interacting with a web based terminal
through selenium
- I logged into one site.
- I clicked on specific Jupyter application
- I selected terminal in the Jupyter application
- I have landed on a blank black screen where I need to pass the below
command and get the access token.
Command
curl -X POST https://dummyterminal/oauth/token -k -H
'authorization: Basic Authcode' -H 'content-type: application/x-www-
form-urlencoded' -d
'username=username&password=#password&grant_type=password'
I tried to capture the whole flow from Selenium IDE also, in order to find out if terminal has some web element or not
For terminal it is showing the web element as
cssSelector("canvas.xterm-cursor-layer")
through Selenium IDE, but when I ran with same web element it has thrown below error
I tried searching on Google also but most of the solutions were related interaction of putty with Java code means interaction of desktop
application which is putty with Java code but in my case I need
interaction with web based terminal(which is kind of putty) with selenium
so that I can paste my commands there and retrieve the output
I am not able to paste the above command in the web based terminal,
getting below error:-
output:-
org.openqa.selenium.WebDriverException: unknown error: cannot focus element
(Session info: chrome=70.0.3538.77)
(Driver info: chromedriver=2.36.540470 (e522d04694c7ebea4ba8821272dbef4f9b818c91),platform=Windows NT 10.0.16299 x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 70 milliseconds
Build info: version: '2.53.0', revision: 'XXXX', time: '2016-03-15 16:57:40'
System info: host: 'XXXX', ip: 'XXXXXX', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '1.8.0_191'
Driver info: org.openqa.selenium.chrome.ChromeDriver
Capabilities [{applicationCacheEnabled=false, rotatable=false, mobileEmulationEnabled=false, networkConnectionEnabled=false, chrome={chromedriverVersion=2.36.540470 (e522d04694cxxxx7e21272dbef4f9b818c91), userDataDir=C:UsersXXXXX[enter image description here][1]AppDataLocalTempscoped_dir3736_24657}, takesHeapSnapshot=true, pageLoadStrategy=normal, databaseEnabled=false, handlesAlerts=true, hasTouchScreen=false, version=70.0.3538.77, platform=XP, browserConnectionEnabled=false, nativeEvents=true, acceptSslCerts=false, acceptInsecureCerts=false, locationContextEnabled=true, webStorageEnabled=true, browserName=chrome, takesScreenshot=true, javascriptEnabled=true, cssSelectorsEnabled=true, setWindowRect=true, unexpectedAlertBehaviour=}]
Session ID: f629216f0f8cvvvvvv6f7d95
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:206)
at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:158)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:678)
at org.openqa.selenium.remote.RemoteWebElement.execute(RemoteWebElement.java:327)
at org.openqa.selenium.remote.RemoteWebElement.sendKeys(RemoteWebElement.java:122)
at getToken.getAccessToken.captureTerminalOutput(getAccessToken.java:52)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:85)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:639)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:816)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1124)
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:125)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:108)
at org.testng.TestRunner.privateRun(TestRunner.java:774)
at org.testng.TestRunner.run(TestRunner.java:624)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:359)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:354)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:312)
at org.testng.SuiteRunner.run(SuiteRunner.java:261)
at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1215)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1140)
at org.testng.TestNG.run(TestNG.java:1048)
at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:114)
at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:251)
at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:77)
===============================================
Default test
Tests run: 1, Failures: 1, Skips: 0
===============================================
===============================================
Default suite
Total tests run: 1, Failures: 1, Skips: 0
===============================================
web terminal
web terminal
edited Nov 13 at 17:55
user6910411
32.6k86995
32.6k86995
asked Nov 13 at 17:13
Neha Sinha
61
61
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
For terminal it is showing the web element as cssSelector("canvas.xterm-cursor-layer")....
Selenium and any other DOM based tools can not automate actions inside a canvas element. For these tools, the canvas element is one big black box and they can not see inside (xpath locators do not work).
A good solution for canvas test automation is to use Kantu Seleniium IDE with the real-user simulation xmodule installed (open source, free). This gives you the xclick
and xtype
commands, and they work great for canvas element testing. XClicks takes images as input, so instead of xpaths or CSS selectors, you use images to tell XClick where to click. Same for Xtype, which is a sendkeys-like command.
Thanks, will try it and get back to you in case of any query
– Neha Sinha
Nov 15 at 4:29
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53286309%2fnot-able-to-interact-with-web-based-terminal-through-selenium%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
For terminal it is showing the web element as cssSelector("canvas.xterm-cursor-layer")....
Selenium and any other DOM based tools can not automate actions inside a canvas element. For these tools, the canvas element is one big black box and they can not see inside (xpath locators do not work).
A good solution for canvas test automation is to use Kantu Seleniium IDE with the real-user simulation xmodule installed (open source, free). This gives you the xclick
and xtype
commands, and they work great for canvas element testing. XClicks takes images as input, so instead of xpaths or CSS selectors, you use images to tell XClick where to click. Same for Xtype, which is a sendkeys-like command.
Thanks, will try it and get back to you in case of any query
– Neha Sinha
Nov 15 at 4:29
add a comment |
For terminal it is showing the web element as cssSelector("canvas.xterm-cursor-layer")....
Selenium and any other DOM based tools can not automate actions inside a canvas element. For these tools, the canvas element is one big black box and they can not see inside (xpath locators do not work).
A good solution for canvas test automation is to use Kantu Seleniium IDE with the real-user simulation xmodule installed (open source, free). This gives you the xclick
and xtype
commands, and they work great for canvas element testing. XClicks takes images as input, so instead of xpaths or CSS selectors, you use images to tell XClick where to click. Same for Xtype, which is a sendkeys-like command.
Thanks, will try it and get back to you in case of any query
– Neha Sinha
Nov 15 at 4:29
add a comment |
For terminal it is showing the web element as cssSelector("canvas.xterm-cursor-layer")....
Selenium and any other DOM based tools can not automate actions inside a canvas element. For these tools, the canvas element is one big black box and they can not see inside (xpath locators do not work).
A good solution for canvas test automation is to use Kantu Seleniium IDE with the real-user simulation xmodule installed (open source, free). This gives you the xclick
and xtype
commands, and they work great for canvas element testing. XClicks takes images as input, so instead of xpaths or CSS selectors, you use images to tell XClick where to click. Same for Xtype, which is a sendkeys-like command.
For terminal it is showing the web element as cssSelector("canvas.xterm-cursor-layer")....
Selenium and any other DOM based tools can not automate actions inside a canvas element. For these tools, the canvas element is one big black box and they can not see inside (xpath locators do not work).
A good solution for canvas test automation is to use Kantu Seleniium IDE with the real-user simulation xmodule installed (open source, free). This gives you the xclick
and xtype
commands, and they work great for canvas element testing. XClicks takes images as input, so instead of xpaths or CSS selectors, you use images to tell XClick where to click. Same for Xtype, which is a sendkeys-like command.
answered Nov 13 at 22:13
Fabrice Zaks
43819
43819
Thanks, will try it and get back to you in case of any query
– Neha Sinha
Nov 15 at 4:29
add a comment |
Thanks, will try it and get back to you in case of any query
– Neha Sinha
Nov 15 at 4:29
Thanks, will try it and get back to you in case of any query
– Neha Sinha
Nov 15 at 4:29
Thanks, will try it and get back to you in case of any query
– Neha Sinha
Nov 15 at 4:29
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53286309%2fnot-able-to-interact-with-web-based-terminal-through-selenium%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown