def test_searchCustomerByEmail(self, setup): self.logger.info("********* SearchCustomerByEmail_004***********") self.driver = setup self.driver.get(self.baseURL) self.driver.maximize_window() self.lp = LoginPage(self.driver) self.lp.setUserName(self.username) self.lp.setPassword(self.password) self.lp.clickLogin() self.logger.info("********* Login Successfuly*****") self.logger.info("******** Starting Add Customer **********") self.addcust = AddCustomer(self.driver) self.addcust.clickonCustomersMenu() self.addcust.clcikonCustomersmenuItem() self.logger.info("********Searching customer by Emailid******") searchcust = SearchCustomer(self.driver) searchcust.setEmail("*****@*****.**") searchcust.clickSearch() time.sleep(3) status = searchcust.searchCustomerByEmail( "*****@*****.**") assert True == status self.logger.info("********* TC _searchCustomerByemail_004 finished***") self.driver.close()
def test_searchCustomerByName(self, setup): self.logger.info("****SearchCustomerByName_005**********") self.driver = setup self.driver.get(self.baseURL) self.driver.maximize_window() self.lp = LoginPage(self.driver) self.lp.setUserName(self.username) self.lp.setPassword(self.password) self.lp.clickLogin() self.logger.info("********* Login Page success ********") self.logger.info("********** starting AddCustomer********") self.addcust = AddCustomer(self.driver) self.addcust.clickonCustomersMenu() self.addcust.clcikonCustomersmenuItem() self.logger.info("******* SearchCustomeByName********") searchcust = SearchCustomer(self.driver) searchcust.setFirstName("victoria") searchcust.setLastName("Terces") searchcust.clickSearch() time.sleep(3) status = searchcust.searchCustomerByName("Victoria Terces") assert True == status self.logger.info("********* TC _searchCustomerByName_005 finished***") self.driver.close()
def login(self, userName, password): loginPage = LoginPage(self._driver) mainPage = loginPage.login(userName, password) print('[系统] 登陆完成') self._loginPage = loginPage self._mainPage = mainPage
class Test_002_DDT_Login: baseURL = ReadConfig.getApplicationURL() path = ".//TestData/LoginDetails.xlsx" logger = LogGen.loggen() @pytest.mark.sanity def test_login_ddt(self,setup): self.logger.info("********* Test_002_DDT_Login *********") self.logger.info("********* verifying Login DDT test ********") self.driver = setup self.driver.get(self.baseURL) self.lp=LoginPage(self.driver) self.rows=XLUtils.getRowCount(self.path,'Sheet1') print("Number of rows in excel:",self.rows) lst_status=[]#empty list Variable for r in range(2,self.rows+1): self.user= XLUtils.readData(self.path,'Sheet1',r,1) self.password=XLUtils.readData(self.path,'Sheet1',r,2) self.exp=XLUtils.readData(self.path,'Sheet1',r,3) self.lp.setUserName(self.user) self.lp.setPassword(self.password) self.lp.clickLogin() time.sleep(5) act_title=self.driver.title exp_title="Dashboard / nopCommerce administration" if act_title == exp_title: if self.exp=="Pass": self.logger.info("********** Passed **********") self.lp.clickLogout() lst_status.append("Pass") elif self.exp=="Fail": self.logger.info("******** Failed *********") self.lp.clickLogout() lst_status.append("Fail") elif act_title != exp_title: if self.exp=="Pass": self.logger.info("****** Failed ********") lst_status.append("Fail") elif self.exp == "Fail": self.logger.info("******** Passed *********") lst_status.append("Pass") if "Fail" not in lst_status: self.logger.info("Login DDT test is pass") self.driver.close() assert True else: self.logger.info("Login DDT test ia Fail") self.driver.close() assert False
def test_log_in_with_valid_data(self): self.loginPage = LoginPage(self.driver) self.homePage = HomePage(self.driver) self.loginPage.set_account_info("*****@*****.**", "Test987654123@") self.loginPage.click_login() self.loginPage.verify_status("Signed in successfully.")
def login_sys(self, broswer_type=None): self.cf = GetConfigData() self.lp = LoginPage() self.lp.open_login_page(broswer_type) # 获取账号密码 usr = self.cf.get_data("login", "login_usr") psw = self.cf.get_data("login", "login_psw") self.lp.login(usr, psw) return self.lp.driver
def test_user_login(driver, username, password): """ 测试获取的用户名/密码是否可以登录 """ login_page = LoginPage(driver) login_page.open() login_page.type_username(username) login_page.type_password(password) login_page.submit()
def test_ui_login_to_jira(self, login, passwd, res): self.driver.get(ui_url) login_page = LoginPage(self.driver) login_page.fill_login(login) login_page.fill_passwd(passwd) login_page.press_loginbtn() assert res in login_page.wait_for_result(res)
def test_addCustomer(self, setup): self.logger.info("************ Test_003_AddCustomer **************") self.driver = setup self.driver.get(self.baseURL) self.driver.maximize_window() self.lp = LoginPage(self.driver) self.lp.setUserName(self.username) self.lp.setPassword(self.password) self.lp.clickLogin() self.logger.info("********* Login Successfully ***********") self.logger.info("********** starting Add Customer test ********") self.addcust = AddCustomer(self.driver) self.addcust.clickonCustomersMenu() self.addcust.clcikonCustomersmenuItem() self.addcust.clickonAddnew() self.logger.info("********** Providing customer info *********") self.email = random_generator() + "@gmail.com" self.addcust.setEmail(self.email) self.addcust.setPassword(self.password) self.addcust.setCustomersRole("Guests") self.addcust.setManagerOfVendor("Vendor 2") self.addcust.setGender("Male") self.addcust.setFirstName("Rinky") self.addcust.setLastName("Nayak") self.addcust.setDob("2/2/1988") self.addcust.setCompanyName("TPVision") self.addcust.setAdminContent("This is for Testing.....") self.addcust.clickOnSave() self.logger.info("********* Saving Customer info ********") self.logger.info("******** Add Customer Validation started *******") self.msg = self.driver.find_element_by_tag_name("body").text print(self.msg) if 'customer has added successfully.' in self.msg: assert True == True self.logger.info("******* Add Customer test passed") else: self.driver.save_screenshot(".\\Screenshots\\" + "test_addcustomer_scr.png") self.logger.error("******** Add customer Test Failed *********") assert False == False self.driver.close() self.logger.info("******* ending Add Customer Test passed******")
def test_payment_with_change_status_and_currency(driver, currency, status): """ Проверяет оплату со сменой валюты и статуса """ login_page = LoginPage(driver) with allure.step('Переход на главную и проверка наличия формы логина'): login_page.get_login_page() login_page.check_login_form() user = get_test_user() with allure.step('Ввод данных случайного тестового юзера'): login_page.enter_login_data(user) payment_page = PaymentPage(driver) with allure.step('Выбор статуса'): payment_page.click_status(status) with allure.step('Выбор валюты'): payment_page.click_currency() payment_page.select_currency(currency) with allure.step('Нажатие на кнопку оплаты'): payment_page.click_submit() with allure.step('Проверка наличия формы совершенного платежа'): payment_page.check_processed_form() with allure.step('Нажатие на back и проверка наличия формы платежа'): payment_page.click_back() payment_page.check_payment_form()
def test_open_home_page(self): driver = Driver().start() homepage = HomePage(driver) # homepage.advertisement_close() homepage.login_link_click() loginpage = LoginPage(driver) loginpage.login() assert (homepage.username_display.is_displayed()) assert (homepage.main_image.is_displayed()) homepage.main_article_click() articlepage = ArticlePage(driver) assert (driver.title) assert (articlepage.headline == homepage.main_article_text) assert (articlepage.main_image().is_displayed())
def test_login(self,username,password): """ :param username:登录用户名 :param password: 登录密码 :return: null """ #实例化LoginPage页面对象 self.loginpage=LoginPage(self.browser) #打开登录页面 self.browser.get("http://localhost:3000/#/login?redirect=%2F") self.loginpage.login(username=username,password=password) #登录成功跳转到Home页面,断言登录是否成功 self.assertEqual(self.browser.title,"Home") self.loginpage.get_sceenshot()
def login_to_youtrack(request, browser_driver): """Input username and password for authorization""" username = request.config.getoption('--username') password = request.config.getoption('--password') LoginPage(browser_driver) \ .open_login_page() \ .login_as_user(username=username, password=password)
def login_without_username(context): try: logging.info("Login with out username") context.login_page = LoginPage(context.driver) context.login_page.go_to_page(LoginPage.url, LoginPage.title) context.login_page.negative_login(username='', password=context.password) except Exception as e: logging.error(e) raise e
def test_login_sucessfully(self): HomePage(self.driver).enter_login_page() loginPage = LoginPage(self.driver) loginPage.input_email("*****@*****.**") loginPage.input_password("123") loginPage.press_login_btn()
def test_login_non_exist_user(driver): """ Проверяет авторизацию несуществующего юзера :return: """ login_page = LoginPage(driver) with allure.step('Переход на главную'): login_page.get_login_page() user = [generate_text() + '@mail.ru', generate_text()] with allure.step('Ввод случайных валидных данных несуществующего юзера'): login_page.enter_login_data(user) with allure.step('Проверка появления сообщения о неправильном пароле'): assert login_page.check_notification() is True, 'Password error message did not appear' with allure.step('Нажатие close и проверка закрытия сообщения'): login_page.close_message() assert login_page.check_notification() is False, 'Password error message not closed'
def test_163_Login(self, Account): if(Account['是否执行'] == 'n'): self.logger.info("跳过执行%s账号"%(Account["账号"])) return self.logger.info("使用%s账号"%(Account["账号"])) LA = LoginAction(self.driver) LG = LoginPage(self.driver) LA.login(Username=Account["账号"], Password=Account["密码"]) time.sleep(1) if("操作超时,请刷新页面重试" in self.driver.page_source): self.logger.info("添加联系人:%s失败,原因:操作超时,请刷新页面重试"%(Account["账号"])) return time.sleep(1) if("请先进行验证" in self.driver.page_source): self.logger.info("添加联系人:%s失败,原因:请先进行验证"%(Account["账号"])) return Account['执行时间'] = datetime.datetime.now().strftime("%Y-%m-%d, %H:%M:%S") try: if(Account['验证界面包含的关键字']!='收件箱'): LG.SwitchToSelectFrame() time.sleep(2) assert Account['验证界面包含的关键字'] in self.driver.page_source if(Account['验证界面包含的关键字']!='收件箱'): LG.SwitchToDefaultFrame() except Exception as error: Account['测试结果'] = False LoginExcel.saveSheet(Account) self.logger.info("测试失败: %s"%(Account["账号"])) raise error else: Account['测试结果'] = True self.logger.info("成功添加联系人: %s"%(Account["账号"])) LoginExcel.saveSheet(Account) time.sleep(5)
def test_login_with_wrong_email(driver): """ Проверяет напоминание пароля с невалидным email :return: """ login_page = LoginPage(driver) with allure.step('Переход на главную'): login_page.get_login_page() user = [generate_text(), generate_text()] with allure.step('Ввод невалидного email в поле напоминания пароля'): login_page.enter_login_data(user) with allure.step('Проверка наличия формы логина и отсутсвия уведомления о неправильном пароле'): login_page.check_login_form() assert login_page.check_notification() is False, 'there is no email validation in the email field'
def test_login(driver, lang): """ Проверяет авторизацию :return: """ login_page = LoginPage(driver) with allure.step('Переход на главную и проверка наличия формы логина'): login_page.get_login_page() login_page.check_login_form() with allure.step('Выбор язык интерфейса'): login_page.select_language(lang) user = get_test_user() with allure.step('Ввод данных случайного тестового юзера'): login_page.enter_login_data(user) payment_page = PaymentPage(driver) with allure.step('Проверка появления страницы платежа'): payment_page.check_payment_form()
class Test_005_SearchCustomer: baseURL = ReadConfig.getApplicationURL() username = ReadConfig.getUseremail() password = ReadConfig.getPassword() logger = LogGen.loggen() @pytest.mark.regression def test_searchCustomerByName(self, setup): self.logger.info("****SearchCustomerByName_005**********") self.driver = setup self.driver.get(self.baseURL) self.driver.maximize_window() self.lp = LoginPage(self.driver) self.lp.setUserName(self.username) self.lp.setPassword(self.password) self.lp.clickLogin() self.logger.info("********* Login Page success ********") self.logger.info("********** starting AddCustomer********") self.addcust = AddCustomer(self.driver) self.addcust.clickonCustomersMenu() self.addcust.clcikonCustomersmenuItem() self.logger.info("******* SearchCustomeByName********") searchcust = SearchCustomer(self.driver) searchcust.setFirstName("victoria") searchcust.setLastName("Terces") searchcust.clickSearch() time.sleep(3) status = searchcust.searchCustomerByName("Victoria Terces") assert True == status self.logger.info("********* TC _searchCustomerByName_005 finished***") self.driver.close()
def test_payment_without_bonus(driver): """ Проверяет оплату без бонуса """ login_page = LoginPage(driver) with allure.step('Переход на главную'): login_page.get_login_page() user = get_test_user() with allure.step('Ввод данных случайного тестового юзера'): login_page.enter_login_data(user) payment_page = PaymentPage(driver) with allure.step('Проверка суммы получения с бонусом'): sum_status = payment_page.get_amount_status(PaymentPage.GOLD_STATUS) sum_get = payment_page.get_sum_you_get() assert sum_status * 2 == sum_get, 'Wrong amount you get with bonus' with allure.step('Выключение бонуса'): payment_page.click_bonus_activator() with allure.step('Проверка суммы получения без бонуса'): sum_status = payment_page.get_amount_status(PaymentPage.GOLD_STATUS) sum_get = payment_page.get_sum_you_get() assert sum_status == sum_get, 'Wrong amount you get with bonus' with allure.step('Нажатие на кнопку оплаты'): payment_page.click_submit() with allure.step('Проверка наличия формы совершенного платежа'): payment_page.check_processed_form() with allure.step('Нажатие на back и проверка наличия формы платежа'): payment_page.click_back() payment_page.check_payment_form()
def test_payment_with_change_system(driver, index): """ Проверяет оплату со сменой платежной системы """ login_page = LoginPage(driver) with allure.step('Переход на главную'): login_page.get_login_page() user = get_test_user() with allure.step('Ввод данных случайного тестового юзера'): login_page.enter_login_data(user) payment_page = PaymentPage(driver) with allure.step('Нажатие на кнопку выбора системы оплаты'): payment_page.click_payment_system() with allure.step('Выбор системы оплаты'): system_name = payment_page.select_payment_system(index) with allure.step('Нажатие на кнопку оплаты'): payment_page.click_submit() if system_name == 'QIWI': with allure.step('Ввод телефона для QIWI'): phone = '+' + str(random.randint(79000000000, 79999999999)) payment_page.enter_phone(phone) with allure.step('Проверка наличия формы совершенного платежа'): payment_page.check_processed_form() with allure.step('Нажатие на back и проверка наличия формы платежа'): payment_page.click_back() payment_page.check_payment_form()
def login_with_valid_account(context): try: # logging.info("Check cookies") # context.driver.check_cookie() logging.info("Go to login page") login_page = LoginPage(context.driver) login_page.go_to_page(LoginPage.url, LoginPage.title) logging.info("Login with valid user account") login_page.login(context.test_data["user_account"]["username"], context.test_data["user_account"]["password"]) logging.info("Verify greeting information") home_page = HomePage(context.driver) home_page.verify_greeting( context.test_data["user_account"]["username"]) logging.info("Reset test data") home_page.click_reset_test_data_button() reset_test_data_page = ResetTestDataPage(context.driver) reset_test_data_page.reset_test_data() except Exception as e: logging.error(e) raise e
def test_change_language(driver, lang): """ Проверяет смену языка интерфейса :return: """ login_page = LoginPage(driver) with allure.step('Переход на страницу логина'): login_page.get_login_page() with allure.step('Выбор языка интерфейса'): login_page.select_language(lang[0]) with allure.step('Проверка языка интерфейса'): login_page.check_language(lang[1])
def test_login(self, setup): self.logger.info("********* Verifying Login Case *****") self.driver = setup self.driver.get(self.baseURL) #create object of LoginPage class self.lp = LoginPage(self.driver) self.lp.setUserName( self.username ) #all variable are belonge to class, to access the class variable we are suing self self.lp.setPassword(self.password) self.lp.clickLogin() act_title = self.driver.title if act_title == "Dashboard / nopCommerce administration": assert True self.logger.info("****** Login test ia Passed ******") self.driver.close() else: self.driver.save_screenshot(".\\Screenshots\\" + "test_login.png") self.driver.close() self.logger.error("****** Login test ia Failed ******") assert False
class LoginAction(object): def __init__(self, driver): self.driver = driver self.Login = LoginPage(self.driver) def login(self, Username, Password): try: self.Login.SwitchToSelectFrame() # 输入用户名、密码、点击确定 if not pd.isnull(Username): self.Login.UserNameObj().send_keys(Username) if not pd.isnull(Password): self.Login.PasswordObj().send_keys(Password) self.Login.LoginButtonObj().click() self.Login.SwitchToDefaultFrame() except Exception as error: raise error
def test_valid_login(self): driver = self.driver self.driver.get("https://opensource-demo.orangehrmlive.com/") login = LoginPage(driver) login.enter_username("Admin") login.enter_password("admin123") login.click_login() hp = HomePage(driver) hp.click_welcome() title = driver.title print("Title-->", title) self.assertEqual(title, "OrangeHRM", "Web page title not matching") hp.click_logout() time.sleep(2)
def setup(request): global driver driver = webdriver.Chrome(executable_path='../webdrivers/chromedriver.exe') driver.implicitly_wait(10) driver.maximize_window() request.cls.driver = driver LOGIN_PAGE = LoginPage(driver) LOGIN_PAGE.login() LOGIN_PAGE.assert_title() yield # reportutils.test_report() time.sleep(1) LOGIN_PAGE.logout() driver.quit()
def test_post(self,getData): # Login Page login_page = LoginPage(self.driver) login_page.user_name().send_keys(getData[0]) login_page.user_password().send_keys(getData[1]) login_page.login_button().click() # Post Status post_status = PostStatus(self.driver) post_status.create_button().click() time.sleep(2) post_status.post_link_tab().click() time.sleep(3) post_status.enter_text().send_keys("Hello World") time.sleep(2) post_status.post_button().click()
def login_with_valid_account(context, username, password): try: context.username = username context.password = password login_page = LoginPage(context.driver) login_page.go_to_page(LoginPage.url, LoginPage.title) login_page.login(context.username, context.password) except Exception as e: logging.error(e) raise e
def test_data_driven_login(self): driver=self.driver self.driver.get("https://opensource-demo.orangehrmlive.com/") logging.getLogger().info("URL Launced") time.sleep(2) rows=get_row_count(self.path,'Sheet1') for r in range(2,rows+1): username=read_data(self.path,"Sheet1",r,1) password=read_data(self.path,"Sheet1",r,2) login = LoginPage(driver) login.enter_username(username) self.logger.info("Username entered") login.enter_password(password) self.logger.info("Password entered") login.click_login() flag=len(driver.find_elements_by_id("welcome")) #print("Flag value",flag) if flag>0: print("Test Case Pass",username,password) logging.getLogger().info("Valid Login") write_data(self.path,'Sheet1',r,3,"Test Pass") hp = HomePage(driver) hp.click_welcome() self.logger.info("Home Page Open") hp.click_logout() time.sleep(2) else: self.logger.error("Login Failed") print("Test Case Fail",username,password) write_data(self.path,'Sheet1',r,3,"Test Fail")
def test_Login_valid_credintials(self): driver = self.driver driver.get("https://sneakypython.visualstudio.com") LoginPage.sign_in(self, "*****@*****.**", "Cowa0589") Homepage_TestCase.test_Homepage_assertion(self)