def random_news(): return News( title=randrus_str(10), description=randrus_str(10), text=randrus_str(10), publish_date=datetime.now(), type_of_news='NEWS', visible=1 )
def rand_department(): return Department( name=randrus_str(10), description=randrus_str(20), calendar_id=5, schedule_id=5, advanceLimitPeriod=10, sync_time=datetime.now().strftime('%Y-%m-%d') + ' 00:00:00', finish_advance_date=(datetime.now() + timedelta(days=10)).strftime('%Y-%m-%d') + ' 00:00:00')
def random_schedule(): return Schedule( name=randrus_str(10), time_begin_1=str(randrange(8, 12, 1)) + ':00:00', time_end_1=str(randrange(17, 19, 1)) + ':00:00', breaks_id1=rand_num() )
def random_service(): return Services( id=rand_num(10), name=randrus_str(10), group_id=UserTypes.LEGAL.id, calendar_id=1 )
def test_department_creation(self, config, setup, teardown): global department_name user = GkrUserSteps(config) department_admin_page = DepartmentsAdminPage(config) # test data name = randrus_str(10) description = randrus_str(20) schedule = "алушта" phys_percents = 77 legal_percents = 33 department_name = name # filling form user.opens(Urls.ADMIN_DEPS.url) user.clicks(department_admin_page.NEW_DEPARTMENT) user.appends_text(department_admin_page.NAME, name) user.appends_text(department_admin_page.DESC, description) user.chooses_from_select(department_admin_page.SCHEDULE, schedule) user.chooses_from_select(department_admin_page.CALENDAR, Calendars.BEL_CALENDAR.name) user.selects_checkbox(department_admin_page.PHYS_CHECKBOX) user.selects_checkbox(department_admin_page.LEGAL_CHECKBOX) user.enters_text(department_admin_page.PHYS_INPUT, phys_percents) user.enters_text(department_admin_page.LEGAL_INPUT, legal_percents) user.chooses_from_select(department_admin_page.REGIONS_SELECT, DepartRegion.ARMYANSK.location) user.chooses_from_select(department_admin_page.REGIONS_SELECT, DepartRegion.ALUSHTA.location) user.clicks(department_admin_page.SAVE) user.waits_for_element_displayed(department_admin_page.SAVED, 10) user.reloads_page() user.chooses_from_select(department_admin_page.DEPARTMENTS_LIST, description) # verification user.should_see_field_value(department_admin_page.NAME, name) user.should_see_field_value(department_admin_page.DESC, description) user.should_see_element_enabled(department_admin_page.PHYS_INPUT) user.should_see_element_enabled(department_admin_page.LEGAL_INPUT) user.should_see_list_size(department_admin_page.REGIONS_LIST, 2) user.should_see_selected_text(department_admin_page.SCHEDULE, schedule) user.should_see_selected_text(department_admin_page.CALENDAR, Calendars.BEL_CALENDAR.name) user.should_matches_to_list_item(department_admin_page.REGIONS_LIST, contains_string(DepartRegion.ARMYANSK.location)) user.should_matches_to_list_item(department_admin_page.REGIONS_LIST, contains_string(DepartRegion.ALUSHTA.location))
def test_service_creation(self, config, setup, teardown): global service user = GkrUserSteps(config) db_user = GkrDbSteps(config) services_page = ServicesAdminPage(config) name = randrus_str(10) prefix = randrus_str(2) group = UserTypes.LEGAL duration = 10 additional_duration = 5 percent_records = 30 percent_records_advance = 60 button_text = "<html><b><p align=center><span style='font-size:40.0pt;color:white'>%s</span></b>" % name user.opens(Urls.ADMIN_SERVICES) user.enters_text(services_page.NAME, name) user.enters_text(services_page.PREFIX, prefix) user.chooses_from_select(services_page.GROUP, group.name) user.enters_text(services_page.DURATION, duration) user.enters_text(services_page.ADDITIONAL_DURATION, additional_duration) user.enters_text(services_page.PERCENT_RECORDS, percent_records) user.enters_text(services_page.PERCENT_RECORDS_ADVANCE, percent_records_advance) user.waits_for_element_enabled(services_page.SUBMIT) user.clicks(services_page.SUBMIT) user.waits_for_ajax() user.reloads_page() service = db_user.query_first(Services, Services.name == name) # проверяет данные в таблице row = services_page.SERVICES_LIST.get_row_by_title(name) user.should_see_element_with_text(row.id, service.id) user.should_see_element_with_text(row.title, name) user.should_see_element_with_text(row.group, group.name) # проверяет данные в базе db_user.should_see_db_entry_value(service, 'name', name) db_user.should_see_db_entry_value(service, 'service_prefix', prefix) db_user.should_see_db_entry_value(service, 'group_id', group.id) db_user.should_see_db_entry_value(service, 'duration', duration) db_user.should_see_db_entry_value(service, 'aditional_duration', additional_duration) db_user.should_see_db_entry_value(service, 'precent_records', percent_records/100) db_user.should_see_db_entry_value(service, 'precent_records_advance', percent_records_advance/100) db_user.should_see_db_entry_value(service, 'button_text', button_text)
def random_user(role, is_legal=False): c = Customers(name=randrus_str(15), surname=randrus_str(15), patronymic=randrus_str(15), email=rand_str() + '@' + rand_str() + '.com', birthday=datetime.now() - timedelta(weeks=int(rand_num(4))), mobile_phone='9777' + rand_num(7), home_phone='', code=uuid.uuid4().hex, no=rand_num(6), serial=rand_num(4), issue=randrus_str(15), when_at=datetime.now() - timedelta(weeks=int(rand_num(3))), created=datetime.now().strftime('%Y-%m-%d 00:00:00'), validated=datetime.now().strftime('%Y-%m-%d 00:00:00')) if is_legal: c.inn = '1' + rand_num(10) user = User(c, '12345678', role) return user
def test_concurrent_registration(self, config): user = GkrUserSteps(config) db_user = GkrDbSteps(config) reg_page = RegistrationPage(config) dialogs = Dialogs(config) i = 0 report = '' while i < int(config.attempts): mobile = '9777' + rand_num(7) user.opens(Urls.REGISTRATION) user.should_see_element(reg_page) user.enters_text(reg_page.SURNAME, randrus_str(15)) user.enters_text(reg_page.NAME, randrus_str(15)) user.enters_text(reg_page.PATRONYMIC, randrus_str(15)) user.enters_text(reg_page.BIRTHDAY, '12.06.1984') user.enters_text(reg_page.PASSPORT_SERIAL, rand_num(4)) user.enters_text(reg_page.PASSPORT_NUMBER, rand_num(6)) user.enters_text(reg_page.ISSUE, randrus_str(15)) user.enters_text(reg_page.ISSUE_DATE, '09.01.2015') user.enters_text(reg_page.MOBILE, mobile) user.enters_text(reg_page.EMAIL, rand_str() + '@' + rand_str() + '.com') user.waits_for_element_enabled(reg_page.SUBMIT) user.submit_regform() user.waits_for_element_displayed(dialogs.REG_SUCCESS_DIALOG) tc = db_user.query_first(TCustomers, TCustomers.mobile_phone == mobile) user.opens(Urls.LOGOUT) user.opens('/registration/customer/?code=' + str(tc.code) + '&id=' + str(tc.id)) user.waits_for_element_displayed(dialogs.EMAIL_SUCCESS_DIALOG) c = db_user.query_first(Customers, Customers.mobile_phone == mobile) report = report + '\nНовый пользователь id=' + str( c.id) + ', phone=' + c.mobile_phone user.logout() i += 1 allure.attach('response.log', str(report), type=AttachmentType.TEXT)
def test_custom_verify_button(self, config, setup): user = GkrUserSteps(config) queue_page = QueuePage(config) locality = randrus_str(10) user.chooses_from_select(queue_page.CITY, Departments.BEL_DEP.short_name) user.enters_text(queue_page.LOCALITY, locality) user.waits_for_element_displayed(queue_page.address_dialog) user.clicks(queue_page.address_dialog.VERIFY) user.waits_for_element_disappeared(queue_page.address_dialog) user.should_see_field_value(queue_page.OTHER, '') user.should_see_attribute_value(queue_page.OTHER, 'disabled', True)
def test_custom_street(self, config, setup): user = GkrUserSteps(config) queue_page = QueuePage(config) locality = 'с. Александровка' street = randrus_str(10) user.chooses_from_select(queue_page.CITY, Departments.BEL_DEP.short_name) user.enters_suggest(queue_page.LOCALITY, locality) user.enters_text(queue_page.STREET, street) user.waits_for_element_displayed(queue_page.address_dialog) user.clicks(queue_page.address_dialog.MANUAL) user.waits_for_element_disappeared(queue_page.address_dialog) user.should_see_element_enabled(queue_page.OTHER) user.should_see_field_value(queue_page.OTHER, locality + ', ' + street)
def test_department_edition(self, config, setup, teardown): global department_name append_text = randrus_str(5) disabled = "disabled" user = GkrUserSteps(config) db_user = GkrDbSteps(config) http_user = GkrHttpSteps(config) department_admin_page = DepartmentsAdminPage(config) department = db_user.creates_department(rand_department(), DepartRegion.ARMYANSK, DepartRegion.BELOGORSKI, phys_percent=0.1, legal_percent=0.2) department_name = department.name + append_text http_user.renew_queue() user.opens(Urls.ADMIN_DEPS) user.chooses_from_select(department_admin_page.DEPARTMENTS_LIST, department.description) user.waits_for_ajax() user.appends_text(department_admin_page.NAME, append_text) user.appends_text(department_admin_page.DESC, append_text) user.chooses_from_select(department_admin_page.SCHEDULE, Calendars.BEL_CALENDAR.name) user.chooses_from_select(department_admin_page.CALENDAR, Calendars.BEL_CALENDAR.name) user.unselects_checkbox(department_admin_page.PHYS_CHECKBOX) user.unselects_checkbox(department_admin_page.LEGAL_CHECKBOX) user.clicks(department_admin_page.REGIONS_LIST.get_row_by_name(DepartRegion.ARMYANSK.location).delete) user.chooses_from_select(department_admin_page.REGIONS_SELECT, DepartRegion.ALUSHTA.location) user.clicks(department_admin_page.SAVE) user.waits_for_element_displayed(department_admin_page.SAVED) user.reloads_page() user.chooses_from_select(department_admin_page.DEPARTMENTS_LIST, department.description + append_text) user.should_see_field_value(department_admin_page.NAME, department.name + append_text) user.should_see_field_value(department_admin_page.DESC, department.description + append_text) user.should_see_attribute_value(department_admin_page.PHYS_INPUT, disabled, True) user.should_see_attribute_value(department_admin_page.LEGAL_INPUT, disabled, True) user.should_see_list_size(department_admin_page.REGIONS_LIST, 2) user.should_not_matches_to_list_item(department_admin_page.REGIONS_LIST, contains_string(DepartRegion.ARMYANSK.location)) user.should_matches_to_list_item(department_admin_page.REGIONS_LIST, contains_string(DepartRegion.ALUSHTA.location))
def test_history_search_empty(self, config, teardown): global advance_one, advance_two, history_operator advance_one = None advance_two = None user = GkrUserSteps(config) db_user = GkrDbSteps(config) main_page = MainPage(config) history_operator = random_user(UserRoles.OPERATOR) db_user.create_user(history_operator) user.login(history_operator.customers_data.mobile_phone, history_operator.password) user.waits_for_element_displayed(main_page.top_menu.LOGOUT) user.selects_from_main_menu(MainMenu.HISTORY) user.should_see_text(ConfirmationMessages.HISTORY_EMPTY) user.reloads_page() user.search_history(randrus_str(7)) user.should_see_text(ConfirmationMessages.HISTORY_EMPTY)
user = User(c, '12345678', role) return user OPERATOR = User( Customers(name=u'ИмяОператора', surname='ФамилияОператора', patronymic='ОтчествоОператора', email='*****@*****.**', birthday=datetime.now() - timedelta(weeks=1200), mobile_phone='79907777777', home_phone='', code=uuid.uuid4().hex, no=777777, serial=7777, issue=randrus_str(15), when_at=datetime.now() - timedelta(weeks=600), created=datetime.now().strftime('%Y-%m-%d %H:%M:%S'), validated=datetime.now().strftime('%Y-%m-%d %H:%M:%S')), '12345678', UserRoles.OPERATOR) CUSTOMER = User( Customers( name=u'ИмяКастомера', surname='ФамилияКастомера', patronymic='ОтчествоКастомера', birthday=datetime.now() - timedelta(weeks=1100), email='*****@*****.**', mobile_phone='79902222222', home_phone='', code=uuid.uuid4().hex,