class TestSearch: def setup_class(self): # 声明driver self.driver = get_android_driver('com.android.settings', '.Settings') # 实例化统一入口页面类 self.page_obj = Page(self.driver) def teardown_class(self): """退出driver""" self.driver.quit() @pytest.fixture(scope="class", autouse=True) def click_search(self): """点击搜索按钮 依赖一次""" self.page_obj.get_setting().click_search_btn() @pytest.mark.parametrize("search, expdata", search_data()) def test_search(self, search, expdata): """ 搜索测试 :param search: 搜索内容 :param expdata: 搜索预期结果 :return: """ # # 定位搜索输入框 self.page_obj.get_search().search_text(search) # 断言 assert expdata in self.page_obj.get_search().get_search_result()
def test_set_font_size(self): # 设置页面 -点击显示 Page.get_setting_page().click_show_btn() # 显示页面 -选择字体 Page.get_show_page().choice_front() # 显示页面 -获取描述信息-断言 assert "普通" in Page.get_show_page().get_summary_list()
class TestParaSearch: '''搜索测试类''' def setup_class(self): self.driver = get_android_driver('com.android.settings', '.Settings') '''实例化统一入口类''' self.page_obj = Page(self.driver) def teardown_class(self): self.driver.quit() @pytest.fixture(scope='class', autouse=True) def goto_search(self): # 点击搜索按钮 self.page_obj.search_page().click_search_btn() @pytest.mark.parametrize('s_text,s_exp', [('1', '休眠'), ('m', 'MAC地址'), ('w', 'WPS按钮')]) def test_para_search(self, s_text, s_exp): '''搜索测试类''' # 输入搜索内容 self.page_obj.search_page().send_search_text(s_text) # 获取搜索结果 result = self.page_obj.search_page().get_search_result() # 断言 assert s_exp in result
def test_set_font(self): # 设置页面-点击显示 Page.get_settingPage().click_show_btn() # 显示页面-选择字体 Page.get_showPage().click_font() # 显示页面-获取信息-断言 assert "普通" in Page.get_showPage().get_summary_list()
def test_publish_article(self, title, content, channel, exp): """测试发布表文章""" logging.info("发布文章: title:{} - content:{} - channel:{} - exp:{}".format(title,content,channel,exp)) # 发表文章 Page.get_mp_publish_article().publish_article(title, content, channel) # 断言 assert Page.get_mp_publish_article().page_exits_text(exp)
def test_set_ziti(self): # 点击显示按钮 Page.get_setting_page().click_xianshi() # 点击字体大小 # 选择字体为普通 Page.get_xianshi_page().click_ziti_size() # 断言 assert "普通" in Page.get_xianshi_page().get_ziti_results()
def test_search(self, input_text, search_text): # 在输入框中输入内容 Page.get_search_page().send_search_text(input_text) # 获取搜索结果 results = Page.get_search_page().get_search_results() # 断言搜索结果 assert search_text in results
def test_set_ziti(self): # 设置页面 -点击显示 Page.get_settingPage().click_xianshi_btn() # 显示页面 -选择字体 Page.get_xianshiPage().choice_ziti() # 显示页面 -获取描述信息-断言 assert "普通" in Page.get_xianshiPage().get_summary_list()
def test_login(self, phone, code, exp): """自媒体登陆""" logging.info("自媒体登录输入数据,phone:{} - code:{} - exp:{}".format( phone, code, exp)) # 登录 Page.get_mp_login().login(phone, code) # 断言 assert Page.get_mp_home().page_exits_text(exp)
def test_login(self, name, passwd, exp): """后台登录""" logging.info('后台登录: name:{} - passwd:{} - exp:{}'.format( name, passwd, exp)) # 登录 Page.get_mis_login().login(name, passwd) # 断言 assert Page.get_mis_login().page_exits_text(exp)
def setup(self): """ 点击我的 -已有账号去登陆 :return: """ # 我 Page.get_home().click_my_btn() # 已有账号去登陆 Page.get_sign().click_exits_account()
def test_audit_article(self, article, exp): """审核文章""" logging.info("审核文章: article:{} - exp:{}".format(article, exp)) # 查询 Page.get_mis_audit().query_article(article) # 审核 Page.get_mis_audit().audit_article_pass() # 断言 assert Page.get_mis_audit().page_exits_text(exp)
def test_search_text(self, click_search_btnon, search_data, exp_data): """ 搜索测试方法 :param search_data: 输入内容 :param exp_data: 预期结果 :return: """ Page.get_searchPage().search_text(search_data) assert exp_data in Page.get_searchPage().get_search_result()
def test_search_text(self, search_data, exp_data): """ 搜索测试方法 :param search_data: 输入内容 :param exp_data: 预期结果 :return: """ # 输入框输入内容 Page.get_searchPage().search_text(search_data) # 断言 assert exp_data in Page.get_searchPage().get_search_result()
def test_search_text(self, search_text, search_result): """ 搜索内容测试方法 :param search_text: 搜索内容 :param search_result: 搜索预期包含结果 :return: """ # 输入 Page.get_searchPage().search_text(search_text) # 断言 assert search_result in Page.get_searchPage().search_result()
def setup_class(self): # 声明driver self.driver = get_driver("com.android.settings", ".Settings") # # 实例化设置页面类 # self.setting_obj = SettingPage(self.driver) # # 实例化更多页面类 # self.more_page = MorePage(self.driver) # # 实例化移动网络页面类 # self.mobil_obj = MobileNetworkPage(self.driver) # 实例化统一入口类 self.page_obj = Page(self.driver)
def test_search_text(self, search_data, exp_dara): """ 搜索测试方法 :param search_data: 搜索输入文本内容 :param exp_dara: 预期结果 :return: """ # 搜索输入框输入文本内容 Page.get_searchpage().input_search_text(search_data) # 断言预期结果 assert exp_dara in Page.get_searchpage().get_search_result()
def test_search_data(self, search_data, search_result): """ 输入搜索内容 和 判断预期结果 :param search_data: 搜索内容 :param search_result: 预期结果 :return: """ logging.info("搜索测试用例: 搜索内容:{} --预期结果:{}".format(search_data, search_result)) # 输入搜索内容 Page.get_search().search_input_text(search_data) # 断言 assert search_result in Page.get_search().search_result_value()
def test_search_text(self, search_data, exp_data): """ 搜索测试方法 :param search_data: 输入内容 :param exp_data: 预期结果 :return: """ # 点击搜索按钮 Page.get_settingPage().click_sousuo_btn() # 输入框输入内容 # self.base_obj.send_ele(self.search_input_id, search_data) Page.get_sousuoPage().search_test(search_data) # 获取结果 # results = self.base_obj.search_eles(self.search_result_ids) sousuojg = Page.get_sousuoPage().get_search_result() # 断言 assert exp_data in sousuojg
class Test_Send_Sms: @allure.step(title="第一步:初始化数据") def setup_class(self): # 导入driver self.driver = get_driver("com.android.mms", ".ui.ConversationList") # 实例化统一入口类 self.page_obj = Page(self.driver) @allure.step(title="第四步:退出驱动对象") def teardown_class(self): # 退出驱动对象 self.driver.quit() @allure.step(title="第二步:点击新建短信,输入联系人") @pytest.fixture(scope="class", autouse=True) # 作为条件依赖 只执行一次 def test_click_sms_btn(self): # 点击新建短信 self.page_obj.get_sms_page_obj().click_sms_btn() # 输入联系人 self.page_obj.get_new_sms_page_obj().send_receiver(13212341234) @allure.step(title="第三步:输入短信内容123,王旭,abcdefg") @pytest.mark.parametrize("sms_data", ["123", "王旭", "abcdefg"]) def test_send_sms_text(self, sms_data): # 输入内容 # 点击发送 self.page_obj.get_new_sms_page_obj().send_sms(sms_data) # 获取结果列表断言 assert sms_data in self.page_obj.get_new_sms_page_obj().get_result()
def test_search(self, search_text, search_exp): """ 搜索内容测试 :param search_text: 搜索内容 :param search_exp: 搜索预期结果 :return: """ # 搜索 result = Page.get_search().get_search_result(search_text) # 断言 assert search_exp in result
def test_login(self, name, pwd, code, is_suc): Page.get_login().login(name, pwd, code) time.sleep(3) if is_suc: assert Page.get_login().page_exits_text("系统后台") # 点击退出 Page.get_login().close_tp() time.sleep(10) else: assert Page.get_login().page_exits_text("账号密码不正确")
class Test_Set_Network: def setup_class(self): # 声明driver self.driver = get_driver("com.android.settings", ".Settings") # # 实例化设置页面类 # self.setting_obj = SettingPage(self.driver) # # 实例化更多页面类 # self.more_page = MorePage(self.driver) # # 实例化移动网络页面类 # self.mobil_obj = MobileNetworkPage(self.driver) # 实例化统一入口类 self.page_obj = Page(self.driver) def teardown_class(self): self.driver.quit() @pytest.fixture(scope="class", autouse=True) def in_mobile_setting(self): # 进入移动网络页面 # 点击更多 # self.setting_obj.click_more_btn() self.page_obj.get_setting_page_obj().click_more_btn() # 点击移动网络 # self.more_page.click_mobile_btn() self.page_obj.get_more_page_obj().click_mobile_btn() def test_set_network(self): # 测试网络修改 # 点击首选网络类型 # self.mobil_obj.click_one_network() self.page_obj.get_mobile_network_page_obj().click_one_network() # 选择3G网络 # self.mobil_obj.set_network_type(1) self.page_obj.get_mobile_network_page_obj().set_network_type(1) # 取结果列表 断言 # assert "3G" in self.mobil_obj.get_set_network_result() assert "3G" in self.page_obj.get_mobile_network_page_obj( ).get_set_network_result()
class Test_set_network(): def setup_class(self): # 实例化driver self.driver = get_driver('com.android.settings', '.Settings') # 实例化page对象 self.page_obj = Page(self.driver) def teardown_class(self): self.driver.quit() # 依赖条件 @pytest.fixture(scope="class", autouse=True) def click_more_and_mobile_network(self): '''点击更多和移动网络''' self.page_obj.get_page_setting_obj().click_more_but() self.page_obj.get_page_more_obj().click_mobile_network_but() def test_set_network(self): '''点击首选网络和3G''' self.page_obj.get_page_mobile_network().click_one_network_but() self.page_obj.get_page_mobile_network().set_network_type(1) '''获取结果列表--断言''' assert "3G" in self.page_obj.get_page_mobile_network().get_result_list( )
class Test_setting(): def setup_class(self): self.page_obj = Page(get_driver("com.android.settings", ".Settings")) # self.page_obj = Page(get_driver("com.android.settings", ".Settings")) def teardown_class(self): self.page_obj.driver.quit() def test_change(self): #点击更多 self.page_obj.get_setting_page().More() #点击移动网络 self.page_obj.get_more_page().network_btn() #点击首选网络类型 self.page_obj.get_mobile_network().select_first() #断言 # print(self.page_obj.get_mobile_network().get_res()) assert "3G" in self.page_obj.get_mobile_network().get_res()
class TestSms: def setup_class(self): # 实例化统一入口类 self.page = Page( get_android_driver("com.android.mms", ".ui.ConversationList")) def teardown_class(self): self.page.driver.quit() @pytest.fixture(scope="class", autouse=True) def goto_sms_new_page(self): """进入短信发送页面""" # 首页点击新建 self.page.get_smshome().click_new_btn() # 新建短信页面输入手机号 self.page.get_sendsms().recv_phone("13544443333") @pytest.mark.parametrize("text", ["hello", "world"]) def test_sms(self, text): """测试短信发送""" # 发送 self.page.get_sendsms().send_sms(text) # 取结果断言 assert text in self.page.get_sendsms().get_sms_result()
def click_search_btn(self): """点击搜索按钮 并且 点击一次""" # 搜索页面--点击搜索按钮 Page.get_search_page().click_search_btn()
import time from selenium.webdriver.common.by import By from Base.page import Page from Base.get_driver import get_driver # 实例化统一入口类 page_obj = Page( get_driver("com.yunmall.lc", "com.yunmall.ymctoc.ui.activity.MainActivity")) # 点击首页我 page_obj.get_home_page().click_home_my_btn() # 点击已有账户去登录 page_obj.get_sign_page().click_sign_exits_btn() # 登录操作 page_obj.get_login_page().login("13488834010", "159357li123") def get_toast(tos): # 获取消息 xpath_data = (By.XPATH, "//*[contains(@text,'%s')]" % tos) toast_text = page_obj.get_setting_page().search_element(xpath_data, timeout=3, poll_frequency=0.5) print(toast_text.text)
def setup_class(self): """点击搜索按钮""" Page.get_setting().click_search_btn()
def setup_class(self): # 实例化统一入口类 self.page_obj = Page(get_driver("com.yunmall.lc", "com.yunmall.ymctoc.ui.activity.MainActivity"))