def pubMethod_init(self):
     self.base = Base(self.driver)
     self.home = HomePage(self.driver)
     self.pubmethod = PubMethod(self.driver)
     logging.info("")
     logging.info("****开始执行用例****")
     self.pubmethod.clearApp(BROWSER_PACKAGE_NAME)
     self.pubmethod.startApp(BROWSER_PACKAGE_NAME)
     yield
     logging.info("****用例执行结束****")
     logging.info("")
 def home_init(self):
     self.base = Base(self.driver)
     self.home = HomePage(self.driver)
     self.pubmethod = PubMethod(self.driver)
     self.share = SharePage(self.driver)
     self.more = MorePage(self.driver)
     logging.info("")
     logging.info("****开始执行用例****")
     self.pubmethod.stopApp(BROWSER_PACKAGE_NAME)
     self.pubmethod.startApp(BROWSER_PACKAGE_NAME)
     self.home.clickHome()
     self.home.clickHomeOnPage(HOME_PAGE)
     yield
     logging.info("****用例执行结束****")
     logging.info("")
Esempio n. 3
0
class PersonalCenterPage(Base):
    def __init__(self, driver):
        self.base = Base(driver)

    # 点击个人中心页--我的账号图标 ---wmw
    def clickFlymemeB(self):
        # 判断页面是否存在未登录
        if self.base.elementIsExit(PERSONAL_CENTER_NOT_LOGGED_IN):
            self.base.clickByElement(PERSONAL_CENTER_FLYME_ME_A, '我的账号图标')
        else:
            self.assertFalse(PERSONAL_CENTER_NOT_LOGGED_IN)

    # 点击我的消息 ---wmw
    def clickMyMessages(self):
        # 判断页面是否存在我的账号图标
        if self.base.elementIsExit(PERSONAL_CENTER_FLYME_ME_A):
            self.base.clickByElement(PERSONAL_CENTER_MY_MESSAGES, '我的消息')
        else:
            self.assertFalse(PERSONAL_CENTER_FLYME_ME_A)

    # 点击我的评论 ---wmw
    def clickMyComment(self):
        # 判断页面是否存在我的账号图标
        if self.base.elementIsExit(PERSONAL_CENTER_FLYME_ME_A):
            self.base.clickByElement(PERSONAL_CENTER_MY_COMMENT, '我的评论')
        else:
            self.assertFalse(PERSONAL_CENTER_FLYME_ME_A)

    # 判断账号是否登陆,未登录则登录账号 ---wmw
    def elementIsLandFlymeme(self):
        # 判断页面是否存在未登录
        if self.base.elementIsExit(PERSONAL_CENTER_NOT_LOGGED_IN):
            self.base.clickByElement(PERSONAL_CENTER_FLYME_ME_A, '我的账号图标')
            # 输入密码
            self.inputPassWord()
            # 点击登录
            self.clickLoggenIn()
            sleep(4)
            # 此处有bug,为了确保当前页面账号更新已登陆成功,故多点几次我的消息
            self.clickMyMessages()
            self.clickMyMessages()
        else:
            return

    # 点击赞了我的消息 ---wmw
    def clickPraisedMyMessages(self):
        if self.base.elementIsExit(PERSONAL_CENTER_MY_MESSAGES_A):
            self.base.clickByElement(PERSONAL_CENTER_MY_MESSAGES_A, '赞了我的消息')
        else:
            self.assertFalse(PERSONAL_CENTER_MY_MESSAGES_A)

    # 点击我的评论页,第一条评论 ---wmw
    def clickPraisedMyComment(self):
        if self.base.elementIsExit(PERSONAL_CENTER_MY_COMMENT_A):
            self.base.clickByElement(PERSONAL_CENTER_COMMENT_ONE,
                                     '点击我的评论页,第一条评论')
        else:
            self.assertFalse(PERSONAL_CENTER_MY_COMMENT_A)

    # 输入密码 ---wmw
    def inputPassWord(self):
        if self.base.elementIsExit(PERSONAL_CENTER_PASSWORD):
            # 备注:账号必须是测试账号,账号输入框处必须有账号名在里面,否则登录不成功
            self.base.elementSetText(PERSONAL_CENTER_PASSWORD, "appadmin111",
                                     "输入密码")
        else:
            self.assertFalse(PERSONAL_CENTER_PASSWORD)

    # 登录 ---wmw
    def clickLoggenIn(self):
        if self.base.elementIsExit(PERSONAL_CENTER_REGISTER):
            self.base.clickByElement(PERSONAL_CENTER_LOGGED_IN, "登录")
        else:
            self.assertFalse(PERSONAL_CENTER_REGISTER)

    # 点击评论文章  ---wmw
    def clickCommentary(self):
        if self.base.elementIsExit(PERSONAL_CENTER_COMMENT_DETAILS):
            self.base.clickByElement(PERSONAL_CENTER_COMMENTARY, "点击评论文章")
        else:
            self.assertFalse(PERSONAL_CENTER_COMMENT_DETAILS)

    # 点击小游戏——LYX
    def clickMiniGame(self):
        if self.base.elementIsExit(MINI_GAME):
            self.base.clickByElement(MINI_GAME, "小游戏")
        else:
            self.assertFalse(MINI_GAME)

    # 点击删除评论——wmw
    def clickDelete(self):
        if self.base.elementIsExit(NEWS_INPUT_COMMENTS):
            self.base.clickByElement(PERSONAL_CENTER_DELETE, "点击删除")
        else:
            self.assertFalse(NEWS_INPUT_COMMENTS)

    # 点击删除评论弹框--确定按钮——wmw
    def clickDeleteBox(self):
        if self.base.elementIsExit(PERSONAL_CENTER_DELETE_BOX):
            self.base.clickByElement(PERSONAL_CENTER_DETERMINE, "点击确定")
        else:
            self.assertFalse(PERSONAL_CENTER_DELETE_BOX)

    # 在个人中心页,点击退出账号 ---wmw
    def clickOutAccount(self):
        # 判断页面是否存在我的账号图标
        if self.base.elementIsExit(PERSONAL_CENTER_NOT_LOGGED_IN):
            return
        else:
            self.base.clickByElement(PERSONAL_CENTER_FLYME_ME_A, '我的账号图标')
            if self.base.elementIsExit(PERSONAL_CENTER_ACCOUNT):
                self.base.clickByElement(PERSONAL_CENTER_ACCOUNT, "点击账号管理")
                if self.base.elementIsExit(PERSONAL_CENTER_OUT_ACCOUNT):
                    self.base.clickByElement(PERSONAL_CENTER_OUT_ACCOUNT,
                                             "点击退出账号")
                    if self.base.elementIsExit(PERSONAL_CENTER_PASSWORD_B):
                        # 备注:账号必须是测试账号,账号输入框处必须有账号名在里面,否则登录不成功
                        self.base.elementSetText(PERSONAL_CENTER_PASSWORD_B,
                                                 "appadmin111", "输入退出密码")
                        if self.base.elementIsExit(PERSONAL_CENTER_DETERMINE):
                            self.base.clickByElement(PERSONAL_CENTER_DETERMINE,
                                                     "点击确定")
                        else:
                            self.assertFalse(PERSONAL_CENTER_DETERMINE)
                    else:
                        self.assertFalse(PERSONAL_CENTER_PASSWORD_B)
                else:
                    self.assertFalse(PERSONAL_CENTER_OUT_ACCOUNT)
            else:
                if self.base.elementIsExit(PERSONAL_CENTER_COMPLETE_BUTTON):
                    self.base.clickByElementIdAndInstance(
                        PERSONAL_CENTER_BUTTON, "点击同步数据按钮", 0)
                    self.base.clickByElementIdAndInstance(
                        PERSONAL_CENTER_BUTTON, "点击查找手机按钮", 1)
                    self.base.clickByElement(PERSONAL_CENTER_COMPLETE_BUTTON,
                                             "点击完成按钮")
                    if self.base.elementIsExit(PERSONAL_CENTER_ACCOUNT):
                        self.base.clickByElement(PERSONAL_CENTER_ACCOUNT,
                                                 "点击账号管理")
                        if self.base.elementIsExit(
                                PERSONAL_CENTER_OUT_ACCOUNT):
                            self.base.clickByElement(
                                PERSONAL_CENTER_OUT_ACCOUNT, "点击退出账号")
                            if self.base.elementIsExit(
                                    PERSONAL_CENTER_PASSWORD_B):
                                # 备注:账号必须是测试账号,账号输入框处必须有账号名在里面,否则登录不成功
                                self.base.elementSetText(
                                    PERSONAL_CENTER_PASSWORD_B, "appadmin111",
                                    "输入退出密码")
                                if self.base.elementIsExit(
                                        PERSONAL_CENTER_DETERMINE):
                                    self.base.clickByElement(
                                        PERSONAL_CENTER_DETERMINE, "点击确定")
                                else:
                                    self.assertFalse(PERSONAL_CENTER_DETERMINE)
                            else:
                                self.assertFalse(PERSONAL_CENTER_PASSWORD_B)
                        else:
                            self.assertFalse(PERSONAL_CENTER_OUT_ACCOUNT)
                else:
                    self.assertFalse(PERSONAL_CENTER_COMPLETE_BUTTON)

    # 点击语言和时间——wmw
    def clickLanguageAndTime(self):
        if self.base.elementIsExit(SETTINGS):
            self.base.clickByElement(LANGUAGE_AND_TIME, "语言和时间")
        else:
            self.assertFalse(SETTINGS)

    # 点击系统输入法——wmw
    def clickInputMethod(self):
        if self.base.elementIsExit(LANGUAGE_AND_TIME):
            self.base.clickByElement(INPUT_METHOD, "系统输入法")
        else:
            self.assertFalse(LANGUAGE_AND_TIME)

    # 点击设置按钮——wmw
    def clickSettingButton(self):
        if self.base.elementIsExit(SETTINGS_BUTTON):
            self.base.clickByElement(SETTINGS_BUTTON, "设置按钮")
        else:
            self.assertFalse(SETTINGS_BUTTON)

    # 点击搜狗输入法魅族版——wmw
    def clickSouGou(self):
        if self.base.elementIsExit(SOUGOU):
            self.base.clickByElement(SOUGOU, "搜狗输入法魅族版")
        else:
            self.assertFalse(SOUGOU)
