Giter Site home page Giter Site logo

robotframework-formslibrary's Introduction

robotframework-formslibrary

A robotframework library for testing Oracle Forms applications. This library started as an extension of robot framework remoteswinglibrary to include support for oracle forms.

Oracle forms applications typically run as an applet in the browser and are built using oracle specific components rather than standard swing components. The goal of this library is to extend the robotframework remoteswinglibrary with the necessary keywords to drive an oracle forms application.

This library assumes that the oracle forms applications is started directly using java web start (JNLP) and not as a browser plugin.

TODO

  • Add keyword to retrieve child entry names of navigation pane entry
  • Support more wildcards (datetime, regex, ...) in TextUtil.matches

Support

This library has been created to support a specific oracle forms application, but should work on other Oracle Forms applications too. It is free for anyone to use and modify. Pull requests are welcome. Free support is not available.

Code Formatting

All code is formatted with the eclipse code formatter template with a custom line wrapping width of 150 characters and the formatter on/off tags enabled.

robotframework-formslibrary's People

Contributors

dvanherbergen avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

robotframework-formslibrary's Issues

Support for frmsal.jar

Any chance there is gonne be support for the stand-alone version of the Oracle Forms?
JNLP worked great but with the new Oracle Java SE subscriptions it is getting difficult to use webstarts.

Able to load keywords on ride but loses context after login.

@dvanherbergen @KCT527 , i some help from the fine lads who created these Forms Library , i am testing for a POC if this is a viable path for Oracle forms testing i am running on the lastest master build .

Win7 machine
Python 2.7.13
RIDE 1.5.2.1 running on Python 2.7.13.
CLASSPATH set to
C:\Program Files (x86)\Java\jdk1.8.0_121;C:\Program Files (x86)\Java\jre1.8.0_121;C:\Users\bernard.tan\robot\Libraries\formslibrary-0.9.8.jar;C:\Users\bernard.tan\robot\Libraries\swinglibrary-1.9.6.jar

PYTHONPATH set to
C:\Program Files (x86)\Java\jdk1.8.0_121;C:\Program Files (x86)\Java\jre1.8.0_121;C:\Users\bernard.tan\robot\Libraries\formslibrary-0.9.8.jar;C:\Users\bernard.tan\robot\Libraries\swinglibrary-1.9.6.jar

PATH
C:\Python27;C:\Python27\Lib*;C:\Python27\Scripts;C:\Users\bernard.tan\robot\Libraries\formslibrary-0.9.8.jar;C:\Users\bernard.tan\robot\Libraries\formslibrary-0.9.8.xml;C:\Users\bernard.tan\robot\Libraries\swinglibrary-1.9.6.jar

IDE PYCHARM and RIDE simultaneously

Test Case

`*** Settings ***
Force Tags example
Library FormsLibrary

*** Variables ***
#${WEBSTART DIR} ${CURDIR}\JWS_SP

*** Test Cases ***
Webstart Test
[Timeout] 180
#Log Java System Properties
#Set Java Tool Options
Start Application Oracle javaws -verbose ${CURDIR}${/}test17_run.jnlp

*** Keywords ***
Login
Set Field Username XXX
Set Field Next To Label Password XXX
Set Field Next To Label Database @XXX`

Upon running Jnlp started

  • remote_stderr.txt

Picked up JAVA_TOOL_OPTIONS: -agentlib:jdwp=transport=dt_socket,address=8000,server=y,suspend=n -javaagent:"C:\Users\bernard.tan\robot\Libraries\formslibrary-0.9.8.jar"=127.0.0.1:58447
Picked up _JAVA_OPTIONS: -Djava.security.policy="c:\users\bernard.tan\appdata\local\temp\grant_all_mprwvl.policy" -Drobot.output_dir="C:\Users\bernard.tan\robot\blahhh"

  • remote.stdout.txt

Listening for transport dt_socket at address: 8000

Starting formslib JavaAgent...

![2017-04-28_14h14_32](https://cloud.githubusercontent.com/assets/26596330/25516476/690ade6c-2c1d-11e7-8390-bc88742d13f4.png

moving on ......

This JNLP file is based on Oracle12c and it is residing on a network shared folder.

  • On Pycharm the "Library FormsLibrary" are detected but Keywords aren't detected & keyword definition not found , i am not sure what is wrong on this front. the jar are clean, tested , validated , packaged and installed.

2017-04-27_16h23_59

  • On Ride , the same. Keyword isnt registered.

20170428 16:07:51.368 : INFO : connecting to started application at 127.0.0.1:63540
20170428 16:07:52.603 : INFO : connected to started application at 127.0.0.1:63540
20170428 16:07:52.603 : INFO : ('starting process ', u'javaws -verbose C:\Users\bernard.tan\robot\xxxxxxxxxxxxx\test17_run.jnlp')
20170428 16:07:52.603 : INFO : Messages by 'FormsLibrary registration server thread'
20170428 16:08:02.667 : INFO : Changing context to main desktop window.
20170428 16:08:02.667 : FAIL : org.netbeans.jemmy.TimeoutExpiredException: Wait Username loaded

Does the spec xml need to be in the PYTHONPATH?
Based on the extended SwingLibrary does a swinglibrary.jar need to be in the classpath as well?

its hard to find examples for this library and information is scattered everywhere.

Seeking assistance on this and i appreciate the assistance given.

Do let me know if this is lacking in any information

Bern

Import library FormsLibrary.jar failed: Not a valid file

I am trying without success
=> FormsLibrary.jar & SwingLibrary.jar in CLASSPATH, PYTHONPATH, JYTHONPATH, PATH ๐Ÿ‘

` --------------------------------------------
*** Settings ***
Library FormsLibrary

*** Variables ***
${WEBSTART DIR}= ${CURDIR}/webstart

*** Test Cases ***
Webstart Test
[Timeout] 60 seconds
Log --- Start Webstart ---
FormsLibrary.Start Application Oracle javaws ${WEBSTART DIR}${/}start_forms.jnlp 30 close_security_dialogs=True
Set Jemmy Timeouts 15
` --------------------------------------------

getting:
Error opening zip file or JAR manifest missing: C:\Works\Work-Forms-Robot\remoteswinglibrary-master

And trying:

C:\Works\Work-Forms-Robot\remoteswinglibrary-master> jython -m robot.libdoc FormsLibrary.jar FormsLibrarySpec.xml
Importing library 'C:\Works\Work-Forms-Robot\remoteswinglibrary-master\FormsLibrary.jar' failed:

Not a valid file or directory to import.

I am very confused .. is this fromslibrary.jar correct ??

image

Thanks, Fried

robotframework-formslibrary

Do you have an example of robotframework code where you are using the robotframework-formslibrary and logging into an Oracle EBS form and entering data in a field?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.