Welcome to the new Parasoft forums! We hope you will enjoy the site and try out some of the new features, like sharing an idea you may have for one of our products or following a category.

Record enter key in web browser testing

LegacyForum
LegacyForum Posts: 1,664 ✭✭
edited December 2016 in SOAtest
Here are the instructions to capture ENTER key in web browser testing

First, add the ability to play back pressing the ENTER key.

(1) Close SOAtest if it's open
(2) There are two copies of UserCustomizableOptions.js files - one for IE and one for Firefox - located under
<SOAtest Installation Directory>/plugins/com.parasoft.xtest.libs.web_VERSION#/root/browsers/ie
<SOAtest Installation Directory>/plugins/com.parasoft.xtest.libs.web_VERSION#/root/browsers/ff/extensions/wk@parasoft/chrome/content


where VERSION# refers to SOAtest version (ex: 6.2)

Add the following snippet at the beginning of UserCustomizableOptions.js file
CODE
_wk_BrowserDriver.prototype.doEnterKey = function(locator) {
var element = this.findElement(locator);
if (_wk_browserVersion.isIE) {
  _wk_HTMLUtil._nativeTypeChar(element, "\r", 0);
} else {
  _wk_HTMLUtil.triggerKeyEvent(element, "keydown", 13, true);
  _wk_HTMLUtil.triggerKeyEvent(element, "keyup", 13, true);
  _wk_HTMLUtil.triggerKeyEvent(element, "keypress", 13, true);
}
}


Now you can manually add tests to simulate pressing the ENTER key. However, usually you will not need to do so. SOAtest does not create a user action to press the ENTER key during recording. Rather, if you hit the ENTER key which is identical to clicking on a button, SOAtest will generate a test that clicks on the button. If there is no button but pressing ENTER submits the form (you must press the ENTER key when the focus is on an element within a <form>) then SOAtest records a Submit action. If SOAtest could not generate either a Click or a Submit action, then you will need to manually add a test to simulate pressing the ENTER key.

To manually add a test to press the ENTER key.

(1) Open up SOAtest.
(2) Right-click on the scenario into which you want to add the user action for pressing the ENTER key.
(3) From the context menu (right-click menu), choose Add New > Test... > Standard Test > Browser Testing Tool.
(4) SOAtest adds the new test to the end of the scenario. Drag and drop the new browser test into the desired position.
(5) Open the new browser test.
(6) Change to the User Action tab.
(7) Select "Other" in the "Action:" dropdown.
(8) For the "Action" text box, type EnterKey.
(9) Switch to the Pre-Action Browser Contents tab. Right-click on the element you want to have focus when you press the ENTER key and choose to Modify User Action to Use <tag> Element. Alternatively, you can manually create the element locator in the User Action tab.

When you play back the scenario, SOAtest will simulate pressing the ENTER key on the desired element.
Tagged:

Comments

  • SaskiaPega
    SaskiaPega Posts: 5

    I see 'Invalid user action: EnterKey but I'm sure I did everything right. I added the snippet right at the beginning of the correct file(s).
    As I understood what the Enter key should do is being able to add several lines to a field, for instance when you want to send an email, you don't want just 1 line in the body.
    Also there is a field that is not mentioned above.: Text Input.

    Additionally Parasoft seems to be crashing a lot, I don't know if this is related to the EnterKey, but it is really difficult to use it this way.

  • jakubiak
    jakubiak Posts: 813 admin

    It's hard to say what went wrong, since I can't verify whether the steps were followed correctly.

    SOAtest crashing is not related to modifying that file. Do you happen to be calling any third party libraries or applications from SOAtest? What kind of error messages do you get?

Tagged