Python library to automate application mouse , keyboard events for cross platform - ui-automation

Is there any library for end to end I e complete automation of applying for cross platform. I tried pyautogui,pywinauto, auoit, atomac. But none of them are completely supported.
Regards,
Ranjeet

Related

Develop application on top of Visual Studio Code

I would like to know if Visual Studio Code provides an API that help you develop a desktop application on top of it platform. The main idea is to do like in Eclipe RCP or IntelliJ Plateform.
I want to use the plugin system available in VS Code instead of developing my own plugin system.
Any help, any link or any information will be helpful.
Thanks in advance.
There are at least two ongoing projects that you can take inspiration from in this field:
https://theia-ide.org/ by Eclipse, which is an extensible platform to develop multi-language Cloud & Desktop IDEs. In the screenshots, you'll clearly distinguish the part coming from VSCode (like the Activity Bar) and custom ones, like the flexible layout system.
https://v2.onivim.io/ based on Vim but that should also leverage the VSCode plugins ecosystem according to the roadmap.

Can we implement the browser plugin to do the automation for sites?

Can we implement the browser plugin to do the automation for sites?
I want to implement an standalone application either a browser plugin or desktop application which can do the automated tasks, basically:
1. Log in to the site
2. Navigate across the pages by filling forms if any.(navigation is not the same for all the use cases)
3. Do the action & download the files to local system.
can we implement this as a browser plugin. Pro's & con's is helpful.
I'm also looking at adobe AIR. Please suggest.
Note: I don't want the users to see what's happening n the browser.
Edit: I want this to be cross platform windows, linux, Mac...
Thanks,
John
I am currently using Selenium IDE, a FireFox plug-in. It is free and pretty easy to use until you get deeper into it's functionality which requires coding (e.g. C#, Javam Ruby and others).
Basic functionalities:
1) Record
2) Playback
3) Assert values
4) Screenshot on failure
5) Setup multiple variables as data source
6) Export a test cases or test suite
7) Yes, it supports use cases and they can be downloaded to playback or imported as test cases
Note on user's visibility to web page activities - the browser has to be opened for this version of tool. There is another version that can automate from a hub or central machine which is able to open multiple browsers or Operating Systems, but, that's just something to keep in mind if you need something more that record and playback page navigation.
Selenium IDE: http://seleniumhq.org/projects/ide/

What is the difference between Java Deployment Toolkit Plug-in and deployJava.js?

I was reading this article:
http://www.java.com/en/download/faq/deployment_toolkit.xml
and I get confused about the purpose and use of the DT Plug-in and the deployJava.js.
I always believe that the Deployment Toolkit is the set of functions of the deployJava.js file (like this link says: http://blogs.oracle.com/thejavatutorials/entry/deployment_toolkit_101) but according to the article there are two parts of the Deployment Toolkit: the Plug-in and the interface for the developer.
I'm asking about all of this because the deployJava.js fails to detect the appropriate version of Java in some of the machines of our users and I was wondering if the DT Plug-in could help us improve the detection, but I don't know how exactly it detects the Java version and when it does it or how can I use it to solve detection problems?
Most of this doubts are driven by the question in the article:
"Does deployJava.js work if the Java DT Toolkit plug-in is disabled?
Yes, deployJava.js contains some pure JavaScript functions, which will continue to work even if the Java DT Toolkit plug-in is disabled."
So... why do I need the deployJava.js if the DT Plug-in exists or vice versa?
Any help on this matter would be very appreciated.
Thank you very much.
If anyone has doubts about it, I've posted this question in the oracle forum and this was the reply:
Deployment toolkit is combination of native library and javascript
helpers. javascript is the only official public API to native library.
JRE is installed with DT native library that is left on the system if
JRE is uninstalled. As of now DT native library is only available on
Windows.
Javascript helper functions use native library if it is available but
many actions can be performed (with degraded accuracy, etc.) even if
native library is not present.
Note that there is new Javascript APIs for DT as alternative to
deployJava.js. it is called
[dtjava.js|http://download.oracle.com/javafx/2.0/deployment/deployment_toolkit.htm#BABJHEJA]
and is primary API for JavaFX applications. However, it also supports
pure Java apps and likely will be main JS API for DT going forward
(some more testing and bug fixing may be needed).
Hope this helps to clarify the relationship.
Thxs to igor
Link to oracle post: https://forums.oracle.com/forums/message.jspa?messageID=9932788#9932788

pyjamas vs pyqt OR GWT

I am not a web application pro but need to start working on a project so I need to know if pyjamas ( or shall I say the javascript generated o/p of pyjamas ) is as good as pyqt in terms of 2d graphics and widget features. I have a desktop python application which has some rich 2d graphics (with animations / collision detection etc..) implemented using pyqt.
Now I am specifically looking for equivalent web client with similar graphics and widget features . Does pyjamas support all the pyqt UI features with same look and feel??
I am also exploring GWT for this since I believe GWT has a good set of UIs and also supports decent 3rd party tools like vaadin,smartgwt but my preference is for pyjamas because its python and I am writing a equivalent pyqt based desktop app so am more comfortable with python then java. Also am not sure if GWTs look and feel would match with that of pyqt based UI on windows.
Any insights would be very helpful
Thanks in advance
Regards
Shyam
Probably too late, but if anyone else would need an answer,
Pyjamas' widgets are mostly same as GWT's (most are direct translation from GWT, but we have some own widgets too), and do not target Qt, GTK or any other toolkit.
If you are looking into using webkit, you could get best of the two worlds, and use Pyjamas with PyJD. This way your very same application could be compiled into html/css/javascript and run in web browsers and at the same time you could run it in pyqt-webkit, xulrunner or mshtml with original python code.

Adding licensing support for Eclipse PDE

I have built an eclipse plugin which basically makes writing Java GUI applications as easy as using a 4GL programming language (Oracle Forms, Visual Basic etc). The plugin generates no GUI code but rather metadata which is parsed at runtime. I am building in a trial licence within the plugin but which will stop the plugin from working when the trial licence has run out. I am unsure of the best way to implement this. MAybe to stop one of the editors opening. I have managed to integrate my licensing software (Protection! from JProductivity), which will get called when the user tries to open on of my editors. But how can I stop an editor from opening?
Any help on this subject would be much appreciated!
Editor and its type alway is contributed by extension. So there is no good way to remove this extension besides early startup your bundle. But I don't think it's a good practice.
So the better way is checking your license in EditorPart.init(IEditorSite, IEditorInput) or createPartControl, throw the exception in init call or not create any widget in createPartControl if the license is invalid or expired.