Esempio n. 4
0
class ReadPage(Base):
    def __init__(self, driver):
        self.base = Base(driver)

    # 阅读模式-点击小说三寸人间  --wmw
    def clickBook(self):
        if self.base.elementIsExit(READ_BOOK):
            self.base.clickByElement(READ_BOOK, "点击小说封面")
        else:
            self.assertFalse(READ_BOOK)

    # 阅读模式-点击开始阅读  --wmw
    def clickRead(self):
        if self.base.elementIsExit(READ):
            self.base.clickByElement(READ, "点击开始阅读")
        else:
            self.assertFalse(READ)

    # 阅读模式-点击章节  --wmw
    def clickChapter(self):
        if self.base.elementIsExit(READ_CATALOG):
            self.base.clickByElement(READ_CHAPTER, "点击章节")
        else:
            self.assertFalse(READ_CATALOG)

    # 阅读模式-立即开启  --wmw
    def clickOpen(self):
        if self.base.elementIsExit(READ_OPEN):
            self.base.clickByElement(READ_OPEN, "我知道了")
        else:
            self.assertFalse(READ_OPEN)

    # 阅读模式地址栏按钮  --wmw
    def clickReadButton(self):
        if self.base.elementIsExit(READ_BUTTON):
            self.base.clickByElement(READ_BUTTON, "地址栏阅读模式按钮")
            sleep(4)
        else:
            self.assertFalse(READ_BUTTON)

    # 点击工具面板电脑版  --wmw
    def clickComputerButton(self):
        if self.base.elementIsExit(COMPUTER):
            self.base.clickByElement(COMPUTER, "点击工具面板电脑版")
        else:
            self.assertFalse(COMPUTER)
Esempio n. 5
0
class PubMethod(Base):
    def __init__(self, driver):
        self.base = Base(driver)
        self

    # 启动应用
    def startApp(self, packagename):
        self.base.useApp(packagename, 'start')
        sleep(2)

    # 退出应用
    def stopApp(self, packagename):
        self.base.useApp(packagename, 'stop')
        sleep(2)

    # 清除应用数据
    def clearApp(self, packagename):
        self.base.useApp(packagename, 'clear')
        sleep(2)

    # 点击手机home键
    def clickHome(self):
        sleep(1)
        self.base.usePhone('home')

    # 点击手机back
    def clickBack(self):
        sleep(1)
        self.base.usePhone('back')

    # 点击隐私弹窗同意按钮——LYX
    def clickPrivacyAgree(self):
        if self.base.elementIsExit(PRIVACY_AGREE_BUTTUN):
            self.base.clickByElement(PRIVACY_AGREE_BUTTUN, '隐私弹窗同意按钮')
        else:
            self.assertFalse(PRIVACY_AGREE_BUTTUN)

    # 点击隐私弹窗不同意按钮——LYX
    def clickPrivacyDisagree(self):
        if self.base.elementIsExit(PRIVACY_DISAGREE_BUTTUN):
            self.base.clickByElement(PRIVACY_DISAGREE_BUTTUN, '隐私弹窗不同意按钮')
        else:
            self.assertFalse(PRIVACY_DISAGREE_BUTTUN)

    # 点击权限弹窗拒绝按钮——LYX
    def clickPermissionDisagree(self):
        if self.base.elementIsExit(PERMISSION_DISAGREE_BUTTUN):
            self.base.clickByElement(PERMISSION_DISAGREE_BUTTUN, '权限弹窗拒绝按钮')
        else:
            self.assertFalse(PERMISSION_DISAGREE_BUTTUN)

    # 点击权限弹窗允许按钮——LYX
    def clickPermissionAgree(self):
        if self.base.elementIsExit(PERMISSION_AGREE_BUTTON):
            self.base.clickByElement(PERMISSION_AGREE_BUTTON, '权限弹窗允许按钮')
        else:
            self.assertFalse(PERMISSION_AGREE_BUTTON)

    # 获取百度文字识别 API 识别并提取图片中文字————LCM
    def getBaiduApiText(self, element):
        '''
        :param element: 判断当前页面存在的元素
        :return: 返回去掉符号的文字
        '''
        if self.base.elementIsExit(element):
            sleep(2)
            text = self.base.baiduOcr()
            textTitle = ' '.join(text)
            strText = re.sub('\W+', '', textTitle)
            return strText
        else:
            self.assertFalse(element)

    # 删除桌面的书签 —— LJX
    def deleteBookmark(self, element, position):
        if self.base.scrollToElement(element):
            # todo:缺少左右滑动
            self.base.dragByElement(element, position)
        else:
            pass

    # 返回到首页或负一屏 —— LJX
    def mbackToHomeOrNegative(self):
        # 如果不在首页也不在负一屏,返回上一层,直到返回到首页或负一屏
        if self.base.elementIsExit(PRIVACY_AGREE_BUTTUN):
            self.base.clickByElement(PRIVACY_AGREE_BUTTUN, '隐私弹窗同意按钮')
            self.base.browserWatcher()
            self.base.browserWatcher()
        elif self.base.elementIsExit(PERMISSION_AGREE_BUTTON):
            self.base.clickByElement(PERMISSION_AGREE_BUTTON, '权限弹窗允许按钮')
            self.base.browserWatcher()
        else:
            while not self.base.elementIsExit(
                    BACKGROUND_ID) and not self.base.elementIsExit(SAVED_PAGE):
                if self.base.elementIsExit(WEBSITE_BACKWARD):
                    self.base.clickByElement(WEBSITE_BACKWARD, '不在首页,返回上一层')
                elif self.base.elementIsExit(NEWS_PAGE_BACK):
                    self.base.clickByElement(NEWS_PAGE_BACK, '不在首页,返回上一层')
                else:
                    self.clickBack()
