def create_experiment(self): element = self.browser.find_element_by_xpath('//*[@id="myTable"]/tbody/tr[1]/td[6]/a[2]') element.click() time.sleep(3) element = self.browser.find_element_by_xpath('//*[@id="portfolio"]/div/a') element.click() time.sleep(3) element = self.browser.find_element_by_id('nombre') element.send_keys('Resultado Experimento 1') element = self.browser.find_element_by_id('fechaInicio') element.send_keys('2017-12-31') element = Select(self.browser.find_element_by_id('responsable')) element.select_by_index(1) element = Select(self.browser.find_element_by_id('estado')) element.select_by_index(2) element = self.browser.find_element_by_id('prioridad') element.send_keys('1') element = self.browser.find_element_by_id('descripcion') element.send_keys('Experimento extraccion de muestra exitosa') element = self.browser.find_element_by_xpath('//*[@id="formAddExperiment"]/div[8]/input') element.click() time.sleep(3) element = self.browser.find_element_by_xpath('//*[@id="formAddExperiment"]/div[8]/a') element.click() time.sleep(3)
def edit_experiment(self): element = self.browser.find_element_by_xpath('//*[@id="myTable"]/tbody/tr[1]/td[8]/a[1]') element.click() time.sleep(3) element = Select(self.browser.find_element_by_id('resultado')) element.select_by_index(1) element = self.browser.find_element_by_xpath('//*[@id="formEditExperiment"]/div[9]/input') element.click() time.sleep(3) element = self.browser.find_element_by_xpath('//*[@id="formEditExperiment"]/div[9]/a') element.click() time.sleep(3)
def editUserAction(id, name, dob, address, email, cource, major): browser = webdriver.Chrome() browser.get("http://localhost:8080/user/edit/" + str(id)) dataElement = browser.find_element_by_name('fullName') dataElement.clear() dataElement.send_keys(name) dataElement = browser.find_element_by_name('dateOfBirth') dataElement.send_keys(dob) dataElement = browser.find_element_by_name('address') dataElement.clear() dataElement.send_keys(address) dataElement = browser.find_element_by_name('email') dataElement.clear() dataElement.send_keys(email) dataElement = Select(browser.find_element_by_name('course.id')) dataElement.select_by_visible_text(cource) dataElement = Select(browser.find_element_by_name('major.id')) dataElement.select_by_visible_text(major) # dataElement = browser.find_element_by_id('submitBtn') dataElement.click() mess = '' try: WebDriverWait(browser, 1).until(EC.alert_is_present()) alert = browser.switch_to.alert text_alert = alert.text if text_alert == 'Bạn có chắc muốn lưu': alert.accept() mess += browser.find_element_by_id('mess').text else: mess += text_alert alert.accept() except TimeoutException: pass # sleep(1) browser.quit() return mess
def _traverse_all_dropdown_options(css_dropdown_selector, regex): # this weird pattern is used since switching windows cause to lose the select dropdown, hence # I'm re-selecting it all the time and keeping an index i = 0 while True: try: account = Select( d.find_element_by_css_selector( css_dropdown_selector)).options[i] except IndexError: break account_name = account.text if regex.match(account_name): account.click() yield _extract_account_num(account_name) i += 1
def test_login(self): # Crear el usuario self.browser.get(self.baseUrl) self.browser.implicitly_wait(10) link = self.browser.find_element_by_id('link_iniciar_sesion') link.click() time.sleep(3) element = self.browser.find_element_by_id('username') element.send_keys('test') clave = self.browser.find_element_by_id('password') clave.send_keys('agiles123') btn = self.browser.find_element_by_id('btn_iniciar_sesion') btn.click() time.sleep(3) link = self.browser.find_element_by_id('linkProtocolos') link.click() time.sleep(3) link = self.browser.find_element_by_id('linkAgregarProtocolo') link.click() time.sleep(3) element = self.browser.find_element_by_id('titulo') element.send_keys('Protocolo Prueba') element = Select(self.browser.find_element_by_id('categoria')) element.select_by_index(1) element = self.browser.find_element_by_id('habilitado') element.click() element = self.browser.find_element_by_xpath( '//div[@class="jqte_editor"]') element.send_keys('Protocolo Prueba') botonGuardar = self.browser.find_element_by_id('btn_guardar') botonGuardar.click() self.browser.implicitly_wait(3) time.sleep(2)
def test_ll(self): user = "******" pwd = "1Usr5oth" title = "test" description = "test description" price = 100 driver = self.driver driver.maximize_window() driver.get("http://isqagroup1.pythonanywhere.com/admin") elem = driver.find_element_by_id("id_username") elem.send_keys(user) elem = driver.find_element_by_id("id_password") elem.send_keys(pwd) time.sleep(3) elem.send_keys(Keys.RETURN) driver.get("http://isqagroup1.pythonanywhere.com/admin/BoardGameLand/game/add/") time.sleep(3) elem = driver.find_element_by_id("id_title") elem.send_keys(title) elem = driver.find_element_by_id("id_description") elem.send_keys(description) elem = driver.find_element_by_id("id_price") elem.send_keys(price) elem = Select(driver.find_element_by_id("id_genre")) elem.select_by_index(0) time.sleep(3) elem = driver.find_element_by_name("_save") elem.click() time.sleep(3) try: # attempt to find the 'Logout' button - if found, logged in elem = driver.find_element_by_xpath("/html/body/div/div[3]/div/div/h1") assert True except NoSuchElementException: self.fail("Login Failed - user may not exist") assert False time.sleep(3)
def addUserAction(name, dob, address, email, cource, major): browser = webdriver.Chrome() browser.get("http://localhost:8080/newUser") dataElement = browser.find_element_by_name('fullName') dataElement.send_keys(name) dataElement = browser.find_element_by_name('dateOfBirth') dataElement.send_keys(dob) dataElement = browser.find_element_by_name('address') dataElement.send_keys(address) dataElement = browser.find_element_by_name('email') dataElement.send_keys(email) dataElement = Select(browser.find_element_by_name('course.id')) dataElement.select_by_visible_text(cource) dataElement = Select(browser.find_element_by_name('major.id')) dataElement.select_by_visible_text(major) # dataElement = browser.find_element_by_id('submitBtn') dataElement.click() mess = '' try: WebDriverWait(browser, 1).until(EC.alert_is_present()) alert = browser.switch_to.alert mess += alert.text alert.accept() except TimeoutException: mess += browser.find_element_by_id('mess').text # sleep(1) browser.quit() return mess
def __set__(self, obj, val): from selenium.webdriver.support.select import Select as WDSelect method = "text" if self.mapping is not None: val = self.mapping[val] if "_method" in self.mapping: method = self.mapping["_method"] if obj.mode == "old": elem = WDSelect(obj.find(self.locator)) if method == "text": elem.select_by_visible_text(val) elif method == "value": elem.select_by_value(val) if obj.mode == "convert": # click the select to show the list l = obj.locators[self.locator] elem = obj.find_element("css=label[id$={}_label]".format(l)) elem.click() # now click the correct option in the list options = obj.find_elements("css=div[id$={}_panel] li".format(l)) for item in options: if item.text == val: item.click() break
def create_poject(self): linkProjects = self.browser.find_element_by_id('linkProjects') linkProjects.click() time.sleep(3) linkReport = self.browser.find_element_by_xpath('//*[@id="portfolio"]/div/a') linkReport.click() time.sleep(3) element = self.browser.find_element_by_id('nombre') element.send_keys('1 - Test Resultado Experimento') element = self.browser.find_element_by_id('fechaInicio') element.send_keys('2017-10-31') element = self.browser.find_element_by_id('fechaFinal') element.send_keys('2017-12-31') element = Select(self.browser.find_element_by_id('patrocinador')) element.select_by_index(1) element = Select(self.browser.find_element_by_id('estado')) element.select_by_index(2) element = self.browser.find_element_by_id('prioridad') element.send_keys('1') element = self.browser.find_element_by_id('descripcion') element.send_keys('Test Resultado Experimento descripcion') element = self.browser.find_element_by_xpath('//*[@id="formProject"]/div[8]/input') element.click() time.sleep(3) element = self.browser.find_element_by_xpath('//*[@id="formProject"]/div[8]/a') element.click() time.sleep(3)
shop = driver.find_element_by_css_selector("#menu-item-40 > a") shop.click() #Тест, что в селекторе выбран вариант сортировки от большего к меньшему test = driver.find_element_by_css_selector("#content > form > select") select = Select(test) select.select_by_value("price-desc") test_price = test.get_attribute("value") if test_price == "price-desc": print ("В селекторе выбрана сортировка от большего к меньшему") else: print("В селекторе не выбрана сортировка от большего к меньшему") #Отсортируйте товары от большего к меньшему select = driver.find_element_by_css_selector("#content > form > select > option:nth-child(6)") select.click() #Тест, что в селекторе выбран вариант сортировки от большего к меньшему test = driver.find_element_by_css_selector("#content > form > select") select = Select(test) select.select_by_value("price-desc") test_price = test.get_attribute("value") if test_price == "price-desc": print ("В селекторе выбрана сортировка от большего к меньшему") else: print("В селекторе не выбрана сортировка от большего к меньшему") #Переход на новую вкладку driver.execute_script("window.open();") window_after = driver.window_handles[3] driver.switch_to.window(window_after)