cobrateam / cobrateam/splinter
Update detection and interaction code to use Selenium's API
- Dominant language
- Python
- Stars
- 2.7k
- Forks
- 511
- PR merge metrics
- No merged PRs in 30d
Description
I've noticed the detection / interaction code of Splinter doesn't always work as expected even with timeouts set. We should try to use Selenium's API (Explicit Wait & Expected Condition) as much as possible for all detections and interactions since Selenium is updated frequently e.g.
```
from selenium.webdriver.support import expected_conditions as EC
wait = WebDriverWait(driver, 10)
wait.until(EC.text_to_be_present_in_element((By.ID, 'someid'), 'some_text'))
```
https://youtu.be/Ap4lmIiCCnk
Referencing discussion here https://github.com/cobrateam/splinter/issues/597#issuecomment-377111031
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by locating Splinter's detection and interaction code, then compare its timeout handling with Selenium's Explicit Wait and Expected Condition APIs shown in the issue. Done means the relevant detection and interaction paths use those APIs as much as practical and no longer exhibit the reported timeout-related behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- testing-qa
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100