class SearchPanelPage(Base):
    def __init__(self, driver):
        self.base = Base(driver)

    # 点击搜索历史热词(默认点击第一个)   ---wmw
    def clickSearchHistory(self):
        if self.base.elementIsExit(SEARCHPANEL_SEARCHHISTORY):
            self.base.clickByElement(SEARCHPANEL_SEARCHHISTORY, "搜索历史热词")
            sleep(2)
        else:
            self.assertFalse(SEARCHPANEL_SEARCHHISTORY)

    # 点击换一换   ---wmw
    def clickAnotherChange(self):
        if self.base.elementIsExit(SEARCHPANEL_ANOTHERCHANGE):
            self.base.clickByElement(SEARCHPANEL_ANOTHERCHANGE, "换一换")
        else:
            self.assertFalse(SEARCHPANEL_ANOTHERCHANGE)

    # 点击输入框工具条前缀词“www.”——LYX
    def clickInputPanelPrefixes(self):
        if self.base.elementIsExit(INPUTPANEL_PROMPT):
            self.base.clickByElement(INPUTPANEL_PROMPT, "输入框前缀词www.")
        else:
            self.assertFalse(INPUTPANEL_PROMPT)

    # 长按地址栏中的“www.”——LYX
    def long_clickSearchPanel(self):
        if self.base.elementIsExit(SEARCHPANEL_WEBSITE):
            self.base.long_clickByElement(SEARCHPANEL_WEBSITE, "地址栏文字www")
        else:
            self.assertFalse(SEARCHPANEL_WEBSITE)

    # 拖动输入框中的工具条——LYX
    def swipe_InputPanel(self):
        if self.base.elementIsExit(INPUTPANEL_SWIPE):
            self.base.swipeByElement(INPUTPANEL_SWIPE, "向左拖动工具条", "left", 200)
        else:
            self.assertFalse(INPUTPANEL_SWIPE)

    # 获取第一个搜索热词    ---wmw
    def clickHotWords(self):
        if self.base.elementIsExit(SEARCHPANEL_SEARCH):
            return self.base.elementText(SEARCHPANEL_HOTWORDS, "第一个搜索热词")
        else:
            self.assertFalse(SEARCHPANEL_SEARCH)

    # 点击清空    ---wmw
    def clickEmpty(self):
        if self.base.elementIsExit(SEARCHPANEL_EMPTY):
            self.base.clickByElement(SEARCHPANEL_EMPTY, "清空")
        else:
            self.assertFalse(SEARCHPANEL_EMPTY)

    # 点击搜索框——LYX
    def clickSearchPanel(self):
        if self.base.elementIsExit(SEARCHPANEL_WEBSITE):
            self.base.clickByElement(SEARCHPANEL_WEBSITE, "搜索框")
        else:
            self.assertFalse(SEARCHPANEL_WEBSITE)

    # 点击搜索框联想词——LYX
    def clickAutomatedWord(self):
        if self.base.elementIsExit(AUTOMATED_WORD):
            self.base.clickByElement(AUTOMATED_WORD, "搜索框联想词")
        else:
            self.assertFalse(AUTOMATED_WORD)

    # 点击地址栏清空按钮——LYX
    def clearSearchPanel(self):
        if self.base.elementIsExit(SEARCHPANEL_CLEAR):
            self.base.clickByElement(SEARCHPANEL_CLEAR, "地址栏清空按钮")
        else:
            self.assertFalse(SEARCHPANEL_CLEAR)

    # 点击清空搜索历史——LYX
    def clearSearchHistory(self):
        if self.base.elementIsExit(CLEARSEARCHHISTORY):
            self.base.clickByElement(CLEARSEARCHHISTORY, "地址栏清空按钮")
        else:
            self.assertFalse(CLEARSEARCHHISTORY)

    # 地址栏输入百度——LYX
    def inputBaidu(self):
        if self.base.elementIsExit(SEARCHPANEL_WEBSITE):
            self.base.elementSetText(SEARCHPANEL_WEBSITE, "m.baidu.com",
                                     "百度网址")
        else:
            self.assertFalse(SEARCHPANEL_WEBSITE)

    # 点击搜索框右侧的搜索/进入按钮——LYX
    def clickSearchInto(self):
        if self.base.elementIsExit(SEARCHPANEL_OPEN):
            self.base.clickByElement(SEARCHPANEL_OPEN, "搜索框右侧进入按钮")
        else:
            self.assertFalse(SEARCHPANEL_OPEN)

    # 搜索框输入m.80txt.com  --wmw
    def inputNumber(self):
        if self.base.elementIsExit(SEARCHPANEL_TEXT):
            self.base.elementSetText(SEARCHPANEL_TEXT, "m.80txt.la",
                                     "搜索框输入m.80txt.com")
        else:
            self.assertFalse(SEARCHPANEL_TEXT)

    # 滑动百度页面——LYX
    def swipeBaidu(self):
        if self.base.elementIsExit(BAIDU_LOGO):
            self.base.swipeByElement(BAIDU_LOGO, '滑动百度页面', 'up')
        else:
            self.assertFalse(BAIDU_LOGO)

    # 点击百度页面收起的地址栏——LYX
    def clickwebsite(self):
        if self.base.elementIsExit(WEBSITE_PACKUP):
            self.base.clickByElement(WEBSITE_PACKUP, "百度页面收起的地址栏")
        else:
            self.assertFalse(WEBSITE_PACKUP)

    # 长按搜索历史中的百度网址——LYX
    def long_clickSearchHistory(self):
        if self.base.elementIsExit(BAIDU_WEBSITE):
            self.base.long_clickByElement(BAIDU_WEBSITE, "搜索历史中的百度网址")
        else:
            self.assertFalse(BAIDU_WEBSITE)

    # 点击搜索历史中的删除按钮——LYX
    def delete_SearchHistory(self):
        if self.base.elementIsExit(DELETESEARCHHISTORY):
            self.base.clickByElement(DELETESEARCHHISTORY, "搜索历史中的删除按钮")
        else:
            self.base.assertFalse(DELETESEARCHHISTORY)

    # 地址栏输入主题美化跳转地址——LYX
    def inputCustomize(self):
        if self.base.elementIsExit(SEARCHPANEL_WEBSITE):
            self.base.elementSetText(SEARCHPANEL_WEBSITE, CUSTOMIZE_ADDRESS,
                                     "百度网址")
        else:
            self.assertFalse(SEARCHPANEL_WEBSITE)

    # 点击主题美化跳转提示,允许按钮——LYX
    def skipCustomize(self):
        if self.base.elementIsExit(CUSTOMIZE_SKIP, 2):
            self.base.clickByElement(CUSTOMIZE_SKIP, "允许跳转至主题美化")
        else:
            self.base.assertFalse(CUSTOMIZE_SKIP)

    # 获取搜索框文本    ---wmw
    def clickSearchText(self):
        if self.base.elementIsExit(SEARCHPANEL_OPEN):
            return self.base.elementText(SEARCHPANEL_TEXT, "获取搜索框文本")
        else:
            self.base.assertFalse(CUSTOMIZE_SKIP)

    # 点击某个元素多次 —— LJX
    def clickMoreRefresh(self, element, times):
        if self.base.elementIsExit(element):
            for i in range(1, times):
                self.base.clickByElement(element,
                                         '第{}次点击{}按钮'.format(i, element))
        else:
            self.base.assertFalse(element)
