Git Product home page Git Product logo

oxygen-ide's People

Contributors

delabiejochen avatar dependabot[bot] avatar ndimer avatar romovs avatar savkaoleg avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

oxygen-ide's Issues

Use 1.22.2 in IDE

oxygen cli 1.22.2 has been released but is not used in oxygen ide auto update

Generate inner text locators

It is common to have structures like this:

<code><pre>
<a href="">
<div>
<p>some text</p>
</div>
<a/>
</pre></code>

It would be useful to generate inner text based locators when clicking on the link: //a[contains(text(), "some text")]
Or even better, something more precise like: //el[@id="someid"]/a[contains(text(), "some text")] Where 'el' is some parent element with an ID.

assert* and wait* recorded only on one focused tab

Steps to reproduce:

  1. Open IDE and start recording on one tab
  2. Do assert on some text with the right click Assert text
  3. Move to another browser tab
  4. Right click on the other browser tab
  5. Do assert text on the other tab

Bug: The assert text is done on the first page instead of the page you are on!

OxygenIDE not recording anything inside ShadowDOM

No recording happening inside of a WebComponent's Shadow Root. Tried testing with WebComponents built with Stencil.js.

image

Once you click on an element inside of the ShadowRoot, only a click on the WebComponent is registered, not the element itself.

Also, I would like to expand this issue with the fact that web driver methods (like .click and .point) do not work inside of a ShadowRoot.

Combine assertText and assertValue recording

Combine assertText and assertValue in the right click menu. So It will determine the element type automatically and record either assertText or assertValue depending on the element type.

test re-recording

When re-recording a test in Oxygen, I want to have a checkbox in the toolbar, that will allow me to run the current steps until the end of the test and keep CHROME open in record mode so I will not have to perform all the initial steps before my recording.
The checkbox will allow me to choose:
A. will I manually perform all initial steps and then record
B. I will run theese steps in the test (because they are already there) and then record

Oxygen Recording not available

I don't know why but the Recording option is not available for me.
it looks like the attached screenshout
a
:
When i'm trying to click on it, i'm getting the following error:
Unable to connect to Oxygen Chrome extension.
In order to record web sites Chrome must be running and Oxygen extension for Chrome installed & enabled.

Needless to say, that the extension is installed & enabled,

Thank you.

Add capability to run a test case in oxygen in headless mode (Button)

Add a new button which will allow running tests in headless mode. I.e. instead of forcing the users to manually set the relevant capabilties:

web.init(
{ 
chromeOptions: {
args: ['--headless']
}
});

Note:
This will work for Chrome only. But should also work when a user selects to run in Responsive mode as well.

Add mobile screencast

Enable a mobile device screencast as part of Oxygen IDE
When the user connects his device to the PC he will see the device's screen in the IDE.

custom Browser list and capabilities

I would like to customize the list of browsers.
I notice it is possible to switch between "Web mode", "Mobile mode" and "Responsive mode"
But i need specific capabilities: acceptSslCerts and acceptInsecureCerts

I have not found any configuration file for that.

