• unittest自定义封装与应用


    和大家分享一个自己二次封装uniitest的方法,大家可以在评论区多多指教,一起分享学习;

    一、unittest基类封装

    import os
    import unittest
    from common.log_print import Log
    from common.get_config import getconfig
    from common.base_page_info import BasePage
    from common.browser import Browser


    class SeleniumBaseCase(unittest.TestCase):

    """
    封装一个setUp类方法

    """
    @classmethod
    def setUpClass(cls) -> None:
    Log.logsinfo("=======测试类开始=======")
    cls.url=getconfig.geturl

    """
    封装一个初始化测试工作方法

    """
    def setUp(self) -> None:
    self.basepage=BasePage(Browser('chrome').getdriver())
    self.basepage.waittime(10)
    self.basepage.openurl(self.url)
    self.basepage.setmaxbrowser()

    """
    封装一个结束测试工作方法

    """

    def tearDown(self) -> None:
    self.basepage.timesleep(4)
    self.basepage.closebrowser()

    """
    封装一个tearDown类方法

    """
    @classmethod
    def tearDownClass(cls) -> None:
    Log.logsinfo("=======测试类结束=======")

    二、引用uniitest基类

    import unittest
    from action.login_action import LoginAction
    from common.selenium_base_case import SeleniumBaseCase
    from common.log_print import Log


    class Logintest(SeleniumBaseCase):

    def setUp(self) -> None:
    """
    继承父类的setUp方法

    """

    super().setUp()

    """
    也可以在setUp方法中自定义功能,前提要写继承父类的方法 super().setUp()

    """
    Log.logsinfo('登录测试用例开始')

    def test_success_login(self):
    '''登录成功测试用例'''
    login_action=LoginAction(self.basepage.driver)
    main_page=login_action.suceseelogin('admin','a12345678')
    actual_result=main_page.get_username()
    self.assertEqual(actual_result,'admin','登录成功用例执行失败')

    def tearDown(self) -> None:

    """
    继承父类的tearDown方法

    """
    super().tearDown()

    Log.logsinfo('登录测试用例结束')



    自定义封装,其实就是一个三层继承 ,这样我们引用的时候会更方便;

    Logintest----》SeleniumBaseCase----》unittest.TestCase
  • 相关阅读:
    Java实现调用API识别图像中的文字并对图片重命名
    推荐大家一个人工智能领域安全信息学方向旗舰会议(EI索引),诚邀广大学子投稿!
    python随笔 1
    Neo4j
    Web项目部署到tomcat外部并配置其他端口访问和无项目名
    springboot项目
    解决找不到参数 问题,MyBatisSystemException
    置顶功能 -- 数据表格的某行数据的置顶功能 -- Demo
    Spring-Task定时任务, (springboot项目, 动态设置时间) -- Demo
    BootStrap-table表格 -- Demo
  • 原文地址:https://www.cnblogs.com/HMeier/p/12846685.html
Copyright © 2020-2023  润新知