Esempio n. 7
0
 def __init__(self, driver):
     self.base = Base(driver)
     self.home = HomePage(driver)
Esempio n. 8
0
class ToolBarPanelPage(Base):
    def __init__(self, driver):
        self.base = Base(driver)
        self.home = HomePage(driver)

    # 点击底部工具栏的位置
    def clickToolsPanel(self, element):
        '''
        :param element: 元素名称
        :return:
        '''
        if self.base.elementIsExit(element):
            self.base.clickByElement(element, "工具面板-》{}".format(element))
        else:
            self.base.assertFalse(element)

    # 点击我的图标 ---wmw
    def clickFlymeme(self):
        if self.base.elementIsExit(SET_UP):
            self.base.clickByElement(FLYME_ME, '我的图标')
        else:
            self.assertFalse(SET_UP)

    # 点击设置  --wmw
    def clickSetUp(self):
        if self.base.elementIsExit(SET_UP):
            self.base.clickByElement(SET_UP, "设置")
        else:
            self.assertFalse(SET_UP)

    # 清空历史 —— LJX
    def cleanHistory(self):
        self.home.clickMore()
        self.clickToolsPanel(CLEAN_UP_HISTORY)
        self.clickToolsPanel(CLEAN_UP)
class TestReadPage():

    @pytest.fixture(scope="function")
    def readPage_init(self):
        self.base = Base(self.driver)
        self.home = HomePage(self.driver)
        self.pubmethod = PubMethod(self.driver)
        self.read = ReadPage(self.driver)
        self.searchpanel = SearchPanelPage(self.driver)
        logging.info("")
        logging.info("****开始执行用例****")
        self.pubmethod.clearApp(BROWSER_PACKAGE_NAME)
        self.pubmethod.startApp(BROWSER_PACKAGE_NAME)
        yield
        logging.info("****用例执行结束****")
        logging.info("")

    @allure.story('测试阅读模式')
    def test001ReadPage(self, readPage_init):
        '''

        1、清空浏览器数据,点击电脑版进入小说网页
        2、点击小说封面,开始阅读,进入章节,判断是否首次弹出阅读模式弹框
        3、点击地址栏的阅读模式按钮,判断是否正常进入/退出阅读模式

        '''
        self.pubmethod.clearApp(BROWSER_PACKAGE_NAME)
        self.pubmethod.startApp(BROWSER_PACKAGE_NAME)
        self.pubmethod.clickPrivacyAgree()
        # self.pubmethod.clickPermissionAgree()
        sleep(4)
        self.base.browserWatcher()
        # 点击主页工具菜单
        self.home.clickMore()
        # 点击电脑版
        self.read.clickComputerButton()
        # 点击首页搜索框
        self.home.clickHomeSearch()
        # 搜索框输入m.80txt.la
        self.searchpanel.inputNumber()
        # 点击搜索
        self.searchpanel.clickSearchInto()
        # 点击小说封面
        self.read.clickBook()
        # 点击开始阅读
        self.read.clickRead()
        # 点击章节
        self.read.clickChapter()
        # 断言是否会弹出阅读模式提示框
        self.base.assertTrue(READ_IMG)
        # 点击允许
        self.read.clickOpen()
        sleep(2)
        self.read.clickReadButton()
        # 断言是否进入阅读模式
        self.base.assertTrue(READ_IMG,False)
        # 点击地址栏阅读模式按钮,退出阅读模式
        self.read.clickReadButton()
        # 断言点击地址栏阅读模式按钮,是否正常退出阅读模式
        self.base.assertTrue(READ_NEXT)
        # 点击地址栏阅读模式按钮,进入阅读模式
        self.read.clickReadButton()
        # 断言点击地址栏阅读模式按钮,是否正常进入阅读模式
        self.base.assertTrue(READ_NEXT,False)
class AddToHomePage(Base):
    def __init__(self, driver):
        self.base = Base(driver)

    # 点击添加到主页的记录 —— LJX
    def clickAddToHomeWebsite(self, element_text):
        if self.base.elementIsExit(element_text):
            self.base.clickByElementIdAndText(
                BOOKMARK_ID, element_text, '添加到主页"{}"网站'.format(element_text))
            sleep(1)
        else:
            self.assertFalse(element_text)

    # 点击进入添加到主页-》元素进入页面 —— LJX
    def clickAddToHomeTab(self, element):
        if self.base.elementIsExit(element):
            self.base.clickByElement(element, '添加到主页"{}"页面'.format(element))
        else:
            self.assertFalse(element)

    # 点击“添加到主页”的添加按钮 —— LJX
    def clickAddToHome(self, instance):
        if self.base.elementIsExit(ADD_TO_TEXT):
            self.base.clickByElementClassNameAndText(ADD_TO_CLASSNAME,
                                                     ADD_TO_TEXT,
                                                     '负一屏精选页面添加按钮', instance)
        else:
            self.assertFalse(ADD_TO_TEXT)

    # 点击“添加到主页”的添加按钮 —— LJX
    def clickToBookmark(self, instance):
        if self.base.elementIsExit(ADD_TO_CLASSNAME):
            self.base.clickByElementIdAndInstance(ADD_ID, '负一屏-》添加到主页的添加按钮',
                                                  instance)
        else:
            self.assertFalse(ADD_TO_CLASSNAME)

    # 在“添加到主页”点击指定网站的添加按钮 —— LJX
    def addBookmark(self, element):
        if self.base.elementIsExit(element):
            self.base.clickByElementRight(element, ADD_ID, direction='right')
        else:
            self.assertFalse(element)
