back
Avatar of Plamen Vesselinov
Author: Plamen Vesselinov
06. May 2019

Mouse Events Explained - Web

Here comes one more short Blog article, which will shed some light on the mouse events and specifically semi-hard events. QF-Test uses semi hard events as default (based on web ajax toolkit, browser and browser version, OS etc), but not all cases.

There are three event types available

  • Soft: A soft event is an artificial event which is inserted directly into the event queue. They are inserted directly at DOM/JavaScript level.
  • Semi hard: QF-Test own teminology. This is an artificial system event which gets sent to the browser. The browser has to interpret it and create the relative (soft) events for the web application.
  • Hard: a real movement of the mouse cursor and a simulation of a mouse down and mouse up which triggers a system/os event.

Set semi hard events via SUT Script before the mouse click:

rc.setOption(Options.OPT_WEB_SEMI_HARD_EVENTS, True)

reset the option via:

rc.unsetOption(Options.OPT_WEB_SEMI_HARD_EVENTS)

Comments are disabled for this post.

2 comments

Plamen

04. July 2019

Thanks Pascal! That is of course entirely correct :)

This Option in some cases can be very useful.


Pascal

20. May 2019

If the browser test selects the "WebDriver" connection mode, there is also a fourth mode: "byHost" or "byDriver" - here, clicks are played via the WebDriver protocol. The behavior of the clicks is similar to the "semi-hard", so in some cases, instead of a semi-hard click, a "byDriver" click is automatically used (for example, Classic Edge or Headless Tests).

To enable the behavior for the other WebDriver-based browser tests, you can set the option Options.OPT_WEBDRIVER_DISPATCH_SEMIHARD_BY_HOST to "true".