I am using Kantu to automate filling out some forms. There is a textbox that when a persons id number is entered and you click into another box or tab out of the textbox it will load that persons vcard. I can try to expound if you need more clarity.
I don't know much but i'm guessing me clicking into another box is activiating some kind of event to load this vcard. I can't seem to simulate this. Does anyone know of a way to do so?
Welcome to SO. There are different option to get the associated events.
Let's take the stackoverflow search box (the one which is on the top with s-input js-search-field class)
1) Using getEventListeners
Go to chrome console in the dev tools and then use getEventListeners(element).
getEventListeners(document.querySelector('.s-input.js-search-field '))
2) Using Dev Tools Event Listner
Go to chrome dev tools and select the element for which you want to know the events, click on the Event Listeners tab on the right hand side pane.
3) Using the firefox event
Goto dev tools in firefox and click on events bubble at the end of html element tag.
Sample of code
I consulted with a friend who showed me the problem was an onblur event triggered by clicking away.
The solution to my problem was to call the event using the following line,
{
"Command": "storeEval",
"Target": "lawformTextBlur(document.getElementById('_f4'))",
"Value": ""
},
Related
I tried clicking on down arrow button for a Combo Box (Select is not available. Its a React JS application and once I click on arrow button only list shows selection items) using below karate command but click not happened in application and no error displayed. [The same xpath worked in selenium click command,and showing unique item on Inspect search]
And waitFor("//div[#id='root']/div/div[3]/main/div/div[3]/div[2]/div")
And click("//div[#id='root']/div/div[3]/main/div/div[3]/div[2]/div")
Note: Then I tried below command
And assert('//div[#id='root']/div/div[3]/main/div/div[3]/div[2]/div').exists
and got error
javascript evaluation failed: assert('//div[#id='root']/div/div[3]/main/div/div[3]/div[2]/div').exists, :1:19 Expected , but found root
assert('//div[#id='root']/div/div[3]/main/div/div[3]/div[2]/div').exists
It would really help us if you follow this process, it is simple and should not take much time for you to give us a small snippet of static HTML (or you can mix react if really needed).
https://github.com/intuit/karate/tree/master/examples/ui-test
EDIT: you also seem to have mis-matched single and double-quotes in your code.
Also note that you should be able to fire a JS event or click by using the script() API. See this example: https://github.com/intuit/karate/tree/master/karate-core#script
So this is an alternate approach to be able to overcome any tricky situation that comes up.
I installed XamlSpy using NuGet in my UWP app.
I debug my application and connect it successfully using the XamlSpy.
The problem is that every mouse hover is responses by XamlSpy what prevents me from clicking on buttons etc'...
How can I start inspect only when needed ?
I tried CTRL+Shift without success...
How can I start inspect only when needed
According to this article, Ctrl+Shift is worked for XAML Spy 2. By testing on my side, I guess you are using XAML Spy 3.
In that case, when you are using the XAML Spy desktop app to inspect, the "Select Visual" button which is for moving your mouse to the app, and click to select a visual in the user interface, is highlighted by default. You may need to click it to not highlight the button to stop inspecting, and click again can start inspecting again when you needed.
I am trying to use mink and behat to test out my application. One of the tests requires me to press on a button, but that button is tied to a javascript event. Not an actual form.
When I run the test I keep getting the following error message.
The selected node does not have a form ancestor.
Is there way I can emulate the press button without having a form?
Any help would be really appreciated. Thanks
Goutte (and Guzzle) will not parse / run the javascript contained within an http response. As a result you can test for the existence of the button, but not if any events associated with the button actually fire. To test for the javascript based events you will have to use a different mink-driver. I refer you to Documentation on in Browser Testing and mink documentation on available drivers.
A
I would like to click on open when a file download dialog appear in IE 11. I found this code http://www.siddharthrout.com/2011/10/23/vbavb-netvb6click-opensavecancel-button-on-ie-download-window/
But this code does not work with IE11. I have also attached the IE11 download dialog box here too. Anyone has any idea, please, help.
You can use Alt+N to focus on the Notification Bar.
And then send {tab} key to navigate to the specific button.
With VBA, you may use Autohotkey.dll or AutoItX3.dll to send these hotkey combinations.
Several of my vendor's require me to place orders thru their websites. I have automated the process by clicking on a button in my order processing program. My program will open the default browser (now IE 9 after my previous computer died), navigate to the vendor's website order page, fill out the information fields, and then click the form submit button.
this.oIE.Document.all.ctl00_MainContent_Login1_LoginButton.click()
or
this.oIE.Document.getElementById("ctl00_MainContent_Login1_LoginButton").click()
The problem appears to occur only when the button has an "onclick" value.
In IE8, the click() event executes the onclick code. In IE9, the click event returns a generic object. It does not fire the onclick code.
I have tried x.FireEvent("click"), but this returns an object as well. It appears that IE9 DOM onclick values cannot be executed by external programs.
My program works fine on IE8 (I use Chrome, IE, FireFox with different settings and logins, so changing the default browser is not really an option. Also, some of my vendors demand that I use IE as their sites are broken on the other browsers.)
Any advice on a permanent fix for this would be appreciated.
I could have written your question verbatim, and have been fighting this for as long as you have.
Stupid, stupid problem: The click() function now requires a parameter: click(1)
w = this.oIE.Document
z = w.getElementById("btn-header-input-signin")
z.click(1)
Haven't thoroughly tested this, but it works on the US Postal Service login page.
The function that the button click calls will presumably have the same name on each browser. Can you call that function instead?
Simulating the button click seems an unnecessary step. Also, have you tried jQuery? Libraries like that try to smooth away browser differences.