Exemplo n.º 1
0
 def setUp(self):
     # 获取我们设定的capabilities,通知Appium Server创建相应的会话。
     self.desired_caps = desired_capabilities.get_desired_capabilities()
     # 获取server的地址。
     self.uri = desired_capabilities.get_uri()
     self.timeout = 10
      # 获取用户名和密码
     self.user = desired_capabilities.getParam("username")
     self.passwd = desired_capabilities.getParam("password")
     print "登录用户%s" % self.user
     self.driver = webdriver.Remote(self.uri, self.desired_caps)
     self.driver.implicitly_wait(5)
     boolLoginFlag1 = self.isElementExist(('android uiautomator', 'new UiSelector().resourceId("gaosi.com.learn:id/edt_phone")'))
     if boolLoginFlag1:
         print('**************************************登录学生端************************************')
         self.sendkeys_text(('id', 'gaosi.com.learn:id/edt_phone'), self.user)
         self.sendkeys_text(('id', 'gaosi.com.learn:id/edt_pass'), self.passwd)
         time.sleep(2)
         self.waitForclick(("id", "gaosi.com.learn:id/btn_login"))  #点击登录
         time.sleep(2)
         for i in range(0, 3):
             print("第%s次点击引导页"%(i+1))
             time.sleep(2)
             self.tapScreen(540, 1000)
         time.sleep(2)
         # 登录后新账号会提示修改密码,暂不修改
         self.is_element_exist_and_click(('id', 'gaosi.com.learn:id/tv_cancel'))
         print('************************************登录学生端完成**********************************')
Exemplo n.º 2
0
 def setUp(self):
     # 获取我们设定的capabilities,通知Appium Server创建相应的会话。
     self.desired_caps = desired_capabilities.get_desired_capabilities()
     # 获取server的地址。
     self.uri = desired_capabilities.get_uri()
     self.timeout = 30
     # 获取用户名和密码
     self.user = desired_capabilities.getParam("username")
     self.passwd = desired_capabilities.getParam("password")
     print "登录用户%s" % self.user
     self.driver = webdriver.Remote(self.uri, self.desired_caps)
     self.driver.implicitly_wait(5)
     boolLoginFlag1 = self.isElementExist(
         ('android uiautomator',
          'new UiSelector().resourceId("gaosi.com.learn:id/edt_phone")'))
     if boolLoginFlag1:
         print(
             '**************************************登录学生端************************************'
         )
         self.sendkeys_text(('id', 'gaosi.com.learn:id/edt_phone'),
                            self.user)
         self.sendkeys_text(('id', 'gaosi.com.learn:id/edt_pass'),
                            self.passwd)
         time.sleep(2)
         self.waitForclick(("id", "gaosi.com.learn:id/btn_login"))  #点击登录
         #登录后存在个人装扮功能弹窗,点击X关闭(只要不选择性别,就一直会弹窗)
         self.is_element_exist_and_click(
             ('id', 'gaosi.com.learn:id/ibBack2'))
         #time.sleep(5)
         print(
             '**************************************登录学生端完成************************************'
         )
