def test_QFXS_0018(self): """6-10位数字可支持模糊搜索匹配结果""" gmp = GroupMessengerPage() # 等待群发信使首页加载 gmp.wait_for_page_load() gmp.click_new_message() nmp = NewMessagePage() # 等待群发信使->新建短信页面加载 nmp.wait_for_page_load() nmp.click_add_icon() sccp = SelectCompanyContactsPage() # 等待群发信使->新建短信->选择联系人页面加载 sccp.wait_for_page_load() search_number = "13800138" # 输入查找信息 sccp.input_search_message(search_number) time.sleep(2) # 1.检查搜索结果是否模糊匹配关键字 self.assertEquals(sccp.is_search_contacts_number_match(search_number), True) # 选择搜索结果 sccp.click_contacts_by_number("13800138005") # 2.是否成功选中,输入框是否自动清空 self.assertEquals(sccp.is_exist_select_contacts_name("佬1"), True) self.assertEquals(sccp.is_clear_search_box(search_number), True) sccp.click_back() time.sleep(2) if sccp.is_exist_corporate_name(): sccp.click_back_by_android() nmp.wait_for_page_load() nmp.click_back() # 等待群发信使首页加载 gmp.wait_for_page_load()
def test_QFXS_0019(self): """联系人姓名(全名)精准搜索""" gmp = GroupMessengerPage() # 等待群发信使首页加载 gmp.wait_for_page_load() gmp.click_new_message() nmp = NewMessagePage() # 等待群发信使->新建短信页面加载 nmp.wait_for_page_load() nmp.click_add_icon() sccp = SelectCompanyContactsPage() # 等待群发信使->新建短信->选择联系人页面加载 sccp.wait_for_page_load() search_name = "大佬1" # 输入查找信息 sccp.input_search_message(search_name) time.sleep(2) # 1.检查搜索结果是否精准匹配关键字 self.assertEquals(sccp.is_search_contacts_name_full_match(search_name), True) # 选择搜索结果 sccp.click_contacts_by_name(search_name) # 2.搜索栏是否清空,是否出现已选人名和头像,是否展示已选人数/上限人数 self.assertEquals(sccp.is_clear_search_box(search_name), True) self.assertEquals(sccp.is_exist_select_contacts_name("佬1"), True) self.assertEquals(sccp.is_exist_select_contacts_image("佬1"), True) self.assertEquals(sccp.is_exist_select_and_all("1"), True) sccp.click_back() time.sleep(2) if sccp.is_exist_corporate_name(): sccp.click_back_by_android() nmp.wait_for_page_load() nmp.click_back() # 等待群发信使首页加载 gmp.wait_for_page_load()
def test_QFXS_0009(self): """用户不在任何部门下""" gmp = GroupMessengerPage() # 等待群发信使首页加载 gmp.wait_for_page_load() gmp.click_new_message() nmp = NewMessagePage() # 等待群发信使->新建短信页面加载 nmp.wait_for_page_load() nmp.click_add_icon() sccp = SelectCompanyContactsPage() # 等待群发信使->新建短信->选择联系人页面加载 sccp.wait_for_page_load() # 1.是否直接进入企业子一层级 self.assertEquals(sccp.is_exist_corporate_grade(), True) sccp.click_back() time.sleep(2) # 2.页面是否跳转到企业层级 self.assertEquals(sccp.is_exist_corporate_grade(), False) self.assertEquals(sccp.is_exist_corporate_name(), True) sccp.click_back() nmp.wait_for_page_load() nmp.click_back() # 等待群发信使首页加载 gmp.wait_for_page_load()
def test_QFXS_0016(self): """搜索“我的电脑”""" gmp = GroupMessengerPage() # 等待群发信使首页加载 gmp.wait_for_page_load() gmp.click_new_message() nmp = NewMessagePage() # 等待群发信使->新建短信页面加载 nmp.wait_for_page_load() nmp.click_add_icon() sccp = SelectCompanyContactsPage() # 等待群发信使->新建短信->选择联系人页面加载 sccp.wait_for_page_load() time.sleep(2) # 输入查找信息 sccp.input_search_message("我的电脑") time.sleep(2) # 1.是否显示“无搜索结果” self.assertEquals(sccp.is_exist_text(), True) sccp.click_back() time.sleep(2) if sccp.is_exist_corporate_name(): sccp.click_back_by_android() nmp.wait_for_page_load() nmp.click_back() # 等待群发信使首页加载 gmp.wait_for_page_load()
def test_QFXS_0013(self): """1、点击“+”,添加接收人 2、添加人数小于当前企业剩余条数""" mess = MessagePage() mess.open_workbench_page() wp = WorkbenchPage() wp.wait_for_page_load() # 点击群发信使 wp.click_group_messenger() # 等待页面加载 mgp = MessageGroupPage() mgp.wait_for_page_load() # 点击新建短信 mgp.click_build_message() mgp.wait_for_edit_message_page_load() # 点击收件人 mgp.click_addressee() # 点击指定联系人 sccp = SelectCompanyContactsPage() sccp.wait_for_page_load() sccp.click_one_contact("飞信电话") if not sccp.is_left_head_exit(): raise AssertionError("找不到搜索栏左侧被点击人员人名和头像") #返回 sccp.click_back() time.sleep(2) if sccp.is_exist_corporate_name(): sccp.click_back_by_android() mgp.wait_for_edit_message_page_load() mgp.click_close()
def test_QFXS_0007(self): """多个部门累计添加成员""" gmp = GroupMessengerPage() # 等待群发信使首页加载 gmp.wait_for_page_load() gmp.click_new_message() nmp = NewMessagePage() # 等待群发信使->新建短信页面加载 nmp.wait_for_page_load() nmp.click_add_icon() sccp = SelectCompanyContactsPage() # 等待群发信使->新建短信->选择联系人页面加载 sccp.wait_for_page_load() # 1.进入多个部门,添加成员 sccp.click_department_by_name("测试部门1") sccp.click_contacts_by_name("大佬1") self.assertEquals(sccp.is_exist_select_contacts_name("佬1"), True) self.assertEquals(sccp.is_exist_select_and_all("1"), True) sccp.click_back() sccp.click_department_by_name("测试部门2") sccp.click_contacts_by_name("大佬2") self.assertEquals(sccp.is_exist_select_contacts_name("佬2"), True) # 2.各个部门添加成员是否累计 self.assertEquals(sccp.is_exist_select_and_all("2"), True) # 点击确定 sccp.click_sure_button() nmp.wait_for_page_load() self.assertEquals(nmp.is_exist_text("大佬1"), True) self.assertEquals(nmp.is_exist_text("大佬2"), True) nmp.click_back() time.sleep(2) nmp.click_no() # 等待群发信使首页加载 gmp.wait_for_page_load()
def test_QFXS_0010(self): """1、搜索不存在的用户名称""" mess = MessagePage() mess.open_workbench_page() wp = WorkbenchPage() wp.wait_for_page_load() # 点击群发信使 wp.click_group_messenger() # 等待页面加载 mgp = MessageGroupPage() mgp.wait_for_page_load() # 点击新建短信 mgp.click_build_message() mgp.wait_for_edit_message_page_load() # 点击收件人 mgp.click_addressee() # 点击本机号码 sccp = SelectCompanyContactsPage() sccp.wait_for_page_load() import random a=str(random.random()) #搜索框输入不存在用户名 sccp.input_search_message(a) if not sccp.is_toast_exist("无搜索结果"): raise AssertionError("没有提示 无搜索结果") sccp.click_back() time.sleep(2) if sccp.is_exist_corporate_name(): sccp.click_back_by_android() mgp.wait_for_edit_message_page_load() mgp.click_close()
def test_QFXS_0033(self): """任意点击搜索结果联系人""" gmp = GroupMessengerPage() # 等待群发信使首页加载 gmp.wait_for_page_load() gmp.click_new_message() nmp = NewMessagePage() # 等待群发信使->新建短信页面加载 nmp.wait_for_page_load() nmp.click_add_icon() sccp = SelectCompanyContactsPage() # 等待群发信使->新建短信->选择联系人页面加载 sccp.wait_for_page_load() search_number = "13800138005" # 输入查找信息 sccp.input_search_message(search_number) time.sleep(2) # 点击勾选搜索出的联系人头像 sccp.click_contacts_image() # 1.是否出现已选人名和头像,是否展示已选人数/上限人数 self.assertEquals(sccp.is_exist_select_contacts_name("佬1"), True) self.assertEquals(sccp.is_exist_select_contacts_image("佬1"), True) self.assertEquals(sccp.is_exist_select_and_all("1"), True) sccp.click_back() time.sleep(2) if sccp.is_exist_corporate_name(): sccp.click_back_by_android() nmp.wait_for_page_load() nmp.click_back() # 等待群发信使首页加载 gmp.wait_for_page_load()
def test_QFXS_0008(self): """1、点击用户本人头像""" mess = MessagePage() mess.open_workbench_page() wp = WorkbenchPage() wp.wait_for_page_load() #点击群发信使 wp.click_group_messenger() #等待页面加载 mgp=MessageGroupPage() mgp.wait_for_page_load() #点击新建短信 mgp.click_build_message() mgp.wait_for_edit_message_page_load() #点击收件人 mgp.click_addressee() #点击本机号码 sccp=SelectCompanyContactsPage() sccp.wait_for_page_load() phone_number = current_mobile().get_cards(CardType.CHINA_MOBILE)[0] sccp.click_text(phone_number) if not sccp.is_toast_exist("该联系人不可选"): raise AssertionError("没有toast提示该联系人不可选") sccp.click_back() time.sleep(2) sccp.click_back() mgp.wait_for_edit_message_page_load() mgp.click_close()
def test_QFXS_0025(self): """纯空格键不支持搜索匹配""" gmp = GroupMessengerPage() # 等待群发信使首页加载 gmp.wait_for_page_load() gmp.click_new_message() nmp = NewMessagePage() # 等待群发信使->新建短信页面加载 nmp.wait_for_page_load() nmp.click_add_icon() sccp = SelectCompanyContactsPage() # 等待群发信使->新建短信->选择联系人页面加载 sccp.wait_for_page_load() search_content = " " # 输入查找信息 sccp.input_search_message(search_content) time.sleep(2) # 1.纯空格键不支持搜索匹配 self.assertEquals(sccp.is_exist_corporate_grade(), True) sccp.click_back() time.sleep(2) if sccp.is_exist_corporate_name(): sccp.click_back_by_android() nmp.wait_for_page_load() nmp.click_back() # 等待群发信使首页加载 gmp.wait_for_page_load()
def test_QFXS_0011(self): """1、再次点击头像,取消选择人员""" mess = MessagePage() mess.open_workbench_page() wp = WorkbenchPage() wp.wait_for_page_load() # 点击组织架构,添加联系人 wp.click_organization() org=Organization() org.wait_for_page_load() if not org.is_exit_element_by_text_swipe("飞信电话"): org.click_text("添加联系人") time.sleep(2) org.click_text("从手机通讯录添加") sccp = SelectCompanyContactsPage() sccp.wait_for_page_load() # 飞信电话 or 和飞信电话 sccp.click_one_contact("飞信电话") sccp.click_sure() time.sleep(1) org.click_back_by_android() time.sleep(2) org.wait_for_page_load() org.click_back() wp.wait_for_page_load() # 点击群发信使 wp.click_group_messenger() # 等待页面加载 mgp = MessageGroupPage() mgp.wait_for_page_load() # 点击新建短信 mgp.click_build_message() mgp.wait_for_edit_message_page_load() # 点击收件人 mgp.click_addressee() # 点击指定联系人 sccp = SelectCompanyContactsPage() sccp.wait_for_page_load() sccp.click_one_contact("飞信电话") time.sleep(3) sccp.click_text("飞信电话") if sccp.is_left_head_exit(): raise AssertionError("搜索栏左侧被取消人员人名和头像没有被移除") #返回 sccp.click_back() time.sleep(2) if sccp.is_exist_corporate_name(): sccp.click_back_by_android() mgp.wait_for_edit_message_page_load() mgp.click_close()
def test_QFXS_0012(self): """用户同时在两个部门下""" gmp = GroupMessengerPage() # 等待群发信使首页加载 gmp.wait_for_page_load() # 确保用户在企业部门下 gmp.click_back() wbp = WorkbenchPage() # 添加本机号码到指定部门1 department_name1 = "admin_department1" Preconditions.add_phone_number_to_department(department_name1) # 添加本机号码到指定部门2 department_name2 = "admin_department2" Preconditions.add_phone_number_to_department(department_name2) workbench_name = wbp.get_workbench_name() # 解决用户部门变更后不能及时刷新的问题 wbp.click_company_contacts() ecp = EnterpriseContactsPage() ecp.wait_for_page_load() time.sleep(2) ecp.click_back() time.sleep(2) if ecp.is_exist_department_name(): ecp.click_back() wbp.wait_for_workbench_page_load() wbp.click_group_messenger() gmp.wait_for_page_load() gmp.click_new_message() nmp = NewMessagePage() # 等待群发信使->新建短信页面加载 nmp.wait_for_page_load() nmp.click_add_icon() sccp = SelectCompanyContactsPage() # 等待群发信使->新建短信->选择联系人页面加载 sccp.wait_for_page_load() # 1.跳转后是否显示企业层级:企业+部门名称(部门随机显示一个) self.assertEquals(sccp.is_exist_corporate_grade(), False) self.assertEquals(sccp.is_exist_department_by_name(workbench_name), True) self.assertEquals( (sccp.is_exist_department_by_name(department_name1) or sccp.is_exist_department_by_name(department_name2)), True) sccp.click_back() nmp.wait_for_page_load() nmp.click_back() # 等待群发信使首页加载 gmp.wait_for_page_load()
def test_QFXS_0035(self): """多选-任意选择多位联系人""" gmp = GroupMessengerPage() # 等待群发信使首页加载 gmp.wait_for_page_load() try: gmp.click_new_message() nmp = NewMessagePage() # 等待群发信使->新建短信页面加载 nmp.wait_for_page_load() except: gmp.click_back_by_android() gmp.click_new_message() nmp = NewMessagePage() # 等待群发信使->新建短信页面加载 nmp.wait_for_page_load() nmp.click_add_icon() sccp = SelectCompanyContactsPage() # 等待群发信使->新建短信->选择联系人页面加载 sccp.wait_for_page_load() # 选择三位联系人 sccp.click_contacts_by_name("大佬1") sccp.click_contacts_by_name("大佬2") sccp.click_contacts_by_name("大佬3") time.sleep(2) # 联系人是否为已选中状态 self.assertEquals(sccp.is_exist_select_contacts_name("佬1"), True) self.assertEquals(sccp.is_exist_select_contacts_name("佬2"), True) self.assertEquals(sccp.is_exist_select_contacts_name("佬3"), True) # 是否展示已选人数/上限人数 self.assertEquals(sccp.is_exist_select_and_all("3"), True) # 取消已选联系人 sccp.click_contacts_by_name("大佬1") time.sleep(2) # 1.被取消联系人名和头像是否被移除,已选人数/上限人数是否改变 self.assertEquals(sccp.is_exist_select_contacts_name("佬1"), False) self.assertEquals(sccp.is_exist_select_contacts_image("佬1"), False) self.assertEquals(sccp.is_exist_select_and_all("2"), True) sccp.click_back() time.sleep(2) if sccp.is_exist_corporate_name(): sccp.click_back_by_android() nmp.wait_for_page_load() nmp.click_back() # 等待群发信使首页加载 gmp.wait_for_page_load()
def test_QFXS_0011(self): """用户在企业部门下又在企业子一层级中,直接进入企业层级""" gmp = GroupMessengerPage() # 等待群发信使首页加载 gmp.wait_for_page_load() # 确保用户既在企业部门下又在企业子一层级 gmp.click_back() wbp = WorkbenchPage() # 添加本机号码到指定部门 department_name = "admin_department" Preconditions.add_phone_number_to_department(department_name) # 添加本机号码到和通讯录 Preconditions.add_phone_number_to_he_contacts() workbench_name = wbp.get_workbench_name() # 解决用户部门变更后不能及时刷新的问题 wbp.click_company_contacts() ecp = EnterpriseContactsPage() ecp.wait_for_page_load() time.sleep(2) ecp.click_back() time.sleep(2) if ecp.is_exist_department_name(): ecp.click_back() wbp.wait_for_workbench_page_load() wbp.click_group_messenger() gmp.wait_for_page_load() gmp.click_new_message() nmp = NewMessagePage() # 等待群发信使->新建短信页面加载 nmp.wait_for_page_load() nmp.click_add_icon() sccp = SelectCompanyContactsPage() # 等待群发信使->新建短信->选择联系人页面加载 sccp.wait_for_page_load() # 1.是否直接进入企业层级:企业+部门名称 self.assertEquals(sccp.is_exist_corporate_grade(), False) self.assertEquals(sccp.is_exist_department_by_name(workbench_name), True) self.assertEquals(sccp.is_exist_department_by_name(department_name), True) sccp.click_back() nmp.wait_for_page_load() nmp.click_back() # 等待群发信使首页加载 gmp.wait_for_page_load()
def test_QFXS_0036(self): """添加多部门联系人""" gmp = GroupMessengerPage() # 等待群发信使首页加载 gmp.wait_for_page_load() try: gmp.click_new_message() nmp = NewMessagePage() # 等待群发信使->新建短信页面加载 nmp.wait_for_page_load() except: gmp.click_back_by_android() gmp.click_new_message() nmp = NewMessagePage() # 等待群发信使->新建短信页面加载 nmp.wait_for_page_load() nmp.click_add_icon() sccp = SelectCompanyContactsPage() # 等待群发信使->新建短信->选择联系人页面加载 sccp.wait_for_page_load() # 1.部门人数可以叠加,同一号码(不同姓名、不同部门)选择一个则其余都选上 sccp.click_department_by_name("测试部门1") sccp.click_contacts_by_name("大佬1") self.assertEquals(sccp.is_exist_select_contacts_name("佬1"), True) self.assertEquals(sccp.is_exist_select_and_all("1"), True) sccp.click_back() sccp.click_department_by_name("测试部门2") sccp.click_contacts_by_name("大佬2") self.assertEquals(sccp.is_exist_select_contacts_name("佬1"), True) self.assertEquals(sccp.is_exist_select_contacts_name("佬2"), True) self.assertEquals(sccp.is_exist_select_and_all("2"), True) sccp.click_back() time.sleep(1) sccp.click_back() time.sleep(1) if sccp.is_exist_corporate_name(): sccp.click_back_by_android() time.sleep(1) nmp.wait_for_page_load() nmp.click_back() # 等待群发信使首页加载 gmp.wait_for_page_load()