class TestHomePage():

    @pytest.fixture(scope="function")
    def home_init(self):
        self.base = Base(self.driver)
        self.home = HomePage(self.driver)
        self.pubmethod = PubMethod(self.driver)
        self.share = SharePage(self.driver)
        self.more = MorePage(self.driver)
        logging.info("")
        logging.info("****开始执行用例****")
        self.pubmethod.stopApp(BROWSER_PACKAGE_NAME)
        self.pubmethod.startApp(BROWSER_PACKAGE_NAME)
        self.home.clickHome()
        self.home.clickHomeOnPage(HOME_PAGE)
        yield
        logging.info("****用例执行结束****")
        logging.info("")


    @allure.story('测试资讯流页面存在相应text')
    def test001HomePage(self, home_init):
        '''
        1、点击地址栏more按钮
        2、点击back
        3、向下滑动页面进入到资讯流列表页
        4、向下滑动查找text
        '''
        self.home.clickMore()
        # sleep(2)
        self.pubmethod.clickBack()
        self.pubmethod.scrollPage(2)
        # self.pubmethod.clickHome()
        # self.pubmethod.scrollPageToElement('火爆动作片,话没说几句就开打,下手凶狠,血战到底')
        self.base.assertTrue('火爆动作片,话没说几句就开打,下手凶狠,血战到底', timeout = 5)


    # @allure.story('测试正常进入到我的收藏页面')
    # def test002MyCollection(self, home_init):
    #     self.home.clickMore()
    #     self.base.assertTrue("dkjkdsjfksdkfslkfsfs")


    @allure.story('测试资讯流广告')
    def test002HomePage(self, home_init):

        #点击资讯
        self.home.clickInformation()

        self.home.clickInformation()
        sleep(5)
        self.base.scrollToElement('广告')
        #self.base.clickByElement('广告')
        self.home.clickAdvertisement()

    @allure.story('测试前进后退')
    def test003HomePage(self, home_init):
        '''
        1、打开首页导航栏的安居客网址
        2、点击安居客首页的“新房”
        3、手势后退至安居客首页,再手势前进至“新房”页面
        '''
        self.share.clickAnjuke()
        self.home.clickNewHouse()
        self.home.right_swipe()
        self.base.assertTrue(ANJUKE_SEARCH)
        self.home.left_swipe()
        self.base.assertTrue(NEWHOUSE_SEARCH)


    @allure.story('测试爱淘宝能否正常打开')
    def test004HomePage(self, home_init):
        '''
        1、点击"爱淘宝"
        2、断言是否跳转到"爱淘宝"页面
        '''
        # 点击网址导航-》爱淘宝
        self.more.clickDaoHang(AITAOBAO)
        self.base.assertTrue(AITAOBAO_PAGE)

    @allure.story('测试搜索能否正常打开')
    def test005HomePage(self, home_init):
        '''
        1、点击"搜索"
        2、断言是否跳转到"搜索"页面
        '''
        # 点击网址导航-》搜索
        self.more.clickDaoHang(WEB_SEARCH)
        self.base.browserWatcher()
        self.base.assertTrue(WEB_SEARCH_PAGE)

    @allure.story('测试聚划算能否正常打开')
    def test006HomePage(self, home_init):
        '''
        1、点击"聚划算"
        2、断言是否跳转到"聚划算"页面
        '''
        # 点击网址导航-》聚划算
        self.more.clickDaoHang(JHS)
        self.base.assertTrue(JHS_PAGE)

    @allure.story('测试天猫能否正常打开')
    def test007HomePage(self, home_init):
        '''
        1、点击"天猫"
        2、断言是否跳转到"天猫"页面
        '''
        # 点击网址导航-》天猫
        self.more.clickDaoHang(TIANMAO)
        self.base.assertTrue(TIANMAO_PAGE)

    @allure.story('测试同城能否正常打开')
    def test008HomePage(self, home_init):
        '''
        1、点击"同城"
        2、断言是否跳转到"同城"页面
        '''
        # 点击网址导航-》同城
        self.more.clickDaoHang(TONGCHEN)
        self.base.assertTrue(TONGCHEN_PAGE)

    @allure.story('测试京东能否正常打开')
    def test009HomePage(self, home_init):
        '''
        1、点击"京东"
        2、断言是否跳转到"京东"页面
        '''
        # 点击网址导航-》京东
        self.more.clickDaoHang(JD)
        self.base.assertTrue(JD_PAGE)

    @allure.story('测试招聘能否正常打开')
    def test010HomePage(self, home_init):
        '''
        1、点击"招聘"
        2、断言是否跳转到"招聘"页面
        '''
        # 点击网址导航-》招聘
        self.more.clickDaoHang(ZHAOPIN)
        self.base.assertTrue(ZHAOPIN_PAGE)

    @allure.story('测试拼多多能否正常打开')
    def test011HomePage(self, home_init):
        '''
        1、点击"拼多多"
        2、断言是否跳转到"拼多多"页面
        '''
        # 点击网址导航-》拼多多
        self.more.clickDaoHang(PINDUODUO)
        self.base.assertTrue(PINDUODUO_PAGE)

    @allure.story('测试安居客能否正常打开')
    def test012HomePage(self, home_init):
        '''
        1、点击"安居客"
        2、断言是否跳转到"安居客"页面
        '''
        # 点击网址导航-》安居客
        self.more.clickDaoHang(ANJUKE)
        self.base.assertTrue(ANJUKE_PAGE)

    @allure.story('测试今日头条能否正常打开')
    def test013HomePage(self, home_init):
        '''
        1、点击"今日头条"
        2、断言是否跳转到"今日头条"页面
        '''
        # 点击网址导航-》今日头条
        self.more.clickDaoHang(TOUTIAO)
        self.base.assertTrue(TOUTIAO_PAGE)

    @allure.story('测试小说能否正常打开')
    def test014HomePage(self, home_init):
        '''
        1、点击"热门小说"
        2、断言是否跳转到"小说"页面
        '''
        # 点击导航栏-》更多
        self.more.clickDaoHang(HOT_NOVEL)
        self.base.browserWatcher()
        self.base.assertTrue(NOVEL_BOOKSHELF)
class TestPubMethod():

    @pytest.fixture(scope="function")
    def pubMethod_init(self):
        self.base = Base(self.driver)
        self.home = HomePage(self.driver)
        self.pubmethod = PubMethod(self.driver)
        logging.info("")
        logging.info("****开始执行用例****")
        self.pubmethod.clearApp(BROWSER_PACKAGE_NAME)
        self.pubmethod.startApp(BROWSER_PACKAGE_NAME)
        yield
        logging.info("****用例执行结束****")
        logging.info("")

#可以在每一个测试用例加一个marker,比如pytest运行的时就只运行带有该marker的测试用例,比如@pytest.mark.P0
    @allure.story('测试隐私弹窗同意按钮')
    def test001PrivacyAgree(self, pubMethod_init):
        '''
        1、清除数据后首次打开浏览器,弹出隐私政策窗口
        2、点击“同意”,弹出权限窗口
        '''

        # 清除数据后首次进入浏览器,点击隐私弹窗同意按钮
        self.pubmethod.clickPrivacyAgree()
        self.base.assertTrue(PERMISSION_TITLE, timeout=5)

    @allure.story('测试隐私弹窗不同意按钮')
    def test002PrivacyDisagree(self, pubMethod_init):
        '''
        1、清除数据后首次打开浏览器,弹出隐私政策窗口
        2、点击“不同意”,退出
        '''

        # 清除数据后首次进入浏览器,点击隐私弹窗不同意按钮
        self.pubmethod.clickPrivacyDisagree()
        self.base.assertTrue(LAUNCHER_ID, timeout=5)

    @allure.story('测试权限弹窗拒绝按钮')
    def test003PermissionDisagree(self, pubMethod_init):
        '''
        1、清除数据后首次打开浏览器,弹出隐私政策窗口
        2、点击“同意”,弹出权限窗口
        3、点击权限弹窗“拒绝”按钮
        '''

        # 清除数据后首次进入浏览器,点击隐私弹窗同意按钮
        self.pubmethod.clickPrivacyAgree()
        # 点击权限弹窗“拒绝”按钮,进入浏览器
        self.pubmethod.clickPermissionDisagree()
        self.base.assertTrue(HOME_PAGE, timeout=5)

    @allure.story('测试权限弹窗允许按钮')
    def test004PermissionAgree(self, pubMethod_init):
        '''
        1、清除数据后首次打开浏览器,弹出隐私政策窗口
        2、点击“同意”,弹出权限窗口
        3、点击权限弹窗“始终允许”按钮
        '''

        # 清除数据后首次进入浏览器,点击隐私弹窗同意按钮
        self.pubmethod.clickPrivacyAgree()
        # 点击权限弹窗“始终允许”按钮,进入浏览器
        self.pubmethod.clickPermissionAgree()
        self.base.assertTrue(HOME_PAGE, timeout=5)