Exemplo n.º 3
0
    def test_aixuexi_student(self):
        '''测试学生端学生进行作业提交与作业订正'''
        # 获取用户名和密码
        user = desired_capabilities.getParam("username")
        passwd = desired_capabilities.getParam("password")

        print "登录用户%s" % user
        # 创建会话,得到driver对象,driver对象封装了所有的设备操作。下面会具体讲。
        self.desired_caps['recreateChromeDriverSessions'] = True
        self.driver = webdriver.Remote(self.uri, self.desired_caps)
        self.driver.implicitly_wait(1)
        #判断课节元素是否存在,存在则绕过登录点击课节,不存在则登录(兼容某些手机在第一次登录失败,重启app不再登录的问题)
        boolLoginFlag1 = self.isElementExist((
            'xpath',
            '//android.support.v7.widget.RecyclerView/android.widget.LinearLayout[1]/android.widget.TextView'
        ))
        if not boolLoginFlag1:
            print(
                '**************************************登录学生端**************************************'
            )
            # #登录前操作  权限允许
            # self.is_element_exist_and_click(('id', 'android:id/button1'))
            time.sleep(3)
            time.sleep(2)
            self.sendkeys_text(('id', 'gaosi.com.learn:id/edt_phone'), user)
            self.sendkeys_text(('id', 'gaosi.com.learn:id/edt_pass'), passwd)
            time.sleep(2)
            self.waitForclick(("id", "gaosi.com.learn:id/btn_login"))  #点击登录
            time.sleep(5)
            #登录成功后存在弹窗修改密码,暂不修改(随账号,只出现一次)
            self.is_element_exist_and_click(
                ("id", "gaosi.com.learn:id/tv_cancel"))
            # #登录成功后存在弹窗作业宝箱,点击 X 关闭(随账号,只出现一次)
            self.is_element_exist_and_click(
                ("id", "gaosi.com.learn:id/ibBack"))
            #登录后存在个人装扮功能弹窗,点击X关闭(只要不选择性别,就一直会弹窗)
            self.is_element_exist_and_click(
                ('id', 'gaosi.com.learn:id/ibBack2'))
            print(
                '**************************************登录成功**************************************'
            )
        print("++++++++++++++开始测试装扮流程++++++++++++++++++")
        time.sleep(5)
        self.tapScreen(800, 300)  #点击头像
        try:
            print(u'头像坐标')
            self.is_element_exist_and_click(
                ('id', 'gaosi.com.learn:id/llMan'))  #第一次使用选择男女
            self.is_element_exist_and_click(
                ('id', 'gaosi.com.learn:id/tvComfirm'))  #确定
            time.sleep(5)
            self.driver.find_element_by_android_uiautomator(
                'new UiSelector().className("android.widget.TextView").text("抽取装扮")'
            ).click()
        except:
            self.tapScreen(810, 1830)  #点击我的
            print(u'我的坐标')
            self.is_element_exist_and_click(
                ('id', 'gaosi.com.learn:id/llMan'))  #第一次使用选择男女
            self.is_element_exist_and_click(
                ('id', 'gaosi.com.learn:id/tvComfirm'))  #确定
            time.sleep(5)
            self.waitForclick((
                'android uiautomator',
                'new UiSelector().className("android.widget.TextView").text("抽取装扮")'
            ))
        time.sleep(5)
        self.driver.switch_to.context(u'WEBVIEW_gaosi.com.learn')
        print("切换成功")
        self.switchUrl(self.driver, "extractingstaticHtml.html")
        time.sleep(2)
        if self.isElementExist(
            ('xpath', "//div[@class=\"extractChooseBtn\"][text()='免费召唤UFO']")):
            self.waitForclick(
                ('xpath',
                 "//div[@class=\"extractChooseBtn\"][text()='免费召唤UFO']"))
        else:
            self.waitForclick(('xpath', "//i[contains(text(),'召唤UFO')]"))
        time.sleep(10)
        self.click_element_or_coordinate(
            ('xpath', '//button[@class="notSave"]'), 540, 1340)
        time.sleep(3)
        self.switchUrl(self.driver, "dressSelfstaticHtml.html")
        time.sleep(8)
        if self.isElementExist(('xpath', "//span[text()='new']/parent::div")):
            self.scrollToFind(('xpath', "//span[text()='new']/parent::div"))
            self.waitForclick(
                ('xpath', "//span[text()='new']/parent::div"))  #点击刚刚获取的装扮
        else:
            elements = self.findelements(
                ('xpath',
                 '//div[@class="dressDetail"]/div[@class="innerDress"]'))
            elements[0].click()
        time.sleep(2)
        self.waitForclick(('xpath', "//div[text()='保存装扮']"))
        # result = self.get_Toast(u'装扮保存成功')
        # self.assertTrue(result)
        print("++++++++++++++测试完成++++++++++++++++++")
