def setUpClass(cls): # 创建联系人 fail_time = 0 import dataproviders while fail_time < 3: try: required_contacts = dataproviders.get_preset_contacts() conts = ContactsPage() preconditions.connect_mobile(REQUIRED_MOBILES['Android-移动']) current_mobile().hide_keyboard_if_display() preconditions.make_already_in_message_page() for name, number in required_contacts: conts.open_contacts_page() if conts.is_text_present("显示"): conts.click_text("不显示") conts.create_contacts_if_not_exits(name, number) # 创建群 # required_group_chats = dataproviders.get_preset_group_chats() # # conts.open_group_chat_list() # group_list = GroupListPage() # for group_name, members in required_group_chats: # group_list.wait_for_page_load() # group_list.create_group_chats_if_not_exits(group_name, members) # group_list.click_back() # conts.open_message_page() return except: fail_time += 1 import traceback msg = traceback.format_exc() print(msg)
def test_me_sms_setting_0002(self): """开启应用内收发短信""" sms_setting = SmsSettingPage() sms_setting.turn_on('应用内收发短信') sms_setting.click_button('我知道了') sms_setting.assert_menu_item_has_been_turn_on('应用内收发短信') sms_setting.click_back() SettingPage().click_back() MePage().open_message_page() # 切到另一台手机发短信,一定要确保配置的卡顺序与实际手机卡槽位置一致 mobile2 = preconditions.connect_mobile(REQUIRED_MOBILES['Android-XX']) content = uuid.uuid4().__str__() send_number, card_type = mobile2.send_sms(self.login_number, content) # 切回来继续操作 preconditions.connect_mobile(REQUIRED_MOBILES['Android-移动']) msg_page = MessagePage() msg_page.click_message(send_number, 15) chat_page = ChatWindowPage() if chat_page.is_tips_display(): chat_page.directly_close_tips_alert() chat_page.assert_message_content_display(content)
def make_already_in_call(): """确保进入通话界面""" preconditions.connect_mobile(REQUIRED_MOBILES['IOS-移动']) current_mobile().hide_keyboard_if_display() cpg = CallPage() message_page = MessagePage() if message_page.is_on_this_page(): cpg.click_call() return if cpg.is_on_the_call_page(): return try: current_mobile().terminate_app('com.chinasofti.rcs', timeout=2000) except: pass current_mobile().launch_app() try: message_page.wait_until( condition=lambda d: message_page.is_on_this_page(), timeout=15) cpg.click_call() return except TimeoutException: pass preconditions.reset_and_relaunch_app() preconditions.make_already_in_one_key_login_page() preconditions.login_by_one_key_login() cpg.click_call()
def setUpClass(cls): preconditions.connect_mobile(REQUIRED_MOBILES['Android-移动']) # 导入测试联系人、群聊 fail_time1 = 0 flag1 = False import dataproviders while fail_time1 < 3: try: required_contacts = dataproviders.get_preset_contacts() conts = ContactsPage() current_mobile().hide_keyboard_if_display() Preconditions.make_already_in_call() conts.open_contacts_page() try: if conts.is_text_present("发现SIM卡联系人"): conts.click_text("显示") except: pass for name, number in required_contacts: # 创建联系人 conts.create_contacts_if_not_exits(name, number) required_group_chats = dataproviders.get_preset_group_chats() conts.open_group_chat_list() group_list = GroupListPage() for group_name, members in required_group_chats: group_list.wait_for_page_load() # 创建群 group_list.create_group_chats_if_not_exits( group_name, members) group_list.click_back() conts.open_message_page() flag1 = True except: fail_time1 += 1 if flag1: break # 导入团队联系人 fail_time2 = 0 flag2 = False while fail_time2 < 5: try: Preconditions.make_already_in_call() contact_names = ["大佬1", "大佬2", "大佬3", "大佬4", "English"] Preconditions.create_he_contacts(contact_names) contact_names2 = [("Lily", "13800138050")] Preconditions.create_he_contacts2(contact_names2) department_names = ["测试部门1", "测试部门2"] WorkbenchPreconditions.create_department_and_add_member( department_names) flag2 = True except: fail_time2 += 1 if flag2: break
def setUp_test_me_sms_setting_0002(self): preconditions.connect_mobile(REQUIRED_MOBILES['Android-移动']) current_mobile().hide_keyboard_if_display() preconditions.reset_and_relaunch_app() preconditions.make_already_in_one_key_login_page() self.login_number = preconditions.login_by_one_key_login() me_page = MePage() me_page.open_me_page() me_page.click_menu('设置') setting_page = SettingPage() setting_page.click_menu("短信设置")
def setUp_test_me_0001(): """ 1.网络正常 2.已登录客户端 3.当前在我页面 4.有群组 :return: """ preconditions.connect_mobile(REQUIRED_MOBILES['Android-移动']) current_mobile().hide_keyboard_if_display() preconditions.make_already_in_message_page() me_page = MePage() me_page.open_me_page()
def make_already_have_used_free_sms(): """确保非首次使用免费短信功能""" preconditions.connect_mobile(REQUIRED_MOBILES['Android-移动']) current_mobile().hide_keyboard_if_display() Preconditions.make_already_in_message_page() mp = MessagePage() mp.click_add_icon() mp.click_free_sms() time.sleep(1) if FreeMsgPage().is_exist_cancle_btn(): FreeMsgPage().click_sure_btn() time.sleep(1) SelectContactsPage().click_search_contact() current_mobile().hide_keyboard_if_display() mp.click_back_by_android() return
def setUp_test_me_msg_setting_0006(): preconditions.connect_mobile(REQUIRED_MOBILES['Android-移动']) current_mobile().hide_keyboard_if_display() preconditions.reset_and_relaunch_app() preconditions.make_already_in_one_key_login_page() preconditions.login_by_one_key_login() me_page = MePage() me_page.open_me_page() me_page.click_menu('设置') setting_page = SettingPage() setting_page.click_menu("消息通知") msg_setting = MessageNoticeSettingPage() msg_setting.wait_for_page_load() msg_setting.turn_on('接收OA消息') msg_setting.assert_menu_item_has_been_turn_on('接收OA消息')
def make_already_in_message_page(): """确保进入消息界面""" preconditions.connect_mobile(REQUIRED_MOBILES['Android-移动']) current_mobile().hide_keyboard_if_display() message_page = MessagePage() if message_page.is_on_this_page(): return try: current_mobile().terminate_app('com.chinasofti.rcs', timeout=2000) except: pass current_mobile().launch_app() try: message_page.wait_until( condition=lambda d: message_page.is_on_this_page(), timeout=15 ) return except TimeoutException: pass preconditions.reset_and_relaunch_app() preconditions.make_already_in_one_key_login_page() preconditions.login_by_one_key_login() @staticmethod def enter_single_chat_page(name): """进入单聊聊天会话页面""" mp = MessagePage() mp.wait_for_page_load() # 点击 + mp.click_add_icon() # 点击“新建消息” mp.click_new_message() slc = SelectLocalContactsPage() slc.wait_for_page_load() # 进入单聊会话页面 slc.selecting_local_contacts_by_name(name) bcp = BaseChatPage() if bcp.is_exist_dialog(): # 点击我已阅读 bcp.click_i_have_read() scp = SingleChatPage() # 等待单聊会话页面加载 scp.wait_for_page_load()
def default_setUp(self): """确保进入消息界面""" preconditions.connect_mobile(REQUIRED_MOBILES['Android-移动']) Preconditions.make_already_in_message_page()