Esempio n. 13
0
class TestMorePage():

    @pytest.fixture()
    def more_init(self, scope="function"):
        self.base = Base(self.driver)
        self.home = HomePage(self.driver)
        self.pubmethod = PubMethod(self.driver)
        self.more = MorePage(self.driver)
        logging.info("")
        logging.info("****开始执行用例****")
        self.base.unlock()
        self.pubmethod.stopApp(BROWSER_PACKAGE_NAME)
        self.pubmethod.startApp(BROWSER_PACKAGE_NAME)
        self.home.clickHome()
        self.home.clickHomeOnPage(HOME_PAGE)
        yield
        logging.info("****用例执行结束****")
        logging.info("")


    @allure.story('测试网址导航页面1-头条跳转')
    @pytest.mark.P3
    def test001MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"更多"按钮,进入到浏览器网址导航页面
        2、点击"头条"
        3、断言是否跳转到"头条"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》头条
        self.more.clickDaoHang(TOUTIAO)
        self.base.assertTrue(TOUTIAO_PAGE)



    @allure.story('测试网址导航页面搜狐跳转')
    @pytest.mark.P1
    def test002MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"更多"按钮,进入到浏览器网址导航页面
        2、点击"搜狐"
        3、断言是否跳转到"搜狐"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》搜狐
        self.more.clickDaoHang(SOUHU)
        self.base.assertTrue(SOUHU_PAGE, timeout=15)



    @allure.story('测试网址导航页面8-京东跳转')
    @pytest.mark.P1
    def test003MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"更多"按钮,进入到浏览器网址导航页面
        2、点击"京东"
        3、断言是否跳转到"京东"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》京东
        self.more.clickDaoHang(JD)
        self.base.assertTrue(JD_PAGE, timeout=15)



    @allure.story('测试网址导航页面11-聚划算跳转')
    @pytest.mark.P1
    def test004MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"更多"按钮,进入到浏览器网址导航页面
        2、点击"聚划算"
        3、断言是否跳转到"聚划算"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》聚划算
        self.more.clickDaoHang(JHS)
        self.base.assertTrue(JHS_PAGE, timeout=15)

    @allure.story('测试网址导航页面4-同城跳转')
    @pytest.mark.P1
    def test005MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"更多"按钮,进入到浏览器网址导航页面
        2、点击"同城"
        3、断言是否跳转到"同城"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》同城
        self.more.clickDaoHang(TONGCHEN)
        self.base.assertTrue(TONGCHEN_PAGE, timeout=15)

    @allure.story('测试网址导航页面6-找房子跳转')
    @pytest.mark.P1
    def test006MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"更多"按钮,进入到浏览器网址导航页面
        2、点击"找房子"
        3、断言是否跳转到"找房子"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》找房子
        self.more.clickDaoHang(FINDHOUSE)
        self.base.assertTrue(FINDHOUSE_PAGE, timeout=15)

    @allure.story('测试网址导航页面2-在线商城跳转')
    def test007MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"在线商城"按钮,进入到浏览器网址导航页面
        2、点击"在线商城"
        3、断言是否跳转到"在线商城"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》在线商城
        self.more.clickDaoHang(MALL)
        self.base.assertTrue(MALL_PAGE)

    @allure.story('测试网址导航页面3-二手市场跳转')
    def test008MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"二手市场"按钮,进入到浏览器网址导航页面
        2、点击"二手市场"
        3、断言是否跳转到"二手市场"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》二手市场
        self.more.clickDaoHang(FLEA_MARKET)
        self.base.assertTrue(FLEA_MARKET_PAGE)

    @allure.story('测试网址导航页面5-安居客跳转')
    def test009MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"安居客"按钮,进入到浏览器网址导航页面
        2、点击"安居客"
        3、断言是否跳转到"安居客"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》安居客
        self.more.clickDaoHang(ANJUKE)
        self.base.assertTrue(ANJUKE_PAGE)

    @allure.story('测试网址导航页面7-爱淘宝跳转')
    def test010MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"爱淘宝"按钮,进入到浏览器网址导航页面
        2、点击"爱淘宝"
        3、断言是否跳转到"爱淘宝"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》爱淘宝
        self.more.clickDaoHang(AITAOBAO)
        self.base.assertTrue(AITAOBAO_PAGE)

    @allure.story('测试网址导航页面9-天猫跳转')
    def test011MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"天猫"按钮,进入到浏览器网址导航页面
        2、点击"天猫"
        3、断言是否跳转到"天猫"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》天猫
        self.more.clickDaoHang(TIANMAO)
        self.base.assertTrue(TIANMAO_PAGE)

    @allure.story('测试网址导航页面10-拼多多跳转')
    def test012MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"拼多多"按钮,进入到浏览器网址导航页面
        2、点击"拼多多"
        3、断言是否跳转到"拼多多"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》拼多多
        self.more.clickDaoHang(PINDUODUO)
        self.base.assertTrue(PINDUODUO_PAGE)

    @allure.story('测试网址导航页面12-招聘跳转')
    def test013MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"招聘"按钮,进入到浏览器网址导航页面
        2、点击"招聘"
        3、断言是否跳转到"招聘"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》招聘
        self.more.clickDaoHang(ZHAOPIN)
        self.base.assertTrue(ZHAOPIN_PAGE)
