Open pbrown12303 opened 5 years ago
What browsers / webdrivers have you tried this with?
Thanks for the quick response. I have been using Chrome Version 71.0.3578.98 (Official Build) (64-bit) with go version go1.11.4 windows/amd64 and the latest versions of ginkgo, gomega, and agouti. I am using the agouti.WebDriver. To this point I have not tried any other browser/driver combinations.
By the way, a simple click page.Click(agouti.SingleClick, agouti.LeftButton)
works just fine.
Also, the tree node visibly changes state with the page.Click(agouti.HoldClick, agouti.LeftButton)
Could you check the errors to see if any of the requests to the webdriver are failing?
Sorry for the long delay in getting back - I've been working on other things.
Today I updated agouti, ginkgo, and gomega to the latest versions and repeated my test - same result. There are no errors being returned by FlickFinger()
, though there is a several second delay before the call returns (this in the vscode debugger).
I see no evidence of any other failures - all of the other agouti features seem to be working fine.
I am suspecting there is a conflict in serving sockets, but without knowing the agouti architecture I cannot be sure. My application is a diagram editor that uses the browser as a user interface (that's what I am testing). My application is essentially a web server that uses a websockets connection to provide updates to the browser. Most user interactions in the browser result in requests to the server which may spawn one or more websockets notifications to the browser. At present the web server is using port 8082 and the websockets is using port 8081.
In the startup of my test I spawn the server in its own thread: go editor.StartServer(false)
where the false suppresses the automatic starting of the brower. The agouti server, however, is started in the same thread as the test process: agoutiDriver = agouti.ChromeDriver()
. Is it possible that there is a conflict between agouti interactions and my application's interactions?
I have seen some evidence hinting in this direction. From time to time in the past I have had to sleep the test thread (i.e. time.Sleep(10 * time.Second)
) after a page.RunScript()
call in order to actually get the results. Here I was shooting in the dark trying to get my first tests running. However, based on today's experiments, that no longer seems necessary. Note that a sleep after the FlickFinger()
call makes no difference.
Let me know how I can help chase this down.
I am trying to test a diagram editor interface (think UML diagrams) running on a desktop. I have a tree of already-defined elements (implemented with jstree) and nodes from this tree get dragged over a diagram canvas and dropped. The interface works fine manually, but I can't seem to get agouti to trigger the dragstart. I have tried two different approaches, but neither one triggers the dragstart callback on the tree. Any suggestions?
Approach 1: `
`
Approach 2:
`
`