It also tried with a code approach
A/ Using init method
web.init({browserName:'firefox',acceptSslCerts:true,acceptInsecureCerts:true});
(by the way, the documentation of the caps parameter gives 'string' but it is an object
https://github.com/oxygenhq/oxygen/blob/dff2a342a625ec1904a28de8da1b109f262ebe76/src/ox_modules/module-web.js#L109 )

B/ Hacking the caps variable
web.caps = web.caps || {};
web.caps.acceptSslCerts=true;
web.caps.acceptInsecureCerts=true;

But in both cases those parameter does not seems to be used.
It seems it is overriden by the Oxygen IDE.

Screenshot 2021-06-10 at 16 20 29

UI for specifying commonly used mobile capabilites

Caps for dealing with permission popups:

  • autoGrantPermission
  • autoAcceptAlerts

Caps for dealing with unicode keyboards (i.e. Hebrew input issue):

  • unicodeKeyboard
  • resetKeyboard

Need to check the effects of each of those. And also should add appropriate caps (show checkboxes?) based on device type Android vs iOS

web.acceptAlert() recorded instead of web.alertAccept() and web.dismissAlert() recorded instead of web.alertDismiss()

Full reproduction video, additional screenshots, and detailed documentation are available and can be supplied upon demand.

Test Incident Report. 25/05/2021

Test Incident Report Identifier: Oxygen_IDE_1.23.1_2021-05-24_22-44-31_js_confirm_alerts_recording

Bug title: Mistyped web.alertAccept() and web.alertDismiss() functions during automation recording.

Summary: In Oxygen IDE, during automation recording of Alert response family functions on JS confirm() alert box function, the result of automatic recording included incorrect names of web.alertAccept() and web.alertDismiss() – of alert family functions – mistyped by mechanics of recording. Result consisted of web.acceptAlert(); instead of web.alertAccept() ; and web.dismissAlert(); instead of web.alertDismiss(); respectively.

Supporting materials:

“TestIncidentReport_[Oxygen_IDE_1.23.1_2021-05-24_22-44-31_js_confirm_alerts_recording].docx” – this document.

“js_confirm_web_alert_record_bug.js” – sample automatic js test procedure case recorded in Oxygen ID.

“alert_test03.html” – HTML file with sample code that has been tested to reproduce the bug.

“Oxygen_IDE_2021-05-24 22-44-31.mp4” – sample video of recording and discovering the bug.

Testing environment:

One PC laptop with licensed OS Windows 10 Pro x64 (IIS service installed and running), licensed Office2016, Chrome browser with Oxygen extension, Oxygen IDE.

Hardware specs:

Device name Dell Latitude E5550

Processor Intel® Core™ i7-5600U CPU @ 2.60GHz 2.59 GHz

Installed RAM 16.0 GB (15.9 GB usable)

System type 64-bit operating system, x64-based processor

Pen and touch No pen or touch input is available for this display

OS specs:

Edition Windows 10 Pro

Version 20H2

Installed on ‎14/‎07/‎2020

OS build 19042.985

Experience Windows Feature Experience Pack 120.2212.2020.0

Browser specs:

Google Chrome

Google Chrome is up to date

Version 90.0.4430.212 (Official Build) (64-bit)

Oxygen IDE specs:

Additional OS and SW specs:

Installed Windows features:

IIS localhost support service:

Test Procedure steps used to discover the incident :

Ensure that all the test are performed in this initial state:
running PC;
running OS;
logged in local test user (int) without administrative privileges (assigned to Users local group);
running IIS service (installed by the PowerShell command: “Enable-WindowsOptionalFeature -Online -FeatureName “IIS-DefaultDocument” –All”);
installed and running Oxygen IDE;
installed and running Chrome browser;
installed and enabled/active Oxygen IDE extension (Script recorder for Oxygen Framework.);
file “alert_test03.html” is placed in the IIS localhost www-root directory (“C:\inetpub\wwwroot\alert_test03.html”).
Switch to Oxygen IDE and start recording.
Switch to Chrome browser and go to “http://localhost/alert_test03.html”
Press the " Try it 1" button.
Press the OK button.
Press the " Try it 1" button.
Press the “Cancel” button.
Switch to Oxygen IDE and stop recording.
Save file.
Press “Run”
Check to receive the expected message: “Test finished with status --> PASSED.”
Repeat steps 1-11 enough cycles if necessary.
Test Case Specifications that will provide the information to repeat the incident :

If: User is recording an automation testing sequence in Oxygen IDE.

When: User invokes alert box of confirming type by clicking on the suitable HTML element and subsequently accepting and dismissing the alert box. The Oxygen IDE is recording corresponding web.alertAccept() and web.alertDismiss() functions accordingly.

Then: Running the recorded script in Oxygen IDE resulted in a successfully performed test run.

Expected result:

Receiving the expected message:

"

Test finished with status --> PASSED.

"

Actual results:

Receiving the script error message:

"

SCRIPT_ERROR - web.acceptAlert is not a function at C:\Users\int\Downloads\oxygen_works\oxygen_IDE_bug\js_confirm_web_alert_record_bug.js line 10

Test failed: [SCRIPT_ERROR] “web.acceptAlert is not a function” at oxygen_IDE_bug\js_confirm_web_alert_record_bug.js line 10

Test finished with status --> FAILED.

"

Test logs showing the actual execution of the test cases and procedures :

Recorded in included video file “Oxygen_IDE_2021-05-24 22-44-31.mp4”

Incident description:

In Oxygen IDE, during automation recording of Alert response family functions on JS confirm() alert box function, the result of automatic recording included incorrect names of web.alertAccept() and web.alertDismiss() – of alert family functions – mistyped by mechanics of recording. Result consisted of web.acceptAlert(); instead of web.alertAccept() ; and web.dismissAlert(); instead of web.alertDismiss(); respectively.

As result of running such code the “SCRIPT_ERROR” message is displayed, addressing the mistyped functions - by “is not a function” phrase - signifying that system have not recognized the recorded function name.

The state of browser after the failure of the script:

When incorrect names switched to the correct ones, the test behaved as expected.

Reported by tester: Vladimir Amir.

Observed by: Shay Ginsbourg.

Impact:

In small projects, this bug might not be a problem because it is easy to change the names manually.

In large projects, however, this bug might not be immediately perceivable and multiple occurrences of triggering elements in tested system might create a need for a multiple refactoring of the recorded automation script.

Priority: Major

Severity: Minor

The code of the file under test is in the
Vladimir_oxygen_IDE_1_24_0_bug.zip
appendix.

Appendix: Text of the code under test in “alert_test03.html”

JavaScript Confirm Box
Try it 1

Click the button to display an alert box.

Try it 2

Enter No:

IDE is stuck.

Hey,
Start working with the IDE today.
Every time the test fails the IDE get stuck.
It is a common bug? any ideas?
More info,
i run it on ubuntu, on chrome.
Would like to help to fix it.
:)
Chen

Oxygen IDE not installing with OpenJDK

Attempting to install Oxygen IDE 1.18.0 on a Windows 10 laptop with OpenJDK 11.0.2 installed fails with the error message:
Java Runtime Environment not installed. Please download and install JRE 8 from: https://www.java.com/en/download.

Corporate rules do not allow use of Oracle's version of Java and there doesn't appear to be an option to install the Oxygen IDE with an open source version.

File content not restored properly

  1. Open IDE
  2. Open some script
  3. Close the IDE
  4. Modify the file we previously opened using some editor.
  5. Open IDE again

The problem: old version of the file content is shown

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.