cobrateam / cobrateam/splinter

Update detection and interaction code to use Selenium's API

Open
#604 0 comments 3 reactions 0 assignees View on GitHub
help wanted
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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.