Exemplo n.º 4
0
    def test_aixuexi_student(self):
        '''测试学生端学生进行作业提交与作业订正'''
         # 获取用户名和密码
        user = desired_capabilities.getParam("username")
        passwd = desired_capabilities.getParam("password")

        boolFlag1=True
        intFlag1=0
        chromedriver = ['2.24', '2.23', '2.22', '2.20', '2.34', '2.32',  '2.30', '2.28', '2.26', '2.18', '2.16', '2.14']
        while boolFlag1:
            try:
                print "登录用户%s" % user
                # 创建会话,得到driver对象,driver对象封装了所有的设备操作。下面会具体讲。
                self.desired_caps['recreateChromeDriverSessions'] = True
                self.driver = webdriver.Remote(self.uri, self.desired_caps)
                self.driver.implicitly_wait(15)
                #判断课节元素是否存在,存在则绕过登录点击课节,不存在则登录(兼容某些手机在第一次登录失败,重启app不再登录的问题)
                boolLoginFlag1 = self.isElementExist(('xpath', '//android.support.v7.widget.RecyclerView/android.widget.LinearLayout[1]/android.widget.TextView'))
                if not boolLoginFlag1:
                    print('**************************************登录学生端************************************')
                    # #登录前操作  权限允许
                    # self.is_element_exist_and_click(('id', 'android:id/button1'))
                    time.sleep(2)
                    self.sendkeys_text(('id', 'gaosi.com.learn:id/edt_phone'), user)
                    self.sendkeys_text(('id', 'gaosi.com.learn:id/edt_pass'), passwd)
                    time.sleep(2)
                    self.waitForclick(("id", "gaosi.com.learn:id/btn_login"))  #点击登录
                    time.sleep(5)
                    #登录成功后存在弹窗修改密码,暂不修改(随账号,只出现一次)
                    self.is_element_exist_and_click(("id", "gaosi.com.learn:id/tv_cancel"))
                    # #登录成功后存在弹窗作业宝箱,点击 X 关闭(随账号,只出现一次)
                    self.is_element_exist_and_click(("id", "gaosi.com.learn:id/ibBack"))
                    #登录后存在个人装扮功能弹窗,点击X关闭(只要不选择性别,就一直会弹窗)
                    self.is_element_exist_and_click(('id', 'gaosi.com.learn:id/ibBack2'))
                    # self.is_element_exist_and_click(('id', 'gaosi.com.learn:id/llMan'))#第一次使用选择男女
                    # self.is_element_exist_and_click(('id', 'gaosi.com.learn:id/tvComfirm'))#确定
                    time.sleep(2)
                    self.waitForclick(('xpath', '//android.support.v7.widget.RecyclerView/android.widget.LinearLayout[1]/android.widget.TextView')) #点击讲次
                time.sleep(5)
                intCount = 0
                while intCount < 5:
                    try:
                        element1 = WebDriverWait(self.driver, 3, 0.5).until(EC.visibility_of_element_located(('xpath', '//android.support.v7.widget.RecyclerView/android.widget.LinearLayout[1]/android.widget.TextView')))
                        element1.click()
                    except:
                        pass
                    time.sleep(5)
                    intCount = intCount + 1
                    contexts = self.driver.contexts
                    print contexts
                    if u'WEBVIEW_gaosi.com.learn' in contexts:
                        break
                time.sleep(5)
                self.driver.switch_to.context(u'WEBVIEW_gaosi.com.learn')
                print self.driver.current_context
                boolFlag1 = False
            except Exception, e:
                self.driver.quit()
                print Exception, ":", e
                self.desired_caps['chromedriverExecutable'] = '/appium/appium/node_modules/appium-chromedriver/chromedriver/linux/chromedriver_64_'+chromedriver[intFlag1]
                print "chromedriver版本:%s" % chromedriver[intFlag1]
                intFlag1=intFlag1+1
                if intFlag1 == len(chromedriver):
                    self.assertFalse(boolFlag1, "没有找到webview!")
                    break
                continue
