How to integrate WinAppDriver using Robot Framework with or without Appium? - appium

I want to test a Desktop application (proprietary software), using WinAppDriver whereas the test is written in Robot Framework and /or Appium if Appium is needed at all.
I need one example test case using Robot Framework which will use WinAppDriver (WADLibrary) and/or Appium, exercising the opening of an application, clicking a button in a dialog and closing the application.
Any help will be appreciated.
So far I have done it this way, practically using AutoItLibrary as I could not figure out to how to do it using WinAppDriver:
It opens the software but does not click on the button.
Any help will be greatly appreciated. Even links where I can find and understand how I can make a Robot Framework test exercising winappdriver to test a desktop application. I have been searching robot framework using WinAppDriver examples but not much success.
Thank you

If you are open to a different library perhaps you could try robotframework-zoomba?
Here are the example test in robot.
Essentially it would look like:
*** Settings ***
Library Zoomba.DesktopLibrary
Library Common.py
Library Operating System
*** Variables ***
${REMOTE_URL} http://localhost:4723/wd/hub
${someSoftware} Path/To/Software.exe
*** Test Cases ***
Result_Viewer
Open Application ${REMOTE_URL} platformName=Windows deviceName=Windows app=${someSoftware}
Wait For And Click Element xpath/id/etc
Close Application
Keyword documentation can be found here

Related

How can I use Wismote in Contiki-NG?

I am running Cooja and Contiki-NG using Docker. When I want to emulate a simple application using "Wismote" mote, Cooja returns the following error:
> make udp-server.wismote TARGET=wismote
../../Makefile.include:100: *** The target platform "wismote" does not exist (maybe it was misspelled?). Stop.
Process returned error code 2
The application works properly with Z1 and Sky motes. Does anyone know how I can add Wismote to Contiki-NG and emulate a program using it?
Thank you!

Get `.uix` file using Java package

When we take a screen capture of a mobile device using the Appium app, We get a screenshot image file and a .uix file. Which can be viewed in the Appium software. I'm running an automation test and am currently taking the screenshot on failure, to know where the test fails. But sometimes the elements seem to be present in the screenshot. So it wud be helpful if I could get the .uix file too by using some API. So that I can view them in the Appium software to know what failure has exactly happened.
I found a discussion thread here which does exactly what you need. Check it out and give it a try and let us know here if that approach works.

Can Xcode 7 UI Testing be used for app file alone, without its code?

I have a few app/ipa files. Using instruments ui automation i could perform actions using a js file and a terminal command. Did nt need the code/project of app file. But from Xcode 7 onwards UI Automation is deprecated. And apple have brought in UI testing. With the limited tutorials available in internet I could understand that UI testing can be implemented only on an Xcode project. It cannot be run in an pp file individually. Please do correct me if my understanding is wrong. And guide me on how to do it.
Thanks in advance :-)
Don't know exactly how you can write UI testing for APP/IPA files.
But in the sense of code needed, I would rather say no. As the UI testing uses view hierarchy to find the UI Elements and perform actions, e.g. app.buttons["Hi"].tap().

Creating an iOS library or framework using libgdx (roboVM)

Is it possible to create an iOS library or framework using libgdx (RoboVM) that can be imported into Xcode?
Background:
One of my colleagues has created a 3D visualisation app as a libgdx project for android and windows desktop. It can be compiled to run on iOS using RoboVM. However, I would like to wrap extra native user interface elements around it using Xcode. I know its possible to build the user interface programmatically via RoboVM but I would be keen to investigate if its possible to bring the existing work into Xcode. I don't need to edit the 3D visualisation component but add extra GUI elements around the 3D Vis window. I thought compiling the libgdx (RoboVM) code to a framework or library might be a solution that could be imported?!
Yes you can do it.
All you need to create a method, say initRoboVM(), This will be called by your code when you want to initialize libgdx. You'll need to pass the app path in, which you can hardcode when you're testing.
initRoboVM() will need some modifications, namely it should not call your Java app's main method, well, at least, that's what well behaving libraries should not do IMO. It should also not call rvmShutdown.
You can get further information from here
Thanks :)
I asked the RoboVM team directly. Their answer: It's not a native function, but it certainly can be done.
The complete message...
Hi,
Sorry for the late reply. This use case is not something we're going
to do now. It is possible though if you're prepared to do some
patching of RoboVM. Search the RoboVM Google Group and you should find
others who have managed to get this working.
We get this request every know and then so we will add support for
this eventually.
Regards, Niklas

KIF in a project with a static library

I am planning to use KIF in the following setup:
1. My own static library
2. Many 'shell' apps that use the static library. These apps provide the content and configuration, but they all use the common library to load the content based not the configuration.
How should I approach integrating KIF? Should I add KIF to the shell apps?
The user interacts with the pages/content through the library.
For example the static library has a web view that displays the content. The accessibilityLabels will be set in the library.
Thanks for any insight.
UPDATE:
find KIF at https://github.com/kif-framework/KIF ("KIF, which stands for Keep It Functional, is an iOS integration test framework. It allows for easy automation of iOS apps by leveraging the accessibility attributes that the OS makes available for those with visual disabilities.")
works fine. The only problem I run into was Google Analytics.
see Occasional errors when running OCUnit application test suite on device
so KIF was run in the shell apps, not the library.
accessibility labels set in the library are easily accessible.

Resources