class UITestCase(LiveServerTestCase): def use_xvfb(self): from pyvirtualdisplay import Display self.display = Display('xvfb', visible=1, size=(1280, 1024)) self.display.start() self.driver = WebDriver() def setUp(self): try: self.driver = WebDriver() ui_is_not_available = False except WebDriverException: ui_is_not_available = True if ui_is_not_available: self.use_xvfb() self.driver.implicitly_wait(10) super(UITestCase, self).setUp() def tearDown(self): self.driver.quit() if hasattr(self, 'display'): self.display.stop() super(UITestCase, self).tearDown()
class add_group(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_add_group(self): success = True wd = self.wd wd.get("http://localhost/addressbook/") wd.find_element_by_name("pass").click() wd.find_element_by_name("user").send_keys("admin") wd.find_element_by_id("LoginForm").click() wd.find_element_by_name("pass").click() wd.find_element_by_name("pass").send_keys("secret") wd.find_element_by_xpath("//form[@id='LoginForm']/input[3]").click() wd.find_element_by_link_text("groups").click() wd.find_element_by_name("new").click() wd.find_element_by_name("group_name").click() wd.find_element_by_name("group_name").clear() wd.find_element_by_name("group_name").send_keys("123ee") wd.find_element_by_name("group_header").click() wd.find_element_by_name("group_header").clear() wd.find_element_by_name("group_header").send_keys("awdfafdsfsdsf") wd.find_element_by_name("group_footer").click() wd.find_element_by_name("group_footer").clear() wd.find_element_by_name("group_footer").send_keys("dfsdfsdfdsfsdf") wd.find_element_by_name("submit").click() wd.find_element_by_link_text("groups").click() self.assertTrue(success) def tearDown(self): self.wd.quit()
class rent_sale_filters(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_rent_sale_filters(self): success = True wd = self.wd wd.get(str(Baseurl.baseurl) + "catalog/video_13/videokameri-i-kamkorderi_128/") wd.find_element_by_xpath("//label[.='Только аренда']").click() if wd.current_url != str(Baseurl.baseurl) + "catalog/video_13/videokameri-i-kamkorderi_128/?offerType=rent": success = False print("verifyCurrentUrl failed") wait(wd, 10).until(lambda s: "Средняя цена аренды" in wd.find_element_by_xpath("//div[@class='reviews__price']").text) wd.find_element_by_xpath("//label[.='Только продажа']").click() if wd.current_url != str(Baseurl.baseurl) + "catalog/video_13/videokameri-i-kamkorderi_128/?offerType=sale": success = False print("verifyCurrentUrl failed") wait(wd, 10).until(lambda s: "Средняя цена продажи" in wd.find_element_by_xpath("//div[@class='reviews__price']").text) wd.find_element_by_xpath("//label[.='Весь каталог']").click() if wd.current_url != str(Baseurl.baseurl) + "catalog/video_13/videokameri-i-kamkorderi_128/": success = False print("verifyCurrentUrl failed") self.assertTrue(success) def tearDown(self): self.wd.quit()
class mentions(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_mentions(self): success = True wd = self.wd wd.get(str(Baseurl.baseurl) + "catalog/audio_17/mikrofoni_41/studijnie-mikrofoni_881/lentochnie_1069/product_14783_ntr") wd.find_element_by_css_selector("a.tabset__link.comments__count").click() if not ("Интересный микрофон! Давно его ждали" in wd.find_element_by_tag_name("html").text): success = False print("verifyTextPresent failed") if wd.find_element_by_id("add-review-link").text != "Оставьте свой отзыв": success = False print("verifyText failed") wd.find_element_by_id("add-review-link").click() wd.find_element_by_id("UserForm_email").click() wd.find_element_by_id("UserForm_email").clear() wd.find_element_by_id("UserForm_email").send_keys("*****@*****.**") wd.find_element_by_id("UserForm_password").click() wd.find_element_by_id("UserForm_password").clear() wd.find_element_by_id("UserForm_password").send_keys("11111") wd.find_element_by_id("submit_link").click() wd.find_element_by_css_selector("a.tabset__link.comments__count").click() if not (len(wd.find_elements_by_xpath("//div[@class='estimate__comment']")) != 0): success = False print("verifyElementPresent failed") if not (len(wd.find_elements_by_xpath("//div[@class='form__bottom']/button")) != 0): success = False print("verifyElementPresent failed") self.assertTrue(success) def tearDown(self): self.wd.quit()
class create_company(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.maximize_window() self.wd.implicitly_wait(60) def test_create_company(self): wd = self.wd wd.get("https://qa.espresa.com") wd.find_element_by_id("public_site_login").click() wd.find_element_by_id("login_login").click() wd.find_element_by_id("login_login").clear() wd.find_element_by_id("login_login").send_keys("*****@*****.**") wd.find_element_by_id("login_password").click() wd.find_element_by_id("login_password").clear() wd.find_element_by_id("login_password").send_keys("12345678") wd.find_element_by_id("login_submit").click() # [0] - need to refer to any (1-st) element in the array to call function click() wd.find_elements_by_xpath("//a[contains(text(), 'Companies')]")[0].click() # add CAD WebDriverWait(wd, 10).until( EC.visibility_of_element_located((By.XPATH, "//button[contains(text(), 'ADD NEW')]"))) WebDriverWait(wd, 10).until(EC.invisibility_of_element_located((By.CSS_SELECTOR, "div.popup-loader"))) wd.find_elements_by_xpath("//button[contains(text(), 'ADD NEW')]")[0].click() wd.find_element_by_id('inputCompanyName').send_keys('Test Company 18') wd.find_element_by_id("inputFirstName").click() wd.find_element_by_id("inputFirstName").clear() wd.find_element_by_id("inputFirstName").send_keys("Company First Name 18") wd.find_element_by_id("inputLastName").click() wd.find_element_by_id("inputLastName").clear() wd.find_element_by_id("inputLastName").send_keys("Company Last Name 18") wd.find_element_by_id("inputLogin").click() wd.find_element_by_id("inputLogin").clear() wd.find_element_by_id("inputLogin").send_keys("*****@*****.**") wd.find_element_by_id("inputPhone").click() wd.find_element_by_id("inputPhone").clear() wd.find_element_by_id("inputPhone").send_keys("12345678") wd.find_element_by_id("inputFax").click() wd.find_element_by_id("inputFax").clear() wd.find_element_by_id("inputFax").send_keys("12345678") wd.find_element_by_xpath("//div[@class='form-horizontal']//span[.='+ add address']").click() wd.find_element_by_xpath("//div[@class='modal-body']/div/div[1]/div[2]/input").click() wd.find_element_by_xpath("//div[@class='modal-body']/div/div[1]/div[2]/input").clear() wd.find_element_by_xpath("//div[@class='modal-body']/div/div[1]/div[2]/input").send_keys("San Francisco") wd.find_element_by_xpath("//div[@class='modal-body']/div/div[2]/div[2]/input").click() wd.find_element_by_xpath("//div[@class='modal-body']/div/div[2]/div[2]/input").clear() wd.find_element_by_xpath("//div[@class='modal-body']/div/div[2]/div[2]/input").send_keys("San Francisco") wd.find_element_by_xpath("//div[@class='modal-body']/div/div[4]/div[2]/input").click() wd.find_element_by_xpath("//div[@class='modal-body']/div/div[4]/div[2]/input").clear() wd.find_element_by_xpath("//div[@class='modal-body']/div/div[4]/div[2]/input").send_keys("12345") wd.find_element_by_xpath("//div[@class='modal-content']//button[.='ADD']").click() self.wd.implicitly_wait(200) wd.find_element_by_id('inputSite').send_keys('www.test.com') wd.find_element_by_id('inputDescription').send_keys('test') wd.find_element_by_id("inputPoints").send_keys("1000") wd.find_element_by_xpath("//div[@class='nav-bar-button']//button[.='SAVE & EXIT']").click() def tearDown(self): print('OK')
class test_add_group(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_test_add_group(self): success = True wd = self.wd wd.get("http://localhost/addressbook/") wd.find_element_by_name("user").click() wd.find_element_by_name("user").clear() wd.find_element_by_name("user").send_keys("admin") wd.find_element_by_id("LoginForm").click() wd.find_element_by_name("pass").click() wd.find_element_by_name("pass").clear() wd.find_element_by_name("pass").send_keys("secret") wd.find_element_by_css_selector("input[type=\"submit\"]").click() wd.find_element_by_link_text("groups").click() wd.find_element_by_name("new").click() wd.find_element_by_name("group_name").click() wd.find_element_by_name("group_name").clear() wd.find_element_by_name("group_name").send_keys("hghgf") wd.find_element_by_name("group_header").click() wd.find_element_by_name("group_header").clear() wd.find_element_by_name("group_header").send_keys("fghfgh") wd.find_element_by_name("group_footer").click() wd.find_element_by_name("group_footer").clear() wd.find_element_by_name("group_footer").send_keys("fghfghfghfd") wd.find_element_by_name("submit").click() wd.find_element_by_link_text("group page").click() wd.find_element_by_link_text("Logout").click() self.assertTrue(success) def tearDown(self): self.wd.quit()
class placing_order_popup_present(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_placing_order_popup_present(self): success = True wd = self.wd wd.get(str(Baseurl.baseurl) + "catalog/video_13/videokameri-i-kamkorderi_128/xdcam_460/product_12700_pxw-x200") wd.find_element_by_link_text("Войти").click() wd.find_element_by_id("UserForm_email").click() wd.find_element_by_id("UserForm_email").clear() wd.find_element_by_id("UserForm_email").send_keys("*****@*****.**") wd.find_element_by_id("UserForm_password").click() wd.find_element_by_id("UserForm_password").clear() wd.find_element_by_id("UserForm_password").send_keys("11111") wd.find_element_by_id("submit_link").click() wd.find_element_by_link_text("Заказать").click() if not (len(wd.find_elements_by_xpath("//button[@class='submit-request metrika']")) != 0): success = False print("verifyElementPresent failed") if not (len(wd.find_elements_by_xpath("//button[@class='ui-button-cancel']")) != 0): success = False print("verifyElementPresent failed") wd.find_element_by_css_selector("button.submit-request.metrika").click() if not (len(wd.find_elements_by_id("request-success")) != 0): success = False print("verifyElementPresent failed") self.assertTrue(success) def tearDown(self): self.wd.quit()
class static_page_feedback(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_static_page_feedback(self): success = True wd = self.wd wd.get(str(Baseurl.baseurl)) wd.find_element_by_xpath("//div[@class='ftr__nav']//a[.='Обратная связь']").click() if not (len(wd.find_elements_by_xpath("//div[@class='cnt']//h1[.='Связаться с нами']")) != 0): success = False print("verifyElementPresent failed") if not ("Если вы хотите предложить сотрудничество, сообщить о новости или теме для" in wd.find_element_by_tag_name("html").text): success = False print("verifyTextPresent failed") if not (len(wd.find_elements_by_id("Feedback_username")) != 0): success = False print("verifyElementPresent failed") if not (len(wd.find_elements_by_id("Feedback_contacts")) != 0): success = False print("verifyElementPresent failed") if not (len(wd.find_elements_by_id("Feedback_message")) != 0): success = False print("verifyElementPresent failed") if not (len(wd.find_elements_by_name("yt0")) != 0): success = False print("verifyElementPresent failed") self.assertTrue(success) def tearDown(self): self.wd.quit()
class delivery4(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_delivery4(self): success = True wd = self.wd wd.get("http://delivery.oorraa.com/") wd.find_element_by_id("from_city_name").click() wd.find_element_by_id("from_city_name").clear() wd.find_element_by_id("from_city_name").send_keys(u"Москва") wd.find_element_by_link_text(u"Москва, г. Москва").click() wd.find_element_by_id("to_city_name").click() wd.find_element_by_id("to_city_name").clear() wd.find_element_by_id("to_city_name").send_keys(u"Санкт-Петербург") wd.find_element_by_link_text(u"Санкт-Петербург, г. Санкт-Петербург").click() wd.find_element_by_id("gab_x").click() wd.find_element_by_id("gab_x").clear() wd.find_element_by_id("gab_x").send_keys("10") wd.find_element_by_id("gab_y").click() wd.find_element_by_id("gab_y").clear() wd.find_element_by_id("gab_y").send_keys("20") wd.find_element_by_id("gab_z").click() wd.find_element_by_id("gab_z").clear() wd.find_element_by_id("gab_z").send_keys("30") wd.find_element_by_id("weight").click() wd.find_element_by_id("weight").clear() wd.find_element_by_id("weight").send_keys("40") wd.find_element_by_css_selector("input.price_submit").click() wd.find_element_by_xpath("//div[@id='price_marker_container']/div[1]").click() self.assertTrue(success) def tearDown(self): self.wd.quit()
class testPresenceOfContactInfoPage(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_testPresenceOfContactInfoPage(self): success = True wd = self.wd wd.get("https://www.homejoy.com/") if not ("Get Your Place Cleaned" in wd.find_element_by_tag_name("html").text): success = False print("verifyTextPresent failed") wd.find_element_by_link_text("BOOK APPOINTMENT").click() if not ("Number of hours to book" in wd.find_element_by_tag_name("html").text): success = False print("verifyTextPresent failed") if not wd.find_element_by_xpath("//form[@id='home-size-form']/div/div[1]/select//option[3]").is_selected(): wd.find_element_by_xpath("//form[@id='home-size-form']/div/div[1]/select//option[3]").click() if not ("100% Satisfaction Guarantee" in wd.find_element_by_tag_name("html").text): success = False print("verifyTextPresent failed") wd.find_element_by_xpath("//div[@id='info-pane-person']//button[.='Next']").click() if not ("Enter Contact Info" in wd.find_element_by_tag_name("html").text): success = False print("verifyTextPresent failed") self.assertTrue(success) def tearDown(self): self.wd.quit()
class vacancy_create_and_edit(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_vacancy_create_and_edit(self): success = True wd = self.wd wd.get(str(Baseurl.baseurl) + "resume") wd.find_element_by_link_text("Разместить вакансию").click() wd.find_element_by_id("UserForm_email").click() wd.find_element_by_id("UserForm_email").clear() wd.find_element_by_id("UserForm_email").send_keys("*****@*****.**") wd.find_element_by_id("UserForm_password").click() wd.find_element_by_id("UserForm_password").clear() wd.find_element_by_id("UserForm_password").send_keys("1111") wd.find_element_by_id("submit_link").click() wd.find_element_by_id("Vacancy_name").click() wd.find_element_by_id("Vacancy_name").clear() wd.find_element_by_id("Vacancy_name").send_keys("Создание вакансии") if not wd.find_element_by_id("select2-drop-mask").is_selected(): wd.find_element_by_id("select2-drop-mask").click() self.assertTrue(success) def tearDown(self): self.wd.quit()
class FunctionalTest(LiveServerTestCase): def setUp(self): self.browser = WebDriver() self.browser.implicitly_wait(5) def tearDown(self): self.browser.quit() def wait_for(self, function_with_assertion, timeout=DEFAULT_WAIT): start_time = time.time() while time.time() - start_time < timeout: try: return function_with_assertion() except (AssertionError, WebDriverException): time.sleep(0.1) return function_with_assertion() def create_pre_authenticated_session(self, email, password, *args, **kwargs): session_key = create_pre_authenticated_session(email, password, *args, **kwargs) # To set a cookie we need to first visit the domain... # 404 pages load the fastest... self.browser.get(self.live_server_url + '/404_no_such_url/') self.browser.add_cookie({ 'name': settings.SESSION_COOKIE_NAME, 'value': session_key, 'path': '/' })
class reg_mail(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_reg_mail(self): success = True wd = self.wd wd.get("http://php7-test.tvkinoradio.ru/") wd.find_element_by_link_text("Регистрация").click() wd.find_element_by_id("UserForm_first_name").click() wd.find_element_by_id("UserForm_first_name").clear() wd.find_element_by_id("UserForm_first_name").send_keys("Sergey") wd.find_element_by_id("UserForm_last_name").click() wd.find_element_by_id("UserForm_last_name").clear() wd.find_element_by_id("UserForm_last_name").send_keys("Test") wd.find_element_by_id("UserForm_email").click() wd.find_element_by_id("UserForm_email").clear() wd.find_element_by_id("UserForm_email").send_keys("*****@*****.**") wd.find_element_by_id("UserForm_password").click() wd.find_element_by_id("UserForm_password").clear() wd.find_element_by_id("UserForm_password").send_keys("12345") wd.find_element_by_id("UserForm_verifyPassword").click() wd.find_element_by_id("UserForm_verifyPassword").clear() wd.find_element_by_id("UserForm_verifyPassword").send_keys("12345") wd.find_element_by_xpath("//form[@id='yw1']/div[7]/input").click() self.assertTrue(success) def tearDown(self): self.wd.quit()
class test_add_group(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_add_group(self): wd = self.wd
class event_displaying_properly(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_event_displaying_properly(self): success = True wd = self.wd wd.get(str(Baseurl.baseurl) + "events") if not (len(wd.find_elements_by_xpath("//div[@class='events']/div[1]//img")) != 0): success = False print("verifyElementPresent failed") if not (len(wd.find_elements_by_xpath("//div[@class='events']/div[1]//div[@class='event__ttl']")) != 0): success = False print("verifyElementPresent failed") if not (len(wd.find_elements_by_xpath("//div[@class='events']/div[1]//i[@class='ico ico_place']")) != 0): success = False print("verifyElementPresent failed") if not (len(wd.find_elements_by_xpath("//div[@class='events']/div[1]//span[@class='event__mark']")) != 0): success = False print("verifyElementPresent failed") self.assertTrue(success) def tearDown(self): self.wd.quit()
class Application: def __init__(self): self.wd = WebDriver() self.wd.implicitly_wait(10) self.session = SessionHelper(self) self.group = GroupHelper(self) self.new_member = MemberHelper(self) def is_valid(self): try: self.wd.current_url return True except: return False def open_home_page(self): wd = self.wd wd.get("http://localhost/addressbook/addressbook/") # wd.get("http://localhost/addressbook/") def destroy(self): self.wd.quit()
class add_group(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def go_home_page(self, wd): wd.get("http://localhost/addressbook/") def login(self, wd, username, password): self.go_home_page(wd) wd.find_element_by_name("user").click() wd.find_element_by_name("user").clear() wd.find_element_by_name("user").send_keys(username) wd.find_element_by_name("pass").click() wd.find_element_by_name("pass").clear() wd.find_element_by_name("pass").send_keys(password) wd.find_element_by_css_selector("input[type=\"submit\"]").click() def go_to_groups_page(self, wd): wd.find_element_by_link_text("groups").click() def add_new_group(self, wd, g_name, g_header, g_footer): self.go_to_groups_page(wd) wd.find_element_by_name("new").click() wd.find_element_by_name("group_name").click() wd.find_element_by_name("group_name").clear() wd.find_element_by_name("group_name").send_keys(g_name) wd.find_element_by_css_selector("#content > form").click() wd.find_element_by_name("group_header").click() wd.find_element_by_name("group_header").clear() wd.find_element_by_name("group_header").send_keys(g_header) wd.find_element_by_name("group_footer").click() wd.find_element_by_name("group_footer").clear() wd.find_element_by_name("group_footer").send_keys(g_footer) wd.find_element_by_name("submit").click() self.go_to_groups_page(wd) def logout(self, wd): self.click_on_home(wd) wd.find_element_by_link_text("Logout").click() def click_on_home(self, wd): wd.find_element_by_link_text("home").click() def test_add_group(self): wd = self.wd self.login(wd, username = "******",password = "******") self.add_new_group(wd, g_name="test", g_header="test", g_footer="foot") self.logout(wd) def test_add_empty_group(self): wd = self.wd self.login(wd, username = "******",password = "******") self.add_new_group(wd, g_name="", g_header="", g_footer="") self.logout(wd) def tearDown(self): self.wd.quit()
class catalog_join_company_create(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_catalog_join_company_create(self): success = True wd = self.wd wd.get(str(Baseurl.baseurl) + "catalog") wd.find_element_by_link_text("Присоединяйтесь").click() wd.find_element_by_id("registration_button").click() wd.find_element_by_link_text("Авторизоваться").click() wd.find_element_by_id("UserForm_email").click() wd.find_element_by_id("UserForm_email").clear() wd.find_element_by_id("UserForm_email").send_keys("*****@*****.**") wd.find_element_by_id("UserForm_password").click() wd.find_element_by_id("UserForm_password").clear() wd.find_element_by_id("UserForm_password").send_keys("11111") wd.find_element_by_id("submit_link").click() wd.find_element_by_link_text("Создать профиль").click() if wd.current_url != str(Baseurl.baseurl) + "company/create": success = False print("verifyCurrentUrl failed") self.assertTrue(success) def tearDown(self): self.wd.quit()
class test_santon(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_test_santon(self): success = True wd = self.wd wd.get("http://santehnika-online.ru/") wd.find_element_by_link_text("Акриловые ванны").click() wd.find_element_by_css_selector("img[alt=\"Акриловая ванна Serena Classic (170 см)\"]").click() wd.find_element_by_css_selector("#cmplproduct88078 > div.block_option > label.switch > span.switch").click() wd.find_element_by_id("linked_9_88078").click() wd.find_element_by_css_selector("#cmplproduct533850 > div.block_option > label.switch > span.switch").click() wd.find_element_by_id("linked_11_533850").click() wd.find_element_by_link_text("Акриловые ванны").click() wd.find_element_by_css_selector("img[alt=\"Акриловая ванна Aquanet Nord (170 см)\"]").click() wd.find_element_by_css_selector("span.switch").click() if not wd.find_element_by_id("linked_1_33825").is_selected(): wd.find_element_by_id("linked_1_33825").click() wd.find_element_by_xpath("//div[@class='borgray']/div[1]/div[2]/input").click() wd.find_element_by_id("simplemodal-overlay").click() wd.find_element_by_css_selector("div.owl-wrapper-outer").click() wd.find_element_by_css_selector("#floating_form_cart > div.ofzakinput > input.yellow").click() wd.find_element_by_id("NEW_LOGIN").click() wd.find_element_by_id("NEW_LOGIN").clear() wd.find_element_by_id("NEW_LOGIN").send_keys("+7 (977) 777-77-71") wd.find_element_by_id("NEW_EMAIL").click() wd.find_element_by_id("NEW_EMAIL").clear() wd.find_element_by_id("NEW_EMAIL").send_keys("*****@*****.**") wd.find_element_by_id("order_ajax_button").click() self.assertTrue(success) def tearDown(self): self.wd.quit()
class profile_wall_displayed_properly(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_profile_wall_displayed_properly(self): success = True wd = self.wd wd.get(str(Baseurl.baseurl)) wd.find_element_by_link_text("Войти").click() wd.find_element_by_id("UserForm_email").click() wd.find_element_by_id("UserForm_email").clear() wd.find_element_by_id("UserForm_email").send_keys("*****@*****.**") wd.find_element_by_id("UserForm_password").click() wd.find_element_by_id("UserForm_password").clear() wd.find_element_by_id("UserForm_password").send_keys("1111") wd.find_element_by_id("submit_link").click() wd.find_element_by_xpath("//ul[@id='yw1']//strong[.=' Фотографии']").click() wd.find_element_by_xpath("//div[@class='btn__holder']//span[.='Добавить альбом']").click() wd.find_element_by_id("Album_name").click() wd.find_element_by_id("Album_name").clear() wd.find_element_by_id("Album_name").send_keys("New album") wd.find_element_by_id("Album_body").click() wd.find_element_by_id("Album_body").clear() wd.find_element_by_id("Album_body").send_keys("Sample description") wd.find_element_by_name("yt0").click() self.assertTrue(success) def tearDown(self): self.wd.quit()
class profile_communities_displayed_properly(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_profile_communities_displayed_properly(self): success = True wd = self.wd wd.get(str(Baseurl.baseurl) + "login") wd.find_element_by_id("UserForm_email").click() wd.find_element_by_id("UserForm_email").clear() wd.find_element_by_id("UserForm_email").send_keys("*****@*****.**") wd.find_element_by_id("UserForm_password").click() wd.find_element_by_id("UserForm_password").clear() wd.find_element_by_id("UserForm_password").send_keys("1111") wd.find_element_by_id("submit_link").click() wd.find_element_by_xpath("//ul[@id='yw1']//strong[.=' Сообщества']").click() wd.find_element_by_link_text("Мои группы").click() if not ("Вы управляете 0 группами" in wd.find_element_by_tag_name("html").text): success = False print("verifyTextPresent failed") wd.find_element_by_link_text("Подписки").click() if not ("Вы состоите в 0 группах" in wd.find_element_by_tag_name("html").text): success = False print("verifyTextPresent failed") self.assertTrue(success) def tearDown(self): self.wd.quit()
class test_add_group(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_test_add_group(self): success = True wd = self.wd wd.get("http://*****:*****@id='LoginForm']/input[3]").click() wd.find_element_by_link_text("Группы").click() wd.find_element_by_name("new").click() wd.find_element_by_name("group_name").click() wd.find_element_by_name("group_name").clear() wd.find_element_by_name("group_name").send_keys("test_group") wd.find_element_by_name("submit").click() wd.find_element_by_link_text("Выйти").click() wd.find_element_by_name("pass").click() wd.find_element_by_name("pass").send_keys("\\undefined") wd.find_element_by_name("user").click() wd.find_element_by_name("user").clear() wd.find_element_by_name("user").send_keys("admin") self.assertTrue(success) def tearDown(self): self.wd.quit()
class SimpleSelTest(unittest.TestCase): __test__ = False def setUp(self): self.caps['name'] = 'Selenium Testing' if (os.environ.get('TRAVIS')): self.caps['tunnel-identifier'] = os.environ['TRAVIS_JOB_NUMBER'] self.caps['build'] = os.environ['TRAVIS_BUILD_NUMBER'] self.caps['tags'] = [os.environ['TRAVIS_PYTHON_VERSION'], 'CI'] self.username = os.environ['SAUCE_USERNAME'] self.key = os.environ['SAUCE_ACCESS_KEY'] hub_url = "%s:%s@localhost:4445" % (self.username, self.key) self.driver = webdriver.Remote(desired_capabilities=self.caps, command_executor="http://%s/wd/hub" % hub_url) else: self.driver = WebDriver() self.jobid = self.driver.session_id self.driver.implicitly_wait(60) print "Sauce Labs job: https://saucelabs.com/jobs/%s" % self.jobid def test_SimpleSelTest(self): success = True wd = self.driver wd.get("http://127.0.0.1:8080/") wd.find_element_by_link_text("Concept list").click() wd.find_element_by_link_text("Roadmap list").click() wd.find_element_by_link_text("Feedback/Questions").click() wd.find_element_by_link_text("About").click() wd.find_element_by_link_text("Sign in").click() wd.find_element_by_link_text("Sign up").click() self.assertTrue(success) def tearDown(self): self.driver.quit()
class test_add_project(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_test_add_project(self): success = True wd = self.wd wd.get("http://localhost/mantisbt-1.2.19/login_page.php") wd.find_element_by_name("username").click() wd.find_element_by_name("username").clear() wd.find_element_by_name("username").send_keys("administrator") wd.find_element_by_name("password").click() wd.find_element_by_name("password").clear() wd.find_element_by_name("password").send_keys("root") wd.find_element_by_css_selector("input.button").click() wd.find_element_by_xpath("//table[@class='width75']//td[normalize-space(.)='']").click() wd.find_element_by_name("name").click() wd.find_element_by_name("name").clear() wd.find_element_by_name("name").send_keys("Project 1") wd.find_element_by_name("description").click() wd.find_element_by_name("description").clear() wd.find_element_by_name("description").send_keys("test") wd.find_element_by_css_selector("input.button").click() self.assertTrue(success) def tearDown(self): self.wd.quit()
class webHelper(): def __init__(self): self.success = True self.wd = WebDriver() self.wd.implicitly_wait(60) def setText(self, locator, text): self.wd.find_element_by_xpath(locator).click() self.wd.find_element_by_xpath(locator).clear() self.wd.find_element_by_xpath(locator).send_keys(text) def selectCheckbox(self, locator): if not self.wd.find_element_by_xpath(locator).is_selected(): self.wd.find_element_by_xpath(locator).click() def unselectCheckBox(self, locator): if self.wd.find_element_by_xpath(locator).is_selected(): self.wd.find_element_by_xpath(locator).click() def clickButton(self, locator): self.wd.find_element_by_xpath(locator).click() def open(self,locator): self.wd.get(locator)
class catalog_join_partner_request(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_(self): success = True wd = self.wd wd.get(str(Baseurl.baseurl) + "join") wd.find_element_by_link_text("Регистрация").click() wd.find_element_by_link_text("Авторизоваться").click() wd.find_element_by_id("UserForm_email").click() wd.find_element_by_id("UserForm_email").clear() wd.find_element_by_id("UserForm_email").send_keys("*****@*****.**") wd.find_element_by_id("UserForm_password").click() wd.find_element_by_id("UserForm_password").clear() wd.find_element_by_id("UserForm_password").send_keys("1111") wd.find_element_by_id("submit_link").click() wd.find_element_by_link_text("Отправить запрос").click() wd.find_element_by_css_selector("button.submit-request").click() if not (len(wd.find_elements_by_xpath("//div[@aria-describedby='request-success']")) != 0): success = False print("verifyElementPresent failed") self.assertTrue(success) def tearDown(self): self.wd.quit()
class single_event_displayed_properly(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_single_event_displayed_properly(self): success = True wd = self.wd wd.get(str(Baseurl.baseurl) + "events") wd.find_element_by_css_selector("div.event__ttl > a").click() if not (len(wd.find_elements_by_xpath("//div[@class='post__img']/a/img")) != 0): success = False print("verifyElementPresent failed") if not (len(wd.find_elements_by_xpath("//li[@class='post__entry_date']/p[1]")) != 0): success = False print("verifyElementPresent failed") if not (len(wd.find_elements_by_xpath("//li[@class='post__entry_date']/p[2]")) != 0): success = False print("verifyElementPresent failed") if not (len(wd.find_elements_by_id("join_link")) != 0): success = False print("verifyElementPresent failed") if not (len(wd.find_elements_by_css_selector("li.post__entry_address > p")) != 0): success = False print("verifyElementPresent failed") if not (len(wd.find_elements_by_css_selector("div.post__info.line")) != 0): success = False print("verifyElementPresent failed") if not (len(wd.find_elements_by_css_selector("h3.post__section-ttl")) != 0): success = False print("verifyElementPresent failed") self.assertTrue(success) def tearDown(self): self.wd.quit()
class forsevascript(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_forsevascript(self): success = True wd = self.wd wd.find_element_by_link_text("add new").click() wd.find_element_by_name("theform").click() wd.find_element_by_name("firstname").click() wd.find_element_by_name("firstname").clear() wd.find_element_by_name("firstname").send_keys("123") wd.find_element_by_name("middlename").click() wd.find_element_by_name("middlename").clear() wd.find_element_by_name("middlename").send_keys("123") wd.find_element_by_name("lastname").click() wd.find_element_by_name("lastname").clear() wd.find_element_by_name("lastname").send_keys("123") wd.find_element_by_xpath("//div[@id='content']/form/input[21]").click() wd.find_element_by_link_text("home page").click() wd.find_element_by_link_text("Logout").click() self.assertTrue(success) def tearDown(self): self.wd.quit()
class companies_navigation(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_companies_navigation(self): success = True wd = self.wd wd.get(str(Baseurl.baseurl)) wd.find_element_by_link_text("Компании").click() if wd.find_element_by_css_selector("h1.cnt__ttl").text != "Компании": success = False print("verifyText failed") if wd.find_element_by_css_selector("b").text != "Поиск по категориям": success = False print("verifyText failed") if wd.find_element_by_xpath("//div[@class='cnt']//b[.='Новые компании']").text != "Новые компании": success = False print("verifyText failed") if wd.find_element_by_css_selector("p.news_title > b").text != "Новости компаний": success = False print("verifyText failed") wd.find_element_by_id("keywords").click() wd.find_element_by_id("keywords").clear() wd.find_element_by_id("keywords").send_keys("ООО Корпорация DNK") wd.find_element_by_id("filter-by-keywords").click() wd.find_element_by_link_text("ООО Корпорация DNK").click() self.assertTrue(success) def tearDown(self): self.wd.quit()
class Application: def __init__(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def open_main_page(self): wd = self.wd wd.get("http://localhost/addressbook/index.php") def logout(self): wd = self.wd wd.find_element_by_link_text("Logout").click() def new_contact(self, data): wd = self.wd wd.find_element_by_link_text("add new").click() def login(self, username, password): wd = self.wd self.open_main_page() wd.find_element_by_name("user").click() wd.find_element_by_name("user").clear() wd.find_element_by_name("user").send_keys("%s" % username) wd.find_element_by_name("pass").click() wd.find_element_by_name("pass").clear() wd.find_element_by_name("pass").send_keys("%s" % password) wd.find_element_by_xpath("//form[@id='LoginForm']/input[3]").click() def destroy(self): self.wd.quit()
class test_2(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_test_2(self): success = True wd = self.wd wd.get("https://www.dormis.com/") wd.find_element_by_name("send").click() wd.find_element_by_xpath("//div[@class='search-filters']/div/div[3]/div[4]/div[3]").click() wd.find_element_by_css_selector("a.ngm-thumb-img").click() self.assertTrue(success) def tearDown(self): self.wd.quit()
def work(pid): print('Starting %s' % str(pid)) wd = WebDriver() wd.set_window_size(1280, 1000) wd.implicitly_wait(15) try: wd.get("http://trumpdonald.org/") while True: wd.find_element_by_id("can").click() finally: raise Exception("Test exited. pid=%s" % str(pid)) wd.quit() return None
def firefox_webdriver_factory( accept_language: str = 'en-us, en') -> FirefoxWebDriver: """ Create a firefox webdriver, in headless mode or not, depending on the setting HEADLESS_TEST_MODE """ options = FirefoxOptions() options.headless = settings.HEADLESS_TEST_MODE profile = FirefoxProfile() profile.set_preference('intl.accept_languages', accept_language) profile.update_preferences() selenium = FirefoxWebDriver(options=options, firefox_profile=profile) selenium.implicitly_wait(15) return selenium
class add_pozov(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def open_hpme_pages(self, wd): wd.get("http://10.100.7.71:57775/osop/LoginForm.csp") def login(self, wd, username, password): wd.find_element_by_name("username").click() wd.find_element_by_name("username").clear() wd.find_element_by_name("username").send_keys(username) wd.find_element_by_name("password").click() wd.find_element_by_name("password").clear() wd.find_element_by_name("password").send_keys("%s" % password) wd.find_element_by_css_selector("input.btn.btn-primary").click() def test_add_pozov(self): success = True wd = self.wd self.open_hpme_pages(wd) self.login(wd, username="******", password="******") # open groups page wd.find_element_by_id("button-1015-btnInnerEl").click() wd.find_element_by_id("menuitem-1027-itemEl").click() wd.find_element_by_id("button-1062-btnInnerEl").click() wd.find_element_by_id("datefield-1178-trigger-picker").click() wd.find_element_by_xpath( "//td[@id='datepicker-1197-cell-30']//div[.='31']").click() wd.find_element_by_id("treecombo-1179-trigger-picker").click() wd.find_element_by_xpath( "//table[@id='treeview-1183-record-124']//span[.='Інформація в органи влади']" ).click() wd.find_element_by_id("textfield-1188-inputEl").click() wd.find_element_by_id("textfield-1188-inputEl").clear() wd.find_element_by_id("textfield-1188-inputEl").send_keys("1") wd.find_element_by_id("textfield-1189-inputEl").click() wd.find_element_by_id("textfield-1189-inputEl").clear() wd.find_element_by_id("textfield-1189-inputEl").send_keys("2") wd.find_element_by_id("button-1195-btnInnerEl").click() wd.find_element_by_id("button-1005-btnInnerEl").click() wd.find_element_by_id("button-1038-btnInnerEl").click() wd.find_element_by_id("button-1006-btnInnerEl").click() self.assertTrue(success) def tearDown(self): self.wd.quit()
class BaseStoreTest(StaticLiveServerTestCase): def by_id(self, id): return self.selenium.find_element_by_id(id) def by_css(self, selector): return self.selenium.find_element_by_css_selector(selector) def by_name(self, name: str): return self.selenium.find_element_by_name(name) def setUp(self): self.selenium = WebDriver() self.selenium.implicitly_wait(SELENIUM_WAIT_SEC) create_user(TEST_USER, TEST_PASSWORD, TEST_EMAIL) def tearDown(self): delete_user(TEST_USER) self.selenium.quit() super().tearDown() def go_to(self, url_name: str, kwargs: Dict[str, str] = None) -> None: app_url = reverse(url_name, kwargs=kwargs) self.selenium.get('%s%s' % (self.live_server_url, app_url)) def go_to_app(self, app_id): self.go_to('app-detail', {'id': app_id}) def go_to_app_register(self): self.go_to('app-register') def go_to_app_upload(self): self.go_to('app-upload') def login(self, user: str = TEST_USER, password: str = TEST_PASSWORD): self.selenium.get('%s%s' % (self.live_server_url, '/login/')) user_input = self.selenium.find_element_by_name("login") user_input.send_keys(user) pass_input = self.selenium.find_element_by_name("password") pass_input.send_keys(password) self.selenium.find_element_by_xpath('//button[@type="submit"]').click() def wait_for(self, selector: str, then: Callable[[WebElement], None]) -> None: element = WebDriverWait(self.selenium, SELENIUM_WAIT_SEC).until( EC.visibility_of_element_located((By.CSS_SELECTOR, selector))) then(element)
class simple_test(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_simple_test(self): success = True wd = self.wd wd.get("http://filesync.net/") if not ("Welcome to filesync.net!!" in wd.find_element_by_tag_name("html").text): success = False print("verifyTextPresent failed") self.assertTrue(success) def tearDown(self): self.wd.quit()
def send_offer(cipher, job_reference, client, buyer_reference, worker_reference): driver = WebDriver() driver.implicitly_wait(time_to_wait=10) # Login selenium_login(webdriver=driver) # Worker's page driver.get('https:/www.odesk.com/users/%s' % cipher) driver.find_element_by_link_text("Contact").click() # Make an offer link driver.find_element_by_id("jsMakeOfferLink").click() el = driver.find_element_by_css_selector("#jsTeamSelector > select") el.find_element_by_css_selector("option[value=\"%s\"]" % buyer_reference).\ click() driver.find_element_by_id("jsMakeOfferProceed").click() # Sign in to make an offer driver.find_element_by_id("password").clear() driver.find_element_by_id("password").send_keys(settings.ODESK_TEST_ACC_PASS) try: driver.find_element_by_id("answer").clear() driver.find_element_by_id("answer").send_keys(settings.ODESK_TEST_ACC_ANSWER) except selenium.exceptions.NoSuchElementException: pass driver.find_element_by_id("submitButton").click() # Make an offer form driver.find_element_by_id("useExistingJob-yes").click() el = driver.find_element_by_id("jobPosting") el.find_element_by_css_selector("option[value=\"%s\"]" % job_reference).\ click() driver.find_element_by_id("employerRate").clear() driver.find_element_by_id("employerRate").send_keys("0.01") driver.find_element_by_id("setLimit-yes").click() driver.find_element_by_id("limit").clear() driver.find_element_by_id("limit").send_keys("0") driver.find_element_by_id("submitButton").click() # Agreement driver.find_element_by_id("agreement").click() driver.find_element_by_id("submitButton").click() driver.close()
class testtest(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_testtest(self): success = True wd = self.wd wd.get("http://*****:*****@id='maintable']/tbody/tr[2]/td[8]/a/img").click() self.assertTrue(success) def tearDown(self): self.wd.quit()
class MySeleniumTests(StaticLiveServerTestCase): def setUp(self): super(MySeleniumTests, self).setUp() self.selenium = WebDriver() self.user = CustomUser.objects.create_user(id=1, username='******', password='******', email='*****@*****.**', adress='50 rue du test', city='Test', postal_code='00000') self.temp = Temperature.objects.create( id=1, temperature=22.01, date='29.85 2020-07-23 09:24:36.534325+00:00', idUser=self.user) self.user.save(), self.temp.save() def tearDown(self): self.selenium.quit() super(MySeleniumTests, self).tearDown() def test_login(self, username="******", password="******"): self.selenium.get('%s%s' % (self.live_server_url, "/authenticate/login/")) self.selenium.implicitly_wait(1) self.selenium.find_element_by_id('authenticate').is_displayed() self.selenium.find_element_by_name("username").send_keys(username) self.selenium.find_element_by_name("password").send_keys(password) self.selenium.find_element_by_id("button_login").click() self.selenium.implicitly_wait(1) self.selenium.find_element_by_id( "logout").is_displayed() # check if logout img is displayed def test_dashboard_view(self, username="******", password="******"): self.selenium.get('%s%s' % (self.live_server_url, "/authenticate/login/")) self.selenium.implicitly_wait(1) self.selenium.find_element_by_id('authenticate').is_displayed() self.selenium.find_element_by_name("username").send_keys(username) self.selenium.find_element_by_name("password").send_keys(password) self.selenium.find_element_by_id("button_login").click() self.selenium.implicitly_wait(1) self.selenium.find_element_by_id("my_temperatures").click() self.selenium.implicitly_wait(1) self.selenium.find_element_by_id("myChart")
class Application: def __init__(self): self.wd = WebDriver() self.wd.implicitly_wait(60) self.session = SessionHelper(self) self.group = GroupHelper(self) def open_home_page(self): wd = self.wd # open_homepage wd.get("http://localhost/addressbook/group.php") def tearDown(self): self.wd.quit() def Destroy(self): self.wd.quit()
class RegisterTest(LiveServerTestCase): def setUp(self): self.browser = WebDriver() self.browser.implicitly_wait(5) create_user('john', '*****@*****.**', 'johnpassword') steps_to_login(self.browser, self.live_server_url, 'john', 'johnpassword') def tearDown(self): self.browser.quit() def test_title(self): open_page(self.browser, '/register/', self.live_server_url) self.assertIn('Register Supernova', self.browser.title) def steps_to_create_user(self, username, email, password): open_page(self.browser, '/register/', self.live_server_url) username_input = self.browser.find_element_by_name('username') username_input.send_keys(username) email_input = self.browser.find_element_by_name('email') email_input.send_keys(email) password_input = self.browser.find_element_by_name('password') password_input.send_keys(password) button_register = self.browser.find_element_by_name('submit') button_register.click() def test_register_correct(self): self.steps_to_create_user('teste_django', '*****@*****.**', 'teste_django') register_correct_message = self.browser.find_element_by_tag_name( 'strong') self.assertIn('thank you for registering!', register_correct_message.text) def test_register_repeated_user(self): self.steps_to_create_user('testedjangorepeated', '*****@*****.**', 'testedjangorepeated') self.steps_to_create_user('testedjangorepeated', '*****@*****.**', 'testedjangorepeated') register_repeated_message = self.browser.find_element_by_tag_name('li') self.assertIn('User with this Username already exists.', register_repeated_message.text)
class test_add_group(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_test_add_group(self): success = True wd = self.wd wd.get("http://localhost/addressbook/") wd.find_element_by_name("pass").click() wd.find_element_by_name("pass").send_keys("\\undefined") wd.find_element_by_xpath("//form[@id='LoginForm']/input[3]").click() wd.find_element_by_link_text("add new").click() wd.find_element_by_name("firstname").click() wd.find_element_by_name("firstname").clear() wd.find_element_by_name("firstname").send_keys("sddf") wd.find_element_by_name("middlename").click() wd.find_element_by_name("middlename").clear() wd.find_element_by_name("middlename").send_keys("cvcv") wd.find_element_by_name("theform").click() wd.find_element_by_name("lastname").click() wd.find_element_by_name("lastname").clear() wd.find_element_by_name("lastname").send_keys("cxcv") wd.find_element_by_name("nickname").click() wd.find_element_by_name("nickname").clear() wd.find_element_by_name("nickname").send_keys("xvcv") wd.find_element_by_name("address2").click() wd.find_element_by_name("address2").clear() wd.find_element_by_name("address2").send_keys("cv") wd.find_element_by_name("phone2").click() wd.find_element_by_name("phone2").clear() wd.find_element_by_name("phone2").send_keys("xccv") wd.find_element_by_name("notes").click() wd.find_element_by_name("notes").clear() wd.find_element_by_name("notes").send_keys("cv") wd.find_element_by_xpath("//div[@id='content']/form/input[21]").click() wd.find_element_by_link_text("Logout").click() wd.find_element_by_name("pass").click() wd.find_element_by_name("pass").send_keys("\\undefined") wd.find_element_by_name("user").click() wd.find_element_by_name("user").send_keys("\\undefined") self.assertTrue(success) def tearDown(self): self.wd.quit()
class Application: def __init__(self): self.wd = WebDriver(capabilities={"marionette": False}) self.wd.implicitly_wait(60) self.navigation = NavigationHelper(self) self.session = SessionHelper(self) self.group = GroupHelper(self) self.contact = ContactHelper(self) def is_valid(self): try: self.wd.current_url return True except: return False def destroy(self): self.wd.quit()
class Application: def __init__(self): self.wd = WebDriver() self.wd.implicitly_wait(5) self.session = SessionHelper(self) self.search = SearchHelper(self) self.navigation = NavigationHelper(self) def is_valid(self): try: self.wd.current_url return True except: return False def destroy(self): self.wd.quit()
def parse_topman_page(driver: WebDriver, url): driver.get(url) driver.implicitly_wait(15) time.sleep(5) set_grid_to_4(driver) sources = [driver.page_source] position = 700 while not is_bottom(driver): driver.execute_script("window.scrollTo(0, {})".format(position)) sources.append(driver.page_source) time.sleep(0.3) position += 700 product_list = (make_soup(source).find_all("div", class_="product") for source in sources) items = [] for l in product_list: items.extend(filter(bool, map(parse_product, l))) return items
def add_odesk_teams(user): """ Creates oDesk teams that will be used for our jobs. """ driver = WebDriver() driver.implicitly_wait(time_to_wait=10) selenium_login(webdriver=driver) account = user.get_profile() # Gain access to settings driver.find_element_by_css_selector("a.oNavIcon.oNavIconSettings").click() driver.find_element_by_id("answer").clear() driver.find_element_by_id("answer").send_keys(settings.ODESK_TEST_ACC_ANSWER) driver.find_element_by_id("submitButton").click() sg_name = SAMPLE_GATHERING_TEAM % TEAM_PREFIX v_name = VOTING_TEAM % TEAM_PREFIX btmg_name = BTM_GATHERING_TEAM % TEAM_PREFIX btmv_name = BTM_VOTING_TEAM % TEAM_PREFIX sg_res = add_odesk_team(webdriver=driver, name=sg_name) v_res = add_odesk_team(webdriver=driver, name=v_name) btmg_res = add_odesk_team(webdriver=driver, name=btmg_name) btmv_res = add_odesk_team(webdriver=driver, name=btmv_name) if not all([sg_res, v_res, btmg_res, btmv_res]): log.warning('[oDesk] Failed to create oDesk teams.') return False client = make_client_from_account(account) teams = client.hr.get_teams() for team in teams: if team['name'] == sg_name: account.odesk_teams[JOB_SAMPLE_GATHERING_KEY] = team['reference'] elif team['name'] == v_name: account.odesk_teams[JOB_VOTING_KEY] = team['reference'] elif team['name'] == btmg_name: account.odesk_teams[JOB_BTM_GATHERING_KEY] = team['reference'] elif team['name'] == btmv_name: account.odesk_teams[JOB_BTM_VOTING_KEY] = team['reference'] account.save() return True
class LoginRegUrlSettingsTest(LiveServerTestCase): def setUp(self): self.browser = WebDriver() self.browser.implicitly_wait(3) self.n1 = Node.objects.create(title='TestNodeOne', description='The first test node') self.u1 = User.objects.create_user(username='******', email='*****@*****.**', password='******') self.t1 = Topic.objects.create( title='Test Topic 1', user=self.u1, content_raw='This is test topic __1__', node=self.n1, ) def tearDown(self): self.browser.quit() @override_settings(NIJI_LOGIN_URL_NAME="reg") def test_login_url_name(self): self.browser.get(self.live_server_url + reverse("index")) login_btn = self.browser.find_element_by_link_text("Log in") self.assertEqual(login_btn.get_attribute("href"), self.live_server_url + reverse("reg")) self.browser.get(self.live_server_url + reverse("topic", kwargs={"pk": self.t1.pk})) login_link = self.browser.find_element_by_link_text("Login") self.assertEqual(login_link.get_attribute("href"), self.live_server_url + reverse("reg")) @override_settings(NIJI_REG_URL_NAME="login") def test_reg_url_name(self): self.browser.get(self.live_server_url + reverse("index")) reg_btn = self.browser.find_element_by_link_text("Reg") self.assertEqual(reg_btn.get_attribute("href"), self.live_server_url + reverse("login")) self.browser.get(self.live_server_url + reverse("topic", kwargs={"pk": self.t1.pk})) reg_link = self.browser.find_element_by_link_text("Create a New User") self.assertEqual(reg_link.get_attribute("href"), self.live_server_url + reverse("login"))
class test(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_project(self): success = True wd = self.open_home_page() self.login(wd) self.create_new_project(wd, name="test-12", description="des-12") self.logout() def logout(self, wd): wd.find_element_by_link_text("Logout").click() def create_new_project(self, wd, name, description): wd.find_element_by_css_selector("input.button").click() wd.find_element_by_link_text("Manage").click() wd.find_element_by_link_text("Manage Projects").click() wd.find_element_by_xpath( "//table[3]/tbody/tr[1]/td/form/input[2]").click() wd.find_element_by_name("name").click() wd.find_element_by_name("name").clear() wd.find_element_by_name("name").send_keys(name) wd.find_element_by_name("description").click() wd.find_element_by_name("description").clear() wd.find_element_by_name("description").send_keys(description) wd.find_element_by_css_selector("input.button").click() def login(self, wd): wd.find_element_by_name("username").click() wd.find_element_by_name("username").clear() wd.find_element_by_name("username").send_keys("administrator") wd.find_element_by_name("password").click() wd.find_element_by_name("password").clear() wd.find_element_by_name("password").send_keys("root") def open_home_page(self): wd = self.wd wd.get("http://localhost:8080/mantisbt-1.2.19/login_page.php") return wd def tearDown(self): self.wd.quit()
class selenimm interesr(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_selenimm interesr(self): success = True wd = self.wd wd.get("https://www.google.com/") wd.find_element_by_id("lst-ib").click() wd.find_element_by_id("lst-ib").click() wd.find_element_by_id("lst-ib").clear() wd.find_element_by_id("lst-ib").send_keys("x") wd.find_element_by_xpath("//div[@id='sbse1']//b[.='iaomi redmi note 5']").click() ActionChains(wd).double_click(wd.find_element_by_css_selector("center")).perform() self.assertTrue(success) def tearDown(self): self.wd.quit()
class WebObject(StaticLiveServerTestCase): """Base class for page objects.""" @classmethod def setUpClass(self): super(WebObject, self).setUpClass() self.driver = WebDriver() self.driver.set_window_size(1024, 768) self.driver.maximize_window() self.driver.implicitly_wait(15) @classmethod def tearDownClass(self): self.driver.quit() super(WebObject, self).tearDownClass() def create_login_session(self, username): session_cookie = create_session_for_given_user(username) self.driver.get(self.live_server_url) self.driver.add_cookie(session_cookie)
class test_santon(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_test_santon(self): success = True wd = self.wd wd.get("http://santehnika-online.ru/") wd.find_element_by_link_text("Акриловые ванны").click() wd.find_element_by_css_selector( "img[alt=\"Акриловая ванна Serena Classic (170 см)\"]").click() wd.find_element_by_css_selector( "#cmplproduct88078 > div.block_option > label.switch > span.switch" ).click() wd.find_element_by_id("linked_9_88078").click() wd.find_element_by_css_selector( "#cmplproduct533850 > div.block_option > label.switch > span.switch" ).click() wd.find_element_by_id("linked_11_533850").click() wd.find_element_by_link_text("Акриловые ванны").click() wd.find_element_by_css_selector( "img[alt=\"Акриловая ванна Aquanet Nord (170 см)\"]").click() wd.find_element_by_css_selector("span.switch").click() if not wd.find_element_by_id("linked_1_33825").is_selected(): wd.find_element_by_id("linked_1_33825").click() wd.find_element_by_xpath( "//div[@class='borgray']/div[1]/div[2]/input").click() wd.find_element_by_id("simplemodal-overlay").click() wd.find_element_by_css_selector("div.owl-wrapper-outer").click() wd.find_element_by_css_selector( "#floating_form_cart > div.ofzakinput > input.yellow").click() wd.find_element_by_id("NEW_LOGIN").click() wd.find_element_by_id("NEW_LOGIN").clear() wd.find_element_by_id("NEW_LOGIN").send_keys("+7 (977) 777-77-71") wd.find_element_by_id("NEW_EMAIL").click() wd.find_element_by_id("NEW_EMAIL").clear() wd.find_element_by_id("NEW_EMAIL").send_keys("*****@*****.**") wd.find_element_by_id("order_ajax_button").click() self.assertTrue(success) def tearDown(self): self.wd.quit()
class how_it_works(unittest.TestCase): def setUp(self): self.wd = WebDriver(capabilities={"marionette": False}) self.wd.implicitly_wait(60) def test_how_it_works(self): success = True wd = self.wd wd.get("https://toprussianbloggers.ru/how-it-works/") self.assertIn("Как это работает", wd.title) wd.find_element_by_css_selector("img.icon-desc__img").click() wd.back() wd.find_element_by_xpath("//div[@id='tab1']/div[1]/div[2]/div[1]/div[2]/a/img").click() self.assertIn("Регистрация нового пользователя", wd.title) wd.back() wd.find_element_by_xpath("//div[@id='tab1']/div[1]/div[2]/div[1]/div[3]/a/img").click() wd.back() wd.find_element_by_xpath("//div[@id='tab1']/div[2]/div[2]/div[1]/div[1]/a/img").click() wd.back() wd.find_element_by_xpath("//div[@id='tab1']/div[2]/div[2]/div[1]/div[2]/a/img").click() wd.back() wd.find_element_by_xpath("//div[@id='tab1']/div[2]/div[2]/div[1]/div[3]/a/img").click() wd.back() wd.find_element_by_xpath("//div[@id='tab1']/div[3]/div[2]/div[1]/div[1]/a/img").click() wd.back() wd.find_element_by_xpath("//div[@id='tab1']/div[3]/div[2]/div[1]/div[2]/a/img").click() wd.back() wd.find_element_by_xpath("//div[@id='tab1']/div[3]/div[2]/div[1]/div[3]/a").click() wd.back() wd.find_element_by_xpath("//div[@id='tab1']/div[4]/div[2]/div[1]/div[1]/a/img").click() wd.back() wd.find_element_by_xpath("//div[@id='tab1']/div[4]/div[2]/div[1]/div[2]/a/img").click() wd.back() wd.find_element_by_xpath("//div[@id='tab1']/div[4]/div[2]/div[1]/div[3]/a/img").click() wd.back() wd.find_element_by_xpath("//ul[@class='list-inline']//a[normalize-space(.)='Как это работает']").click() wd.find_element_by_css_selector("button.navbar-toggle.collapsed").click() wd.find_element_by_link_text("Главная").click() self.assertTrue(success) def tearDown(self): self.wd.quit()
class VisitorTest(LiveServerTestCase): """ Test as a visitor (unregistered user) """ def setUp(self): self.browser = WebDriver() self.browser.implicitly_wait(3) self.n1 = Node.objects.create(title='TestNodeOne', description='The first test node') self.u1 = User.objects.create_user(username='******', email='*****@*****.**', password='******') self.u2 = User.objects.create_user(username='******', email='*****@*****.**', password='******') # Create 99 topics for i in range(1, 100): setattr( self, 't%s' % i, Topic.objects.create(title='Test Topic %s' % i, user=self.u1, content_raw='This is test _topic __%s__' % i, node=self.n1)) def tearDown(self): self.browser.quit() def test_index(self): self.browser.get(self.live_server_url + reverse('niji:index')) body = self.browser.find_element_by_tag_name('body') self.assertIn('niji', body) def test_topic_page(self): pass def test_node_page(self): pass def test_pagination(self): pass
class test_add_group(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_test_add_group(self): success = True wd = self.wd wd.get("http://localhost/addressbook/") wd.find_element_by_name("pass").click() wd.find_element_by_name("pass").send_keys("\\undefined") wd.find_element_by_id("LoginForm").click() wd.find_element_by_name("user").click() wd.find_element_by_name("user").clear() wd.find_element_by_name("user").send_keys("admin") wd.find_element_by_name("pass").click() wd.find_element_by_name("pass").clear() wd.find_element_by_name("pass").send_keys("secret") wd.find_element_by_xpath("//form[@id='LoginForm']/input[3]").click() wd.find_element_by_link_text("groups").click() wd.find_element_by_name("new").click() wd.find_element_by_id("content").click() wd.find_element_by_name("group_name").click() wd.find_element_by_name("group_name").clear() wd.find_element_by_name("group_name").send_keys("groupp") wd.find_element_by_name("group_header").click() wd.find_element_by_name("group_header").clear() wd.find_element_by_name("group_header").send_keys("asfdsdf") wd.find_element_by_name("group_footer").click() wd.find_element_by_name("group_footer").clear() wd.find_element_by_name("group_footer").send_keys("dsfsfds") wd.find_element_by_name("submit").click() wd.find_element_by_link_text("group page").click() wd.find_element_by_link_text("Logout").click() wd.find_element_by_name("user").click() wd.find_element_by_name("user").send_keys("\\undefined") wd.find_element_by_name("pass").click() wd.find_element_by_name("pass").send_keys("\\undefined") self.assertTrue(success) def tearDown(self): self.wd.quit()
class Application: def __init__(self): self.wd = WebDriver() self.wd.implicitly_wait(5) self.session = SessionHelper(self) self.group = GroupHelper(self) def is_valid(self): try: self.wd.current_url() return True except: return False def Open_home_page(self): wd = self.wd wd.get("http://localhost/addressbook/") def destroy(self): self.wd.quit()
class Application: def __init__(self): self.wd = WebDriver(capabilities={"marionette": False}) self.wd.implicitly_wait(60) self.session = SessionHelper(self) self.group = GroupHelper(self) def is_valid(self): try: self.wd.current_url return True except: return False def open_home_page(self): wd = self.wd wd.get("http://localhost:8080/addressbook/") def destroy(self): self.wd.quit()
class Application: def __init__(self): self.wd = WebDriver( capabilities={"marionette": False}, firefox_binary="C:\Program Files\Mozilla Firefox ESR/firefox.exe") self.wd.implicitly_wait(60) self.session = SessionHelper(self) def open_home_page(self): wd = self.wd wd.get("http://localhost/addressbook/") def open_group_page(self): wd = self.wd wd.find_element_by_link_text("groups").click() def create_group(self, group): wd = self.wd self.open_group_page() # Initiating first group creation wd.find_element_by_name("new").click() # Populating group form wd.find_element_by_name("group_name").click() wd.find_element_by_name("group_name").clear() wd.find_element_by_name("group_name").send_keys(group.name) wd.find_element_by_name("group_header").click() wd.find_element_by_name("group_header").clear() wd.find_element_by_name("group_header").send_keys(group.header) wd.find_element_by_name("group_footer").click() wd.find_element_by_name("group_footer").clear() wd.find_element_by_name("group_footer").send_keys(group.footer) # Submiting group form wd.find_element_by_name("submit").click() self.return_to_group_page() def return_to_group_page(self): wd = self.wd wd.find_element_by_link_text("group page").click() def destroy(self): self.wd.quit()
class Reg_PR_by_FB(unittest.TestCase): def setUp(self): self.wd = WebDriver(capabilities={"marionette": False}) self.wd.implicitly_wait(60) def test_Reg_PR_by_FB(self): success = True wd = self.wd wd.get("https://toprussianbloggers.ru/") wd.find_element_by_link_text("Присоединиться к сообществу").click() wd.find_element_by_xpath("//label[@for='i-prPOPUP']").click() if not wd.find_element_by_id("i-prPOPUP").is_selected(): wd.find_element_by_id("i-prPOPUP").click() wd.find_element_by_xpath("//a[contains(@onclick,'Facebook')]").click() wd.find_element_by_css_selector( "a.bx-ss-button.facebook-button").click() for handle in wd.window_handles: wd.switch_to.window(handle) wd.find_element_by_id("email").click() wd.find_element_by_id("email").clear() wd.find_element_by_id("email").send_keys( "*****@*****.**") wd.find_element_by_id("pass").click() wd.find_element_by_id("pass").clear() wd.find_element_by_id("pass").send_keys("Lastchance") wd.find_element_by_id("u_0_0").click() self.assertTrue(success) myWait() for handle in wd.window_handles: wd.switch_to.window(handle) wd.find_element_by_link_text("Кампании").click() wd.find_element_by_link_text("Дополнительные параметры").click() wd.find_element_by_link_text("Блогеры").click() wd.find_element_by_link_text("Дополнительные параметры").click() wd.find_element_by_link_text("Kalitina Irina").click() wd.find_element_by_link_text("Личная страница").click() wd.find_element_by_link_text("Выйти").click() self.assertTrue(success) def tearDown(self): self.wd.quit()
class Main_page_1(unittest.TestCase): def setUp(self): self.wd = WebDriver(capabilities={"marionette": False}) self.wd.implicitly_wait(60) def test_Main_page_1(self): success = True wd = self.wd wd.get("https://toprussianbloggers.ru/") wd.find_element_by_link_text("войти").click() wd.find_element_by_id("system-auth-form-login").click() wd.find_element_by_id("system-auth-form-login").clear() wd.find_element_by_id("system-auth-form-login").send_keys( "*****@*****.**") wd.find_element_by_id("system-auth-form-password").click() wd.find_element_by_id("system-auth-form-password").clear() wd.find_element_by_id("system-auth-form-password").send_keys("123456") wd.find_element_by_xpath( "//div[@class='modal-body']/form/div[4]/input").click() wd.find_element_by_link_text("Maria").click() wd.find_element_by_link_text("Личная страница").click() wd.find_element_by_id("BIRTHDAY").click() wd.find_element_by_id("BIRTHDAY").clear() wd.find_element_by_id("BIRTHDAY").send_keys("01.01.2000") wd.find_element_by_xpath( "//form[@id='lk_form']//button[.='Сохранить изменения']").click() wd.find_element_by_link_text("Maria").click() wd.find_element_by_link_text("Главная").click() wd.find_element_by_link_text("Добавить новую кампанию").click() self.assertIn("Добавить новую кампанию", wd.title) wd.find_element_by_link_text("Главная").click() wd.find_element_by_link_text("найти блогеров").click() wd.find_element_by_link_text("Дополнительные параметры").click() wd.find_element_by_link_text("Главная").click() wd.find_element_by_link_text("Все кампании").click() wd.find_element_by_link_text("Просмотреть всех PR-агентов").click() wd.find_element_by_link_text("Выйти").click() self.assertTrue(success) def tearDown(self): self.wd.quit()
class timeweb2(unittest.TestCase): def setUp(self): self.wd = WebDriver() self.wd.implicitly_wait(60) def test_timeweb2(self): wd = self.wd self.open_home_page(wd) self.tariff_plan(wd) self.login(wd, username = "******", email = "*****@*****.**") def login(self, wd, username, email): wd.find_element_by_xpath( "//div[@class='overlay']/div/div/div[14]/form/div[2]/div[1]/div[2]/div[2]/input").click() wd.find_element_by_xpath( "//div[@class='overlay']/div/div/div[14]/form/div[2]/div[1]/div[2]/div[2]/input").clear() wd.find_element_by_xpath( "//div[@class='overlay']/div/div/div[14]/form/div[2]/div[1]/div[2]/div[2]/input").send_keys( username) wd.find_element_by_name("email").click() wd.find_element_by_name("email").clear() wd.find_element_by_name("email").send_keys(email) wd.find_element_by_xpath("//label[@for='c4']").click() if not wd.find_element_by_id("c4").is_selected(): wd.find_element_by_id("c4").click() wd.find_element_by_link_text("ЗАКАЗАТЬ").click() def tariff_plan(self, wd): wd.find_element_by_link_text("ХОСТИНГ").click() wd.find_element_by_link_text("РАЗМЕСТИТЬ САЙТ").click() wd.find_element_by_css_selector("li.item.selected").click() def open_home_page(self, wd): wd.get("https://timeweb.com/ru/") # Check for compliance with the selected plan def check_exists_by_link_text("Year+"): return len(webdriver.find_elements_by_link_text("Year+")) > 0 def tearDown(self): self.wd.quit()