Exemplo n.º 5
0
    def test_aixuexi(self):
        # 获取用户名和密码
        user = desired_capabilities.getParam("username")
        passwd = desired_capabilities.getParam("password")

        boolFlag1 = True
        boolLoginFlag1 = False
        intFlag1 = 0
        chromedriver = [
            '2.33', '2.30', '2.28', '2.24', '2.23', '2.22', '2.20', '2.18',
            '2.16', '2.14'
        ]

        print("登录用户%s" % user)
        while boolFlag1:
            try:
                # 创建会话,得到driver对象,driver对象封装了所有的设备操作。下面会具体讲。
                self.desired_caps['recreateChromeDriverSessions'] = True
                self.driver = webdriver.Remote(self.uri, self.desired_caps)
                self.driver.implicitly_wait(15)
                time.sleep(5)
                if not boolLoginFlag1:
                    time.sleep(8)
                    self.driver.find_element_by_id(
                        "gaosi.com.learn:id/tv_login_phone").send_keys(user)
                    #self.driver.find_element_by_id("gaosi.com.learn:id/tv_login_phone").click()
                    self.driver.find_element_by_id(
                        "gaosi.com.learn:id/tv_login_pwd").send_keys(passwd)
                    #self.driver.find_element_by_id("gaosi.com.learn:id/tv_login_pwd").click()
                    time.sleep(2)
                    self.driver.find_element_by_id(
                        "gaosi.com.learn:id/btn_login").click()
                    boolLoginFlag1 = True
                time.sleep(20)
                intCount = 0
                while intCount < 10:
                    time.sleep(1)
                    intCount = intCount + 1
                    contexts = self.driver.contexts
                    print(contexts)
                    if u'WEBVIEW_gaosi.com.learn' in contexts:
                        print("adfasd")
                        break
                self.driver.switch_to.context('WEBVIEW_gaosi.com.learn')
                self.driver.switch_to.default_content()
                #self.driver.switch_to.context(contexts[1])
                print(self.driver.current_context)
                boolFlag1 = False
            except ZeroDivisionError:
                self.driver.quit()
                boolLoginFlag1 = True
                print("ZeroDivision")
                self.desired_caps[
                    'chromedriverExecutable'] = '/usr/lib/node_modules/appium/node_modules/appium-chromedriver/chromedriver/linux/chromedriver_64_' + chromedriver[
                        intFlag1]
                # self.desired_caps['chromedriverExecutable'] = 'C:\\Users\\hp\\AppData\\Roaming\\npm\\node_modules\\appium\\build\\chromedriver\\windows\\chromedriver'+chromedriver[intFlag1]+'.exe'
                if boolLoginFlag1:
                    self.desired_caps[
                        'appWaitActivity'] = '.studentapp.main.MainActivity'
                print("chromedriver版本:%s" % chromedriver[intFlag1])
                intFlag1 = intFlag1 + 1
                if intFlag1 == len(chromedriver):
                    self.assertFalse(boolFlag1, "没有找到webview!")
                    break
                continue

            #**************************************登录学生端**************************************
            # self.switchUrl(self.driver,"loginstaticHtml.html")
            # time.sleep(2)
            # print "++++++++++++++开始登录++++++++++++++++++"
            # self.waitForclick(self.driver,"//a[contains(text(),'收不到验证码?使用账号密码登录')]")
            # time.sleep(3)
            # self.waitForInputAndClick(self.driver,"(//input[@placeholder='报名时登记的手机号'])[2]",user)
            # self.waitForInputAndClick(self.driver,"//input[@placeholder='请输入密码']",passwd)
            # element=self.driver.find_element_by_xpath("//button[@class='mint-button mint-button--primary mint-button--large']")
            # self.driver.execute_script("arguments[0].removeAttribute('disabled')",element)
            # element.click()

            # **************************************登录学生端**************************************
        self.switchUrl(self.driver, "indexstaticHtml.html")
        time.sleep(2)
        print("++++++++++++++开始答题++++++++++++++++++")
        self.waitForclickpass(self.driver, "//button[text()='关闭']")
        time.sleep(3)
        self.waitForclickpass(self.driver, "//div[@class='todo-work']")
        time.sleep(6)
        self.switchUrl(self.driver, "homeworkstaticHtml.html")
        time.sleep(2)
        self.waitForclick(self.driver,
                          "(//div[@class='modules-class-time'])[1]")  #选课节
        time.sleep(3)
        self.waitForclick(self.driver,
                          "//label[text()='开始交作业']/parent::button")
        time.sleep(5)
        self.switchUrl(self.driver, "zuoyestaticHtml.html")
        time.sleep(2)
        blankcontent = 1
        strflag = False
        while True:
            #填空题
            blanks = self.driver.find_elements_by_xpath(
                "//input[@class='blanks-answer' and @data-node='blankAnswer']")
            if len(blanks) > 0:
                for blank in blanks:
                    if blank.get_attribute('style') != "display: none;":
                        #blank.send_keys(blankcontent)
                        self.driver.execute_script(
                            "arguments[0].setAttribute('value', arguments[1])",
                            blank, blankcontent)
                        # self.driver.execute_script("arguments[0].innerHTML=arguments[1]", element, '18700000107')
                        blank.click()
                        blankcontent = blankcontent + 1
            #判断题
            selections = self.driver.find_elements_by_xpath(
                "//div[@class='select']")
            if len(selections) > 0:
                for selection in selections:
                    if selection.find_element_by_xpath(
                            "../../../..").get_attribute('style').find(
                                'overflow: hidden;') == -1:
                        selection.find_element_by_xpath("//label[1]").click()
            #选择题
            options = self.driver.find_elements_by_xpath(
                "//li[@class='single']")
            if len(options) > 0:
                for option in options:
                    if option.find_element_by_xpath("../../..").get_attribute(
                            'style').find('overflow: hidden;') == -1:
                        option.click()
                        break
            #主观题-拍照i
            answers = self.driver.find_elements_by_xpath(
                "//img[@class='unanswer']")
            if len(answers) > 0:
                for answer in answers:
                    if answer.find_element_by_xpath(
                            "../../../..").get_attribute('style').find(
                                'overflow: hidden;') == -1:
                        answer.click()
                        time.sleep(1)
                        answer.find_element_by_xpath(
                            "../following-sibling::div[1]/a").click()
            time.sleep(2)
            self.waitForclick(
                self.driver,
                "//div[@class='modules-homework-pageUpDown-down']")  # 下一题目
            if strflag:
                break
            time.sleep(2)
            if self.driver.find_element_by_xpath(
                    "//div[@class='modules-homework-pageUpDown-down']/span[1]"
            ).text == "完成":
                strflag = True
        time.sleep(5)
        self.switchUrl(self.driver, "anscardstaticHtml.html")
        time.sleep(2)
        print("++++++++++++++开始提交作业++++++++++++++++++")
        self.waitForclick(
            self.driver,
            "//button[@class='mint-button score-submit mint-button--primary mint-button--large']"
        )  #提交作业
        time.sleep(6)
        contexts = self.driver.contexts
        print(contexts)
        self.driver.switch_to.context('NATIVE_APP')
        time.sleep(2)
        self.driver.find_element_by_id("android:id/button1").click()
        # time.sleep(8)
        # self.waitForclick(self.driver,"//button[@class='msgbox-btn msgbox-confirm ']")
        time.sleep(8)
        view = self.driver.find_elements_by_accessibility_id("习惯是很大的力量哦,要坚持!")
        if len(view) > 0:
            self.driver.find_element_by_accessibility_id(
                "习惯是很大的力量哦,要坚持!").click()
        time.sleep(5)
        view = self.driver.find_elements_by_accessibility_id("每答对1题得3个金币")
        if len(view) > 0:
            self.driver.find_element_by_accessibility_id("每答对1题得3个金币").click()
        time.sleep(6)
        contexts = self.driver.contexts
        print(contexts)
        # os.system('taskkill /F /im chromedriver.exe')
        print(self.driver.current_context)
        time.sleep(15)
        self.driver.switch_to.context('WEBVIEW_gaosi.com.learn')
        time.sleep(2)
        contexts = self.driver.contexts
        print(contexts)
        print(self.driver.current_context)
        self.switchUrl(self.driver, "scorestaticHtml.html")
        time.sleep(5)
        #self.waitForclick(self.driver, "//div[@class='score-container']")
        #time.sleep(10)
        #self.waitForclick(self.driver, "//div[@class='modules-glod-img modules-bg1']")
        #time.sleep(5)
        self.waitForclick(
            self.driver,
            "//button[@class='mint-button score-submit error-question mint-button--primary mint-button--large']"
        )  #去订正
        time.sleep(5)
        print("去订正")
        self.switchUrl(self.driver, "correctionstaticHtml.html")
        time.sleep(2)
        self.waitForclick(
            self.driver,
            "//button[@class='mint-button score-submit mint-button--primary mint-button--large']"
        )
        # 第一题
        print("开始订正第1题")
        self.switchUrl(self.driver, "correctProstaticHtml.html")  #订正页面
        time.sleep(2)
        self.waitForOptionsClick(self.driver, "//li[@class='single']", 1)
        self.waitForclick(
            self.driver,
            "//button[@class='mint-button score-submit mint-button--primary mint-button--large']"
        )
        #第二题
        print("开始订正第2题")
        self.switchUrl(self.driver, "correctionstaticHtml.html")
        time.sleep(2)
        self.waitForclick(
            self.driver,
            "//button[@class='mint-button score-submit mint-button--primary mint-button--large']"
        )
        self.switchUrl(self.driver, "correctProstaticHtml.html")
        time.sleep(2)
        self.waitForOptionsClick(self.driver, "//li[@class='single']", 0)
        self.waitForOptionsClick(self.driver, "//li[@class='single']", 2)
        self.waitForclick(
            self.driver,
            "//button[@class='mint-button score-submit mint-button--primary mint-button--large']"
        )
        # 第三题
        print("开始订正第3题")
        self.switchUrl(self.driver, "correctionstaticHtml.html")
        time.sleep(2)
        self.waitForclick(
            self.driver,
            "//button[@class='mint-button score-submit mint-button--primary mint-button--large']"
        )
        self.switchUrl(self.driver, "correctProstaticHtml.html")
        time.sleep(2)
        self.waitForDoubleInputAndClick(
            self.driver,
            "//input[@class='blanks-answer' and @data-node='blankAnswer']",
            "40", "50")
        self.waitForclick(
            self.driver,
            "//button[@class='mint-button score-submit mint-button--primary mint-button--large']"
        )
        # 第四题
        print("开始订正第4题")
        self.switchUrl(self.driver, "correctionstaticHtml.html")
        time.sleep(2)
        self.waitForclick(
            self.driver,
            "//button[@class='mint-button score-submit mint-button--primary mint-button--large']"
        )
        self.switchUrl(self.driver, "correctProstaticHtml.html")
        time.sleep(2)
        self.waitForOptionsClick(self.driver,
                                 "//label[@class='default right']", 0)
        self.waitForOptionsClick(self.driver,
                                 "//label[@class='default wrong']", 1)
        self.waitForOptionsClick(self.driver,
                                 "//label[@class='default wrong']", 1)
        self.waitForOptionsClick(self.driver,
                                 "//label[@class='default wrong']", 1)
        self.waitForOptionsClick(self.driver,
                                 "//label[@class='default wrong']", 1)
        self.waitForOptionsClick(self.driver,
                                 "//label[@class='default right']", 4)
        self.waitForclick(
            self.driver,
            "//button[@class='mint-button score-submit mint-button--primary mint-button--large']"
        )
        # 第五题
        print("开始订正第5题")
        self.switchUrl(self.driver, "correctionstaticHtml.html")
        time.sleep(2)
        self.waitForclick(
            self.driver,
            "//button[@class='mint-button score-submit mint-button--primary mint-button--large']"
        )
        self.switchUrl(self.driver, "correctProstaticHtml.html")
        time.sleep(2)
        self.waitForOptionsClick(self.driver, "//li[@class='single']", 0)
        self.waitForOptionsClick(self.driver, "//li[@class='single']", 0)
        self.waitForclick(
            self.driver,
            "//button[@class='mint-button score-submit mint-button--primary mint-button--large']"
        )
        # 第六题
        print("开始订正第6题")
        self.switchUrl(self.driver, "correctionstaticHtml.html")
        time.sleep(2)
        self.waitForclick(
            self.driver,
            "//button[@class='mint-button score-submit mint-button--primary mint-button--large']"
        )
        self.switchUrl(self.driver, "correctProstaticHtml.html")
        time.sleep(2)
        self.waitForOptionsClick(self.driver, "//li[@class='single']", 0)
        self.waitForclick(
            self.driver,
            "//button[@class='mint-button score-submit mint-button--primary mint-button--large']"
        )
        # # 第七题
        # print "开始订正第7题"
        # self.switchUrl(self.driver, "correctionstaticHtml.html")
        # time.sleep(2)
        # self.waitForclick(self.driver,
        #                   "//button[@class='mint-button score-submit mint-button--primary mint-button--large']")
        # self.switchUrl(self.driver, "correctProstaticHtml.html")
        # time.sleep(2)
        # self.waitForDoubleInputAndClick(self.driver,"//input[@class='blanks-answer' and @data-node='blankAnswer']","草盛豆苗稀","带月荷锄归")
        # self.waitForclick(self.driver,
        #                   "//button[@class='mint-button score-submit mint-button--primary mint-button--large']")
        print("结束订正并返回")
        self.switchUrl(self.driver, "correctionstaticHtml.html")
        self.waitForclick(self.driver, "//span[@class='mint-button-icon']")
        time.sleep(2)
        self.switchUrl(self.driver, "scorestaticHtml.html")
        time.sleep(2)
        self.waitForclick(self.driver, "//span[@class='mint-button-icon']")
        time.sleep(2)
        self.switchUrl(self.driver, "indexstaticHtml.html")
        time.sleep(2)
        self.waitForclickpass(self.driver, "//button[text()='关闭']")
        time.sleep(3)
        self.switchUrl(self.driver, "minestaticHtml.html")
        time.sleep(2)
        print("++++++++++++++开始退出++++++++++++++++++")
        self.waitForclick(self.driver, "//div[@class='mine-setting']")  #设置
        time.sleep(2)
        self.switchUrl(self.driver, "settingstaticHtml.html")
        time.sleep(2)
        self.waitForclick(
            self.driver,
            "//button[@class='mint-button mint-button--danger mint-button--large']"
        )  #退出登录
        time.sleep(3)
        self.driver.switch_to.context('NATIVE_APP')
        time.sleep(2)
        self.driver.find_element_by_id("android:id/button1").click()

        # time.sleep(5)
        # self.waitForclick(self.driver, "//button[@class='msgbox-btn msgbox-confirm ']")
        time.sleep(2)