Esempio n. 14
0
class SetUpPage(Base):
    def __init__(self, driver):
        self.base = Base(driver)

    # 点击魅族头条设置   ---wmw
    def clickMeizuHeadlinesSettings(self):
        if self.base.elementIsExit(SETUP_ID):
            self.base.clickByElement(MEIZU_HEAD, "魅族头条设置")
        else:
            self.assertFalse(SETUP_ID)

    # 点击简版显示   ---wmw
    def clickSimple(self):
        if self.base.elementIsExit(SETUP_SIMPLE):
            self.base.clickByElement(SETUP_SIMPLE, "简版显示")
        else:
            self.assertFalse(SETUP_SIMPLE)

    # 点击简版显示--更多   ---wmw
    def clickSetUpMore(self):
        if self.base.elementIsExit(SETUP_MORE):
            self.base.clickByElement(SETUP_MORE, "简版显示--更多")
        else:
            self.assertFalse(SETUP_MORE)

    # 点击清除浏览数据   ---wmw
    def clickClearCoolkies(self):
        if self.base.elementIsExit(CLEAR_DATA):
            self.base.clickByElement(CLEAR_DATA, "清除浏览数据")
        else:
            self.assertFalse(CLEAR_DATA)

    # 点击清除浏览数据--Cookies    ---wmw
    def clickCookies(self):
        if self.base.elementIsExit(SETUP_COOKIES):
            self.base.clickByElement(SETUP_COOKIES, "Cookies")
        else:
            self.assertFalse(SETUP_COOKIES)

    # 点击清除浏览数据--账号密码    ---wmw
    def clickAccountsAndPasswords(self):
        if self.base.elementIsExit(SETUP_ACCOUNTS_AND_PASSWORDS):
            self.base.clickByElement(SETUP_ACCOUNTS_AND_PASSWORDS, "账号密码")
        else:
            self.assertFalse(SETUP_ACCOUNTS_AND_PASSWORDS)

    # 点击清除浏览数据--地理位置授权    ---wmw
    def clickLocationAccess(self):
        if self.base.elementIsExit(SETUP_LOCATION_ACCESS):
            self.base.clickByElement(SETUP_LOCATION_ACCESS, "地理位置授权")
        else:
            self.assertFalse(SETUP_LOCATION_ACCESS)

    # 点击清除浏览数据按钮    ---wmw
    def clickClearData(self):
        if self.base.elementIsExit(SETUP_CLEAR_DATA):
            self.base.clickByElement(SETUP_CLEAR_DATA, "清除数据按钮")
        else:
            self.assertFalse(SETUP_CLEAR_DATA)

    # 点击完成按钮    ---wmw
    def clickDone(self):
        if self.base.elementIsExit(SETUP_DONE):
            self.base.clickByElement(SETUP_DONE, "完成按钮")
        else:
            self.assertFalse(SETUP_DONE)

    # 点击搜索引擎   ---wmw
    def clickSearchEngine(self):
        if self.base.elementIsExit(SEARCH_ENGINE):
            self.base.clickByElement(SEARCH_ENGINE, "搜索引擎")
        else:
            self.assertFalse(SEARCH_ENGINE)

    # 点击百度   --wmw
    def clickBaidu(self):
        if self.base.elementIsExit(SETUP_BAIDU):
            self.base.clickByElement(SETUP_BAIDU, "百度")
        else:
            self.assertFalse(SETUP_BAIDU)

    #搜索框输入123  --wmw
    def inputNumber(self):
        if self.base.elementIsExit(SEARCHPANEL_TEXT):
            self.base.elementSetText(SEARCHPANEL_TEXT, "123", "搜索框输入123")
        else:
            self.assertFalse(SEARCHPANEL_TEXT)

    # 搜索框输入百度  --wmw
    def inputbaidu(self):
        if self.base.elementIsExit(SEARCHPANEL_TEXT):
            self.base.elementSetText(SEARCHPANEL_TEXT, 'www.baidu.com',
                                     "搜索框输入百度")
        else:
            self.assertFalse(SEARCHPANEL_TEXT)

    # 点击广告屏蔽   ---wmw
    def clickBlockAds(self, element):
        if self.base.elementIsExit(element):
            if self.obtainBlockAdsSwitch(element) == "关闭":
                return
            else:
                self.base.clickByElementRight(element,
                                              SETUP_SWITCH,
                                              direction='right')
        else:
            self.assertFalse(element)

    # 点击恢复默认设置   ---wmw
    def clickResetToDefault(self):
        if self.base.elementIsExit(SETUP_RESET_TEXT):
            self.base.clickByElement(SETUP_RESET_TEXT, "恢复默认设置")
        else:
            self.assertFalse(SETUP_RESET_TEXT)

    # 点击恢复默认设置---恢复    --wmw
    def clickReset(self):
        if self.base.elementIsExit(SETUP_RESET):
            self.base.clickByElement(SETUP_RESET, "恢复")
        else:
            self.assertFalse(SETUP_RESET)

    # # 获取广告屏蔽开关状态    ---wmw
    # def obtainBlockAdsSwitch(self):
    #     if self.base.elementIsExit(SETUP_ID):
    #         return self.base.elementText(SETUP_SWITCH, "开关状态",0)
    #     else:
    #         self.assertFalse(SETUP_ID)

    # 获取广告屏蔽开关状态    ---wmw
    def obtainBlockAdsSwitch(self, element):
        if self.base.elementIsExit(SETUP_ID):
            return self.base.ObtianRightelementText(element,
                                                    SETUP_SWITCH,
                                                    direction='right')
        else:
            self.assertFalse(SETUP_ID)

    # 获取精选内容推送开关状态    ---wmw
    def obtainSwipeLeftRightSwitch(self, element):
        if self.base.elementIsExit(SETUP_ID):
            return self.base.ObtianRightelementText(element,
                                                    SETUP_SWITCH,
                                                    direction='right')
        else:
            self.assertFalse(SETUP_ID)

    # # 获取精选内容推送开关状态    ---wmw
    # def obtainSwipeLeftRightSwitch(self):
    #     if self.base.elementIsExit(SETUP_ID):
    #         return self.base.elementText(SETUP_SWITCH, "开关状态",3)
    #     else:
    #         self.assertFalse(SETUP_ID)

    # 点击精选内容推送  ---wmw
    def clickSwipeLeftRight(self, element):
        if self.base.elementIsExit(element):
            if self.obtainSwipeLeftRightSwitch(element) == "关闭":
                return
            else:
                self.base.clickByElementRight(element,
                                              SETUP_SWITCH,
                                              direction='right')
        else:
            self.assertFalse(element)

    # 点击允许   ---wmw
    def clickAllow(self):
        if self.base.elementIsExit(SETUP_ALLOW):
            self.base.clickByElement(SETUP_ALLOW, "允许")
        else:
            self.assertFalse(SETUP_ALLOW)

    # 点击360 ————LCM
    def click360(self):
        if self.base.elementIsExit(SETUP_360):
            self.base.clickByElement(SETUP_360, "360")
        else:
            self.assertFalse(SETUP_360)
Esempio n. 15
0
class SharePage(Base):
    def __init__(self, driver):
        self.base = Base(driver)

    # 点击导航网站中的”安居客“,进入网站—————LCM
    def clickAnjuke(self):
        if self.base.elementIsExit(HOME_ANJUKE):
            self.base.clickByElement(HOME_ANJUKE, '点击浏览器首页安居客网站')
        else:
            self.assertFalse(HOME_ANJUKE)

    # 在网页中点击分享按钮————LCM
    def clickWebPageShare(self):
        # 点击分享按钮,调起分享面板
        if self.base.elementIsExit(SHARE_ID):
            self.base.clickByElement(SHARE_ID, '点击工具面板中的分享按钮')
        else:
            self.assertFalse(SHARE_ID)

    # 在分享面板中点击便签————LCM
    def clickNotes(self):
        # 判断分享面板中的便签是否存在
        if self.base.elementIsExit(SHARE_PAGE):
            # 点击分享到便签应用
            self.base.clickByElement(SHARE_PAGE, '点击分享到便签')
        else:
            self.assertFalse(SHARE_PAGE)

    # 在资讯文章中点击分享按钮————LCM
    def clickNewsArticleShare(self):
        if self.base.elementIsExit(NEWS_PAGE_BACK):
            sleep(4)
            self.base.clickByElement(NEWS_SHARE_PAGR, '点击资讯文章详情页总的分享按钮')
        else:
            self.assertFalse(NEWS_PAGE_BACK)
