from base.base_page import BasePage from elements.share_add_elements import ShareAddElements import time class ShareAddPage(BasePage): """ 分享链接打开的页面 """ es = ShareAddElements def get_test_url(self, name, email): """ 填写信息并提交,返回测试链接 :param name: :param email: :return: """ # 输入姓名 self.fill(self.es.name, name, timeout=10) # 输入邮箱 self.fill(self.es.email, email) # 点击提交 self.click(self.es.submit_btn) # 获取测试链接并返回 return self.get_ele(self.es.test_url).text def fill_info(self, email, position, dept): """ 填写基本信息 :param email: 邮箱 :param position: 职位 :param dept: 部门 :return: """ self.fill(self.es.fill_email, email, timeout=10) # self.fill(self.es.fill_position, position) # self.fill(self.es.fill_dept, dept) self.click(self.es.submit_btn) def fill_info_CIAQ(self, info): """ CIAQ产品包填写基本信息 :param info: :return: """ self.send_text_wait(info["email"], self.es.ciaq_email_input) self.selector(self.es.ciaq_sex_select, self.es.ciaq_sex_option, info["sex"]) self.send_text_wait(info["age"], self.es.ciaq_age_input) self.selector(self.es.ciaq_grade_select, self.es.ciaq_grade_option, info["grade"]) self.send_text_wait(info["address"], self.es.ciaq_address_input) self.send_text_wait(info["university"], self.es.ciaq_university_input) self.send_text_wait(info["universityAddress"], self.es.ciaq_universityAddress_input) self.send_text_wait(info["college"], self.es.ciaq_college_input) self.send_text_wait(info["major"], self.es.ciaq_major_input) self.selector(self.es.ciaq_subject_select, self.es.ciaq_subject_option, info["subject"]) self.send_text_wait(info["GPA"], self.es.ciaq_GPA_input) self.send_text_wait(info["work"], self.es.ciaq_work_input) self.selector(self.es.ciaq_status_select, self.es.ciaq_status_option, info["status"]) self.selector(self.es.ciaq_workExperience_select, self.es.ciaq_workExperience_option, info["workExperience"]) self.click_wait(self.es.submit_btn) def selector(self, select_loc, options_loc, text): """ 通用选择器,直接调用选择下拉框选项 :param select_loc: 点击后出现下拉选项的元素定位 :param options_loc: 选项的元素定位 :param text: 判断点击的文本 :return: """ # 点击下拉框 self.click_wait(select_loc) time.sleep(1) # 获取所有选项 options = self.get_elements_wait(options_loc) # 判断选项是否与传入的选项相等 for opt in options: if opt.text == text: # 相等则点击该选项 opt.click() break