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_RZ_0002(self): """新建日志""" # 1.进入日志首页 Preconditions.enter_log_page() wlp = WorkbenchLogPage() # 2.点击写日志 wlp.click_create_new_log() # 3.点击日报 wlp.click_day_news() wlp.wait_for_input_page_loads() # 4.输入日报信息 wlp.input_title("工作台日志-日报001") wlp.input_work_summary("今日工作总结") wlp.input_work_plan("明日工作计划") wlp.input_coordination_help("需要协调与帮助") wlp.input_remark("备注") # 5.点击“+”按钮 wlp.click_add_contact() sccp = SelectCompanyContactsPage() sccp.wait_for_page_load() # 6.选择提交人 sccp.click_contacts_by_name("大佬1") # 7.点击确认 sccp.click_sure_button() wlp.wait_for_input_page_loads() wlp.page_up() wlp.hide_keyboard() time.sleep(3) # 8.点击提交 wlp.click_submit() time.sleep(5) # wlp.wait_for_input_page_loads() # 9.判断是否提交成功 self.assertEquals(wlp.is_text_present("工作台日志-日报001"), True)
def test_QFXS_0005(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) # 点击勾选搜索出的联系人头像 sccp.click_contacts_image() # 点击确定 sccp.click_sure_button() nmp.wait_for_page_load() # 1.搜索出的联系人是否被选择 self.assertEquals(nmp.is_exist_text(search_name), True) nmp.click_back() time.sleep(2) nmp.click_no() # 等待群发信使首页加载 gmp.wait_for_page_load()
def test_ZYSX_0019(self): """事项删除""" imp = ImportantMattersPage() imp.wait_for_page_load() # 清空进行中的事项,确保不影响验证 imp.clear_item() # 确保有事项删除 imp.click_new_item() imp.wait_for_create_item_page_load() title = "测试事项0019" imp.input_create_item_title(title) imp.input_create_item_describe("描述内容0019") imp.click_add_icon() sccp = SelectCompanyContactsPage() sccp.wait_for_page_load() sccp.click_contacts_by_name("大佬1") sccp.click_sure_button() imp.wait_for_create_item_page_load() imp.click_create_item() imp.wait_for_page_load() imp.click_first_item() # 1.等待查看事项页面加载 imp.wait_for_check_item_page_load() # 2.弹出删除事项弹窗 imp.click_three_points_icon() time.sleep(2) # 3.弹出删除事项确认弹窗 imp.click_delete_item() time.sleep(1) imp.click_sure() # 4.事项删除成功,事项从进行中事项列表清除 self.assertEquals(imp.is_toast_exist("删除成功"), True) imp.wait_for_page_load() self.assertEquals(imp.is_text_present(title), False)
def test_CJQ_0001(self): """创建群,并发起群聊""" # 1.进入创建群首页 Preconditions.enter_create_group_page() cgp = CreateGroupPage() # 2.点击马上创建群 cgp.click_create_group() sccp = SelectCompanyContactsPage() sccp.wait_for_page_load() # 3.添加企业联系人 sccp.click_contacts_by_name("大佬1") sccp.click_contacts_by_name("大佬2") # 4.点击确认 sccp.click_sure_button() # 5.输入企业群名 cgp.input_group_name("企业群创建测试1") # 6.点击马上创建群 cgp.click_create_group() time.sleep(1) # 7.点击发起群聊 cgp.click_initiate_group_chat() time.sleep(1) # 8.判断是否在群聊页面 gcp = GroupChatPage() self.assertEqual(gcp.is_on_this_page(), True) time.sleep(1)
def test_ZYSX_0006(self): """修改删除事项参与人""" imp = ImportantMattersPage() imp.wait_for_page_load() # 确保已有事项 Preconditions.ensure_have_item() imp.click_first_item() # 1.等待查看事项页面加载 imp.wait_for_check_item_page_load() imp.click_personnel_status() # 2.等待人员状态页面加载 imp.wait_for_personnel_status_page_load() # 确保有人员可移除 imp.click_add_personnel() sccp = SelectCompanyContactsPage() # 等待选择联系人页面加载 sccp.wait_for_page_load() add_name = "大佬3" sccp.click_contacts_by_name(add_name) sccp.click_sure_button() imp.wait_for_personnel_status_page_load() imp.click_delete_personnel() # 3.界面未读人员显示可删除按钮 self.assertEquals(imp.is_exists_delete_icon_by_name("佬3"), True) imp.click_delete_icon_by_name("佬3") # 4.删除的联系人从界面消失 self.assertEquals(imp.is_text_present("佬3"), False) # 5.退出删除状态 imp.click_delete_personnel() imp.click_back() imp.wait_for_check_item_page_load() imp.click_back() # 等待重要事项首页加载 imp.wait_for_page_load()
def test_ZYSX_0005(self): """修改增加事项参与人""" imp = ImportantMattersPage() imp.wait_for_page_load() # 确保已有事项 Preconditions.ensure_have_item() imp.click_first_item() # 1.等待查看事项页面加载 imp.wait_for_check_item_page_load() imp.click_personnel_status() # 2.等待人员状态页面加载 imp.wait_for_personnel_status_page_load() imp.click_add_personnel() sccp = SelectCompanyContactsPage() # 3.等待选择联系人页面加载 sccp.wait_for_page_load() search_name = "大佬2" sccp.input_search_message(search_name) time.sleep(2) # 4.显示搜索结果 self.assertEquals(sccp.is_search_contacts_name_full_match(search_name), True) sccp.click_contacts_by_name(search_name) sccp.click_sure_button() # 5.添加成功,等待人员状态页面加载,界面显示刚刚添加的联系人信息 self.assertEquals(imp.is_toast_exist("添加成功"), True) imp.wait_for_personnel_status_page_load() self.assertEquals(imp.is_text_present("佬2"), True) imp.click_back() imp.wait_for_check_item_page_load() imp.click_back() # 等待重要事项首页加载 imp.wait_for_page_load()
def test_ZYSX_0002(self): """新建事项""" imp = ImportantMattersPage() imp.wait_for_page_load() # 清空进行中的事项,确保不影响验证 imp.clear_item() imp.click_new_item() # 1.等待创建事项页面加载 imp.wait_for_create_item_page_load() # 输入创建事项标题 title = "测试事项0002" imp.input_create_item_title(title) # 输入创建事项描述 imp.input_create_item_describe("描述内容0002") imp.click_add_icon() sccp = SelectCompanyContactsPage() sccp.wait_for_page_load() # 选择参与人 sccp.click_contacts_by_name("大佬1") sccp.click_sure_button() imp.wait_for_create_item_page_load() imp.click_create_item() imp.wait_for_page_load() # 2.显示刚刚创建的事项 self.assertEquals(imp.is_text_present(title), True)
def test_ZYSX_0010(self): """添加子任务""" imp = ImportantMattersPage() imp.wait_for_page_load() # 解决工作台不稳定的问题 imp.click_back() wbp = WorkbenchPage() wbp.wait_for_workbench_page_load() wbp.click_important_items() n = 1 while not imp.page_should_contain_text2("新建事项"): imp.click_back() wbp.wait_for_workbench_page_load() wbp.click_important_items() n += 1 if n > 20: break # 创建新事项 Preconditions.create_new_item() imp.click_first_item() # 1.等待查看事项页面加载 imp.wait_for_check_item_page_load() imp.swipe_by_percent_on_screen(50, 70, 50, 30, 700) imp.click_add_subtasks() # 2.等待添加子任务页面加载 imp.wait_for_add_subtasks_page_load() # 输入子任务标题 title = "子任务标题0010" imp.input_subtasks_title(title) # 输入子任务描述 imp.input_subtasks_describe("子任务描述0010") imp.click_subtasks_add_icon() sccp = SelectCompanyContactsPage() # 3.等待选择联系人页面加载 sccp.wait_for_page_load() search_name = "大佬1" sccp.input_search_message(search_name) time.sleep(2) sccp.click_contacts_by_name(search_name) sccp.click_sure_button() # 4.返回添加子任务编辑界面,界面底部显示添加的联系人 imp.wait_for_add_subtasks_page_load() self.assertEquals(imp.is_text_present("佬1"), True) # 选择截止时间 imp.click_modify() time.sleep(2) imp.swipe_time_by_hour() imp.click_sure() time.sleep(1) imp.click_save() imp.wait_for_check_item_page_load() imp.swipe_by_percent_on_screen(50, 70, 50, 30, 700) # 5.中间子任务栏,显示刚刚添加的子任务 self.assertEquals(imp.is_text_present(title), True)
def test_ZYSX_0015(self): """修改子任务-修改截止时间""" imp = ImportantMattersPage() imp.wait_for_page_load() # 解决工作台不稳定的问题 imp.click_back() wbp = WorkbenchPage() wbp.wait_for_workbench_page_load() wbp.click_important_items() n = 1 while not imp.page_should_contain_text2("新建事项"): imp.click_back() wbp.wait_for_workbench_page_load() wbp.click_important_items() n += 1 if n > 20: break # 创建新事项 Preconditions.create_new_item() imp.click_first_item() # 1.等待查看事项页面加载 imp.wait_for_check_item_page_load() # 确保有子任务可修改 imp.swipe_by_percent_on_screen(50, 70, 50, 30, 700) imp.click_add_subtasks() imp.wait_for_add_subtasks_page_load() title = "子任务标题0015" imp.input_subtasks_title(title) imp.input_subtasks_describe("子任务描述0015") imp.click_subtasks_add_icon() sccp = SelectCompanyContactsPage() sccp.wait_for_page_load() sccp.click_contacts_by_name("大佬1") sccp.click_sure_button() imp.wait_for_add_subtasks_page_load() imp.click_save() imp.wait_for_check_item_page_load() imp.swipe_by_percent_on_screen(50, 70, 50, 30, 700) # 2.打开查看子任务界面 imp.click_text(title) time.sleep(2) # 3.打开时间选择弹窗 imp.click_modify() time.sleep(2) imp.swipe_time_by_minute() time.sleep(2) # 获取子任务当前滚动条时间(由于滚动条的时间xpath会随滑动变化,验证时间有局限性) current_time = imp.get_time_text() imp.click_sure() # 4.修改成功,返回查看子任务详情界面,界面截止时间显示为刚刚修改的时间信息 self.assertEquals(imp.is_toast_exist("修改成功"), True) imp.wait_for_check_subtasks_page_load() self.assertEquals(imp.is_text_present(current_time), True)
def test_ZYSX_0016(self): """删除子任务""" imp = ImportantMattersPage() imp.wait_for_page_load() # 创建新事项 Preconditions.create_new_item() imp.click_first_item() # 1.等待查看事项页面加载 imp.wait_for_check_item_page_load() # 确保有子任务可修改 imp.swipe_by_percent_on_screen(50, 70, 50, 30, 700) imp.click_add_subtasks() imp.wait_for_add_subtasks_page_load() title = "子任务标题0016" imp.input_subtasks_title(title) imp.input_subtasks_describe("子任务描述0016") imp.click_subtasks_add_icon() sccp = SelectCompanyContactsPage() sccp.wait_for_page_load() sccp.click_contacts_by_name("大佬1") sccp.click_sure_button() imp.wait_for_add_subtasks_page_load() imp.click_save() imp.wait_for_check_item_page_load() imp.swipe_by_percent_on_screen(50, 70, 50, 30, 700) # 2.打开查看子任务界面 imp.click_text(title) imp.wait_for_check_subtasks_page_load() # 3.弹窗删除子任务按钮 imp.click_three_points_icon() time.sleep(2) # 4.弹窗删除确认弹窗 imp.click_delete_subtasks() time.sleep(1) imp.click_sure() # 5.子任务删除,返回事项列表首页,再次打开该事项详情,相关的子任务已经从子任务列表消失(由于元素没有ID,间接验证) self.assertEquals(imp.is_toast_exist("删除成功"), True) imp.wait_for_page_load() imp.click_first_item() imp.wait_for_check_item_page_load() imp.swipe_by_percent_on_screen(50, 70, 50, 30, 700) self.assertEquals(imp.is_text_present("没子任务"), True) imp.click_back() # 等待重要事项首页加载 imp.wait_for_page_load()
def test_QFXS_0039(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_sure_button() nmp.wait_for_page_load() nmp.click_add_icon() sccp.wait_for_page_load() # 1.跳转联系人选择器后,上次添加的联系人是否为已选中状态 self.assertEquals(sccp.is_exist_select_contacts_name("佬1"), True) self.assertEquals(sccp.is_exist_select_contacts_name("佬2"), True) sccp.click_contacts_by_name("大佬3") sccp.click_sure_button() nmp.wait_for_page_load() # 2.是否添加成功,已添加与新添加用户均展示正常 self.assertEquals(nmp.is_exist_text("大佬1"), True) self.assertEquals(nmp.is_exist_text("大佬2"), True) self.assertEquals(nmp.is_exist_text("大佬3"), True) nmp.click_back() time.sleep(2) nmp.click_no() # 等待群发信使首页加载 gmp.wait_for_page_load()
def test_QFXS_0006(self): """添加成员之后再移除成员""" gmp = GroupMessengerPage() # 等待群发信使首页加载 gmp.wait_for_page_load() gmp.click_new_message() nmp = NewMessagePage() time.sleep(3) # 等待群发信使->新建短信页面加载 nmp.wait_for_page_load() nmp.click_add_icon() sccp = SelectCompanyContactsPage() # 等待群发信使->新建短信->选择联系人页面加载 sccp.wait_for_page_load() sccp.click_department_by_name("测试部门1") # 添加多个联系人 sccp.click_contacts_by_name("大佬1") sccp.click_contacts_by_name("大佬2") sccp.click_contacts_by_name("大佬3") # 是否成功选中 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) # 点击部门已选成员图像取消勾选 sccp.click_contacts_image_by_name("大佬1") time.sleep(2) # 点击顶部已选成员信息移除成员 sccp.click_select_contacts_name("佬2") # 点击确定 sccp.click_sure_button() time.sleep(3) nmp.wait_for_page_load() # 1.是否正常移除成员 self.assertEquals(nmp.is_exist_text("大佬1"), False) self.assertEquals(nmp.is_exist_text("大佬2"), False) self.assertEquals(nmp.is_exist_text("大佬3"), True) nmp.click_back() time.sleep(2) nmp.click_no() # 等待群发信使首页加载 gmp.wait_for_page_load()
def create_new_item(): """创建新事项""" imp = ImportantMattersPage() imp.click_new_item() # 等待创建事项页面加载 imp.wait_for_create_item_page_load() # 输入创建事项标题 title = "测试事项" imp.input_create_item_title(title) # 输入创建事项描述 imp.input_create_item_describe("描述内容12345") imp.click_add_icon() sccp = SelectCompanyContactsPage() sccp.wait_for_page_load() # 选择参与人 sccp.click_contacts_by_name("大佬1") sccp.click_sure_button() imp.wait_for_create_item_page_load() imp.click_create_item() imp.wait_for_page_load()
def test_ZYSX_0014(self): """修改子任务-修改负责人""" imp = ImportantMattersPage() imp.wait_for_page_load() # 创建新事项 Preconditions.create_new_item() imp.click_first_item() # 1.等待查看事项页面加载 imp.wait_for_check_item_page_load() # 确保有子任务可修改 imp.swipe_by_percent_on_screen(50, 70, 50, 30, 700) imp.click_add_subtasks() imp.wait_for_add_subtasks_page_load() title = "子任务标题0014" imp.input_subtasks_title(title) imp.input_subtasks_describe("子任务描述0014") imp.click_subtasks_add_icon() sccp = SelectCompanyContactsPage() sccp.wait_for_page_load() sccp.click_contacts_by_name("大佬1") sccp.click_sure_button() imp.wait_for_add_subtasks_page_load() imp.click_save() imp.wait_for_check_item_page_load() imp.swipe_by_percent_on_screen(50, 70, 50, 30, 700) # 2.打开查看子任务界面 imp.click_text(title) time.sleep(2) imp.click_text("佬1") # 3.等待选择联系人页面加载 sccp.wait_for_page_load() search_name = "大佬2" sccp.input_search_message(search_name) time.sleep(2) sccp.click_contacts_by_name(search_name) sccp.click_sure_button() # 4.修改成功,返回查看子任务详情界面,界面负责人显示为刚刚修改的联系人 imp.wait_for_check_subtasks_page_load() self.assertEquals(imp.is_text_present("佬2"), True)
def test_ZYSX_0012(self): """修改子任务-修改任务描述""" imp = ImportantMattersPage() imp.wait_for_page_load() # 创建新事项 Preconditions.create_new_item() imp.click_first_item() # 1.等待查看事项页面加载 imp.wait_for_check_item_page_load() # 确保有子任务可修改 imp.swipe_by_percent_on_screen(50, 70, 50, 30, 700) imp.click_add_subtasks() imp.wait_for_add_subtasks_page_load() title = "子任务标题0012" imp.input_subtasks_title(title) content = "子任务描述0012" imp.input_subtasks_describe(content) imp.click_subtasks_add_icon() sccp = SelectCompanyContactsPage() sccp.wait_for_page_load() sccp.click_contacts_by_name("大佬1") sccp.click_sure_button() imp.wait_for_add_subtasks_page_load() imp.click_save() imp.wait_for_check_item_page_load() imp.swipe_by_percent_on_screen(50, 70, 50, 30, 700) # 2.打开查看子任务界面 imp.click_text(title) time.sleep(2) # 3.打开子任务内容编辑界面 imp.click_text(content) time.sleep(2) modify_content = "修改后的子任务描述0012" imp.input_modify_content(modify_content) imp.click_save() # 4.修改成功,返回查看子任务详情界面,界面任务描述显示为刚刚修改的信息 self.assertEquals(imp.is_toast_exist("修改成功"), True) imp.wait_for_check_subtasks_page_load() self.assertEquals(imp.is_text_present(modify_content), True)