Esempio n. 16
0
class DownPage(Base):
    def __init__(self, driver):
        self.base = Base(driver)

    # 长按下载网页
    def longLink(self):
        if self.base.elementIsExit(SEARCH_PAGE_REFRASH):
            self.base.long_clickByElement(LONG_SEARCH_PAGR_LINK, '长按搜索结果页网页链接')
        else:
            self.assertFalse(SEARCH_PAGE_REFRASH)

    # 点击长按弹框中的“下载链接”按钮
    def clickDownLink(self):
        if self.base.elementIsExit(LONG_PRESS_BOX):
            self.base.clickByElement(DOWNLINK, '点击长按菜单弹框中的“下载链接”按钮')
        else:
            self.assertFalse(LONG_PRESS_BOX)

    # 点击下载弹框中的“下载”按钮
    def clickDownButton(self):
        if self.base.elementIsExit(DOWNLOAD_NAME):
            self.base.clickByElement(DOWN_LOAD, '点击下载弹框中的“下载”按钮')
        else:
            self.assertFalse(DOWNLOAD_NAME)

    # 点击下载弹框中的“取消”按钮
    def clickCancelButton(self):
        if self.base.elementIsExit(DOWNLOAD_NAME):
            self.base.clickByElement(DOWN_CANCEL, '点击下载弹框中的“取消”按钮')
        else:
            self.assertFalse(DOWNLOAD_NAME)

    # 地址栏输入“QQ应用”
    def inputApp(self):
        if self.base.elementIsExit(SEARCHPANEL_ANOTHERCHANGE):
            self.base.elementSetText(SEARCHPANEL_WEBSITE, APPNAME, "输入“QQ”")
        else:
            self.assertFalse(SEARCHPANEL_ANOTHERCHANGE)

    # 地址栏输入“QQ应用”
    def clickAppDown(self):
        if self.base.elementIsExit(QQDOWN):
            self.base.clickByElement(QQDOWN, "点击“高速下载”")
        else:
            self.assertFalse(QQDOWN)

    # 获取下载弹框中的标题内容————LCM
    def getDownTitle(self, element):
        if self.base.elementIsExit(element):
            return self.base.elementText(element, '获取下载弹框中的标题内容')
        else:
            self.assertFalse(element)

    # 长按下载管理页面中的文件————LCM
    def longPressElement(self):
        if self.base.elementIsExit(DOWN_LOAD_MANAGE_TITLE):
            if self.base.elementIsExit(DOWN_LOAD_MANAGE_TITLE):
                self.base.long_clickByElement(DOWN_LOAD_MANAGE_TITLE,
                                              '长按下载管理页面中的文件')
            else:
                self.assertFalse(DOWN_LOAD_MANAGE_TITLE)
        else:
            self.base.usePhone('back')

    # 点击操作下载管理页面中的文件————LCM
    def clickChoose(self):
        # 判断“全选”按钮存在,则点击全选
        if self.base.elementIsExit(DOWN_LOAD_MANAGE_CHOOSE):
            self.base.clickByElement(DOWN_LOAD_MANAGE_CHOOSE, '选择下载管理页面中的文件')
            self.clickDeleteAllFile()
        # 判断“全不选”按钮存在,则点击“删除”
        elif self.base.elementIsExit(DOWN_LOAD_MANAGE_CHOOSEONE):
            self.clickDeleteAllFile()
        else:
            self.assertFalse(DOWN_LOAD_MANAGE_CHOOSE)

    # 下载管理页面中点击删除按钮————LCM
    def clickDeleteAllFile(self):
        if self.base.elementIsExit(DOWN_LOAD_MANAGE_RENAME):
            # 点击删除按钮
            self.base.clickByElement(DOWN_LOAD_MANAGE_DELETE_SELECTED,
                                     '点击删除按钮')
            self.clickDelete()
        else:
            self.assertFalse(DOWN_LOAD_MANAGE_RENAME)

    # 下载管理页面中点击删除所有的文件————LCM
    def clickDelete(self):
        if self.base.elementIsExit(DOWN_LOAD_MANAGE_DELETE):
            # 点击删除全部文件
            self.base.clickByElement(DOWN_LOAD_MANAGE_DELETE, '点击删除下载管理页面中的文件')
        else:
            self.assertFalse(DOWN_LOAD_MANAGE_DELETE_SELECTED)
Esempio n. 17
0
 def __init__(self, driver):
     self.base = Base(driver)
Esempio n. 18
0
class HomePage(Base):

    def __init__(self, driver):
        self.base = Base(driver)

    # 点击导航栏中“更多”按钮
    def clickBusinessMore(self):
        if self.base.elementIsExit(HOME_BUSINESS_MORE_TEXT):
            self.base.clickByElementIdAndText(HOME_BUSINESS_ID, HOME_BUSINESS_MORE_TEXT, "导航栏-》更多")
        else:
            self.assertFalse(HOME_BUSINESS_MORE_TEXT)

    # 点击工具栏中more菜单
    def clickMore(self):
        if self.base.elementIsExit(HOME_MORE):
            self.base.clickByElement(HOME_MORE, '浏览器首页more菜单')
        else:
            self.assertFalse(HOME_MORE)

    # 点击工具栏中home菜单
    def clickHome(self):
        if self.base.elementIsExit(HOME_HOME):
            self.base.clickByElement(HOME_HOME, '浏览器首页home菜单')
        else:
            self.assertFalse(HOME_HOME)


    # 根据传参确认是否需要点击home按钮
    def clickHomeOnPage(self, page):
        if page == HOME_PAGE and self.base.elementIsExit(SAVED_PAGE):
            self.clickHome()
        elif page == MYCOLLECTION and self.base.elementIsExit(ARTICLE_ID):
            self.clickHome()
        else:
            pass

    # 点击首页搜索框——LYX
    def clickHomeSearch(self):
        if self.base.elementIsExit(HOME_SEARCH):
            self.base.clickByElement(HOME_SEARCH,'首页搜索框')
        else:
            self.assertFalse(HOME_SEARCH)

    # 点击资讯information   ----wmw
    def clickInformation(self):
        if self.base.elementIsExit(HOME_INFORMATION):
            self.base.clickByElement(HOME_INFORMATION,'资讯')
        else:
            self.assertFalse(HOME_INFORMATION)

    # 点击资讯广告   ----wmw
    def clickAdvertisement(self):
        if self.base.elementIsExit(HOME_ADVERTISEMENT):
            self.base.clickByElement(HOME_ADVERTISEMENT,'资讯流广告')
        else:
            self.assertFalse(HOME_ADVERTISEMENT)

    # 点击安居客首页新房入口——LYX
    def clickNewHouse(self):
        if self.base.elementIsExit(NEWHOUSE):
            self.base.clickByElement(NEWHOUSE,'安居客首页新房入口')
        else:
            self.assertFalse(NEWHOUSE)

    # 从屏幕边缘右滑手势后退——LYX
    def right_swipe(self):
        sleep(1)
        self.base.swipeByElement(RIGHTSWIPE_COORDINATE,"屏幕边缘右滑")

    # 从屏幕边缘左滑手势前进——LYX
    def left_swipe(self):
        sleep(1)
        self.base.swipeByElement(LEFTSWIPE_COORDINATE,"屏幕边缘左滑")

    # 提取首页12个导航位的名称——LYX
    def get_HomeBusiness(self):
        HOME_BUSINESS_NAME = []
        for i in range(12):
            text = self.base.elementText(HOME_BUSINESS_ID,"首页导航栏",i)
            HOME_BUSINESS_NAME.append(text)
        return HOME_BUSINESS_NAME

    # 点击安居客首页新房入口——LYX
    def clickNewHouse(self):
        if self.base.elementIsExit(NEWHOUSE):
            self.base.clickByElement(NEWHOUSE,'安居客首页新房入口')
        else:
            self.assertFalse(NEWHOUSE)

    # 点击小说精选页的推荐小说——LYX
    def clickTv_Novel(self):
        if self.base.elementIsExit(TV_NOVEL):
            self.base.clickByElement(TV_NOVEL,'小说详情页的推荐小说')
        else:
            self.assertFalse(TV_NOVEL)

    # 点击小说详情页的免费阅读——LYX
    def clickFreeRead(self):
        if self.base.elementIsExit(FREE_READ):
            self.base.clickByElement(FREE_READ,'小说详情页的免费阅读')
        else:
            self.assertFalse(FREE_READ)