diff --git a/README.md b/README.md index 2f96694d..255b8ea0 100755 --- a/README.md +++ b/README.md @@ -136,7 +136,7 @@ class CoffeeCartTest(BaseCase):
💡 With raw Selenium, commands that use selectors need to specify the type of selector (eg. "css selector", "button#myButton"
). With SeleniumBase, there's auto-detection between CSS Selectors and XPath, which means you don't need to specify the type of selector in your commands (but optionally you could).
💡 SeleniumBase methods often perform multiple actions in a single method call. For example, self.type(selector,text)
does the following:
1. Waits for the element to be visible.
2. Waits for the element to be interactive.
3. Clears the text field.
4. Types in the new text.
5. Presses Enter/Submit if the text ends in "\n".
With raw Selenium, those actions require multiple method calls.
💡 SeleniumBase methods often perform multiple actions in a single method call. For example, self.type(selector,text)
does the following:
1. Waits for the element to be visible.
2. Waits for the element to be interactive.
3. Clears the text field.
4. Types in the new text.
5. Presses Enter/Submit if the text ends in "\n"
.
With raw Selenium, those actions require multiple method calls.
💡 SeleniumBase uses default timeout values when not set:
✅self.click("button")
@@ -659,8 +659,8 @@ pytest test_coffee_cart.py --trace
--incognito # (Enable Chrome's Incognito mode.)
--guest # (Enable Chrome's Guest mode.)
--devtools # (Open Chrome's DevTools when the browser opens.)
---reuse-session | --rs # (Reuse browser session for all tests.)
---reuse-class-session | --rcs # (Reuse session for tests in class.)
+--rs | --reuse-session # (Reuse browser session for all tests.)
+--rcs | --reuse-class-session # (Reuse session for tests in class.)
--crumbs # (Delete all cookies between tests reusing a session.)
--disable-beforeunload # (Disable the "beforeunload" event on Chrome.)
--window-size=WIDTH,HEIGHT # (Set the browser's starting window size.)
diff --git a/examples/migration/raw_selenium/ReadMe.md b/examples/migration/raw_selenium/ReadMe.md
index 4ef9d69a..ddc489ae 100644
--- a/examples/migration/raw_selenium/ReadMe.md
+++ b/examples/migration/raw_selenium/ReadMe.md
@@ -47,7 +47,7 @@ With a complete test automation framework built, most of the hard work is alread
💡 With raw Selenium, commands that use selectors need to specify the type of selector (eg. "css selector", "button#myButton"
). With SeleniumBase, there's auto-detection between CSS Selectors and XPath, which means you don't need to specify the type of selector in your commands (but optionally you could).
💡 SeleniumBase methods often perform multiple actions in a single method call. For example, self.type(selector,text)
does the following:
1. Waits for the element to be visible.
2. Waits for the element to be interactive.
3. Clears the text field.
4. Types in the new text.
5. Presses Enter/Submit if the text ends in "\n".
With raw Selenium, those actions require multiple method calls.
💡 SeleniumBase methods often perform multiple actions in a single method call. For example, self.type(selector,text)
does the following:
1. Waits for the element to be visible.
2. Waits for the element to be interactive.
3. Clears the text field.
4. Types in the new text.
5. Presses Enter/Submit if the text ends in "\n"
.
With raw Selenium, those actions require multiple method calls.
💡 SeleniumBase uses default timeout values when not set, which means that methods automatically wait for elements to appear (up to the timeout limit) before failing:
✅self.click("button")
With raw Selenium, methods would fail instantly (by default) if an element needed more time to load:
❌self.driver.find_element(by="css selector", value="button").click()
(Reliable code is better than unreliable code.)