随笔:当python的try捕捉不到异常时的一种用法

随笔:当python的try捕捉不到异常时的一种方法

#coding = utf-8


import unittest
from selenium import webdriver
from time import sleep
from selenium.webdriver.common.action_chains import ActionChains


class Sysmgt(unittest.TestCase):

    @classmethod
    def setUpClass(cls):
        print("***测试开始***")

    def setUp(self):
        # 屏蔽自动化受控提示 && 开发者提示
        self.option = webdriver.ChromeOptions()
        self.option.add_experimental_option("excludeSwitches", ['enable-automation', 'load-extension'])
        # 屏蔽'保存密码'提示框
        self.prefs = {}
        self.prefs["credentials_enable_service"] = False
        self.prefs["profile.password_manager_enabled"] = False
        self.option.add_experimental_option("prefs", self.prefs)
        # 打开谷歌浏览器
        self.driver = webdriver.Chrome(options=self.option)
        # 窗口最大化
        self.driver.maximize_window()
        sleep(5)
        self.driver.get('url1')
        sleep(10)
        self.driver.find_element_by_xpath("//button/span[text()='前往AI生态集市']").click()
        sleep(20)
        self.driver.get('url2')
        sleep(10)
        self.assertEqual("用户名", self.driver.find_element_by_xpath("//div[text()='用户名']").text)
        sleep(2)
        ActionChains(self.driver).move_to_element(self.driver.find_element_by_xpath("//li/a[text()='模块']")).perform()
        sleep(5)
        ActionChains(self.driver).move_to_element(self.driver.find_element_by_xpath("//a[contains(text(),'标题')]")).perform()
        self.driver.find_element_by_xpath("//a[contains(text(),'标题')]").click()
        sleep(3)
        self.driver.find_element_by_xpath("//span[text()='系统管理']").click()
        sleep(1)
    
    def testParameter(self):
        try:
            self.driver.find_element_by_xpath("//span[text()='运行参数']").click()
            sleep(1)
            t1 = self.driver.find_element_by_xpath("//p[text()='未知异常,请联系管理员']").text
            print(t1)
            self.assertEqual('未知异常,请联系管理员',t1)
        except Exception as e:
            print(e)
            print("***运行参数正常***")
        else:
            print("运行参数异常")
            self.skipTest("运行参数异常,跳过该用例")

        sleep(2)
        Pa = self.driver.find_elements_by_xpath("//tr[@class='el-table__row']")
        sleep(5)
        if len(Pa)>0:
            print("运行参数正常")
        else:
            print("运行参数异常,请检查")

    
    def testHP(self):
        try:
            self.driver.find_element_by_xpath("//span[text()='首页']").click()
            sleep(1)
            t1 = self.driver.find_element_by_xpath("//p[text()='未知异常,请联系管理员']").text
            print(t1)
            self.assertEqual('未知异常,请联系管理员',t1)
        except Exception:
            print("***首页正常***")
        else:
            print("首页异常")
            self.skipTest("首页异常,跳过该用例")

        sleep(2)
        Hp = self.driver.find_elements_by_xpath("//div[@class='el-col el-col-6']")
        sleep(5)
        if len(Hp):
            print("首页正常")
        else:
            print("首页异常,请检查")



    
    def testUsermg(self):
        try:
            self.driver.find_element_by_xpath("//span[text()='用户管理']").click()
            sleep(1)
            t1 = self.driver.find_element_by_xpath("//p[text()='未知异常,请联系管理员']").text
            print(t1)
            self.assertEqual('未知异常,请联系管理员',t1)
        except Exception:
            print("***用户管理正常***")
        else:
            print("用户管理异常")
            self.skipTest("用户管理异常,跳过该用例")
        sleep(2)

    def tearDown(self):
        self.driver.quit()

    @classmethod
    def tearDownClass(cls):
        print("***测试结束***")

    if __name__ == '__main__':
        unittest.main()





你可能感兴趣的:(随笔,软件测试,python,selenium,unittest)