New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Configuration.waitForNoOverlayByJs vs waitByJsForNotOverlapped vs waitForNotOverlappedViaJs #85
Comments
yet, if waitForNotOverlappedViaJs does not give ideal explanation of what is happening... why not used waitByJsForNotOverlapped? |
Another thing... this waiting might relevant only for input type of actions (based on clear and sendKeys – Type, SetValue, PressEnter, etc.) why then name it like waitByJsForNotOverlapped if more precise and less confusing name would be something like waitByJsForNotOverlappedOnInput ? |
So from now we stay with WaitByJsForNotOverlapped? |
Still thinking :( Latest today research revealed the following: There three type of actions:
All from above are reflected in some SeleneElement.* commands... All have built in waiting "till being passed (no errors appeared). But. Only 1 (click) have built into selenium treatment for: 2 (clear, sendkeys) have built in treatment for 3 (doubleclick, contextclick, hover) have nothing :) Now goes question... Do we need ? ...
:) |
Just one more idea of naming... hm... it happens to be pretty good! Seems like at least I like more the WaitForNoOverlapFoundByJs instead of WaitByJsForNotOverlapped P.S. overlap seems to be better term that overlay, according to "google translate":) |
So... Let's really go this way (if no objections). Rename current option to WaitForNoOverlapFoundByJs, make it work for both sendKeys/clear and Actions based commands like DoubleClick. Then in #86 add automatic scroll into view by js, when WaitForNoOverlapFoundByJs == true. Then think about everything else:) Yeah, maybe we need additional options mentioned in B, C, D above, but maybe the best implementation will be found later... Especially taking into account the ability to implement hooks in NSelene. Because all we do here - is "hooking selenium webdriver behaviour by adding extra features" and we do this in a "hardcode" style - making it buit-in yet customizable. But if we implement a way to hook anything in NSelene - then anybody can do this on their own without dependency to NSelene options like WaitForNoOverlapFoundByJs. So in long-time-perspective, hooks is a more powerfull feature. Yet also more complicated in implementation. That's why let's implement WaitForNoOverlapFoundByJs for now to gain the most benefit for projects where it will help to treat overlays, and then we think on perfect implementation through hooks and other options... |
Feels more smooth in context of human language =) |
WaitByJsForNotOverlapped renamed to WaitForNoOverlapFoundByJs; covered hover and double click with tests - happened that they does not support treatments against overlay by default, they just passes under overlay with no effect – this adds one more argument for making WaitForNoOverlapFoundByJs = true by default... yet probably we can't do this right now, without proper docs or extra plugins for mobile apps with NSelene via Appium...
WaitByJsForNotOverlapped renamed to WaitForNoOverlapFoundByJs; covered hover and double click with tests - happened that they does not support treatments against overlay by default, they just passes under overlay with no effect – this adds one more argument for making WaitForNoOverlapFoundByJs = true by default... yet probably we can't do this right now, without proper docs or extra plugins for mobile apps with NSelene via Appium...
waitForNoOverlayByJs
+concise, kind of easy to explain because overlay is kind of self-explanatory
-inconsistent with inner ActualNotOverlappedWebElement that appears in error message if waiting failed
waitByJsForNotOverlapped
-not fully correct, the wait is not by js, but js is used to check if NotOverlapped...
+consistent with inner ActualNotOverlappedWebElement
waitForNotOverlappedByJs
-read like being overlapped by js, not some other element
waitForNotOverlappedViaJs
+consistent with inner ActualNotOverlappedWebElement
-kind of not ideal:) seems like... also can imply for somebody that wait is done by JS, but probably with lesser probability...
what to choose?
The text was updated successfully, but these errors were encountered: