SeleniumBase/examples/test_hack_search.py

31 lines
1.6 KiB
Python
Executable File

""" Testing the "self.set_attribute()" and "self.set_attributes()" methods
to modify a Google search into becoming a Bing search.
set_attribute() -> Modifies the attribute of the first matching element.
set_attributes() -> Modifies the attribute of all matching elements. """
from seleniumbase import BaseCase
class HackingTests(BaseCase):
def test_hack_search(self):
self.open("https://google.com/ncr")
self.assert_element('input[title="Search"]')
self.set_attribute('[action="/search"]', "action", "//bing.com/search")
self.set_attributes('[value="Google Search"]', "value", "Bing Search")
self.type('input[title="Search"]', "SeleniumBase GitHub Docs Install")
self.sleep(0.5)
self.js_click('[value="Bing Search"]')
self.highlight("h1.b_logo")
help_docs_install_link = 'a[href*="seleniumbase.io/help_docs/install"]'
if self.is_element_visible(help_docs_install_link):
self.highlight_click(help_docs_install_link)
self.assert_text("Install SeleniumBase", "h1")
self.click_link_text("GitHub branch")
self.highlight_click('a[href*="/seleniumbase/SeleniumBase"]')
self.assert_element('[href="/seleniumbase/SeleniumBase"]')
self.assert_true("seleniumbase/SeleniumBase" in self.get_current_url())
self.highlight_click('a[title="examples"]')
self.assert_text("examples", "strong.final-path")
self.highlight_click('[title="test_hack_search.py"]')
self.assert_text("test_hack_search.py", "strong.final-path")