当前位置: 首页 > wzjs >正文

做自己的网站流量怎么北京培训学校

做自己的网站流量怎么,北京培训学校,首页设计网站 专注,郑州seo优化阿亮简单了解原生测试框架Unittest前置后置的逻辑 一、测试框架执行顺序解析 1.1 基础执行流程 import unittestclass A(unittest.TestCase):classmethoddef setUpClass(cls):print(f"【CLASS START】{cls.__name__}")def setUp(self):print(f"【TEST START】{se…

简单了解原生测试框架Unittest前置后置的逻辑

一、测试框架执行顺序解析

1.1 基础执行流程

import unittestclass A(unittest.TestCase):@classmethoddef setUpClass(cls):print(f"【CLASS START】{cls.__name__}")def setUp(self):print(f"【TEST START】{self._testMethodName}")def test_a(self):print("▶ 执行测试逻辑A")def test_b(self):print("▶ 执行测试逻辑B")def tearDown(self):print(f"【TEST END】{self._testMethodName}")@classmethoddef tearDownClass(cls):print(f"【CLASS END】{cls.__name__}")

1.2 执行顺序可视化

TestClass TestCase setUpClass() 1 setUp() 2 test_method() 3 tearDown() 4 loop [每个测试方法] tearDownClass() 5 TestClass TestCase

二、核心方法功能解析

2.1 类级别方法

方法触发时机执行次数典型应用场景
setUpClass()测试类初始化时1次数据库连接建立
tearDownClass()测试类所有方法执行完成后1次资源释放/日志归档

代码实现特征:

@classmethod
def setUpClass(cls):# 必须使用classmethod装饰器# 通过cls参数访问类属性# 不能直接调用实例方法

2.2 实例级别方法

方法触发时机执行次数典型应用场景
setUp()每个测试方法执行前N次(N=测试方法数)测试数据初始化
tearDown()每个测试方法执行后N次环境清理/结果验证

方法调用关系:

测试启动
├── setUpClass()
│   ├── setUp() -> test_a() -> tearDown()
│   └── setUp() -> test_b() -> tearDown()
└── tearDownClass()

三、代码执行过程深度分析

3.1 实际执行日志

【CLASS START】A
【TEST START】test_a
▶ 执行测试逻辑A
【TEST END】test_a
【TEST START】test_b
▶ 执行测试逻辑B
【TEST END】test_b
【CLASS END】A

3.2 关键执行节点说明

  1. 类初始化阶段

    • 创建测试类实例前执行setUpClass()
    • 适用于全局配置加载
  2. 测试方法执行周期

    setUp
    test_method
    tearDown
  3. 类销毁阶段

    • 所有测试执行完毕后调用tearDownClass()
    • 必须使用@classmethod装饰器

四、特殊场景处理机制

4.1 异常中断处理

def setUp(self):try:# 初始化操作except Exception as e:self.skipTest(f"初始化失败: {str(e)}")@classmethod
def tearDownClass(cls):if hasattr(cls, 'db_conn'):cls.db_conn.close()  # 确保资源释放

4.2 多层级继承场景

class BaseTest(unittest.TestCase):@classmethoddef setUpClass(cls):print("父类初始化")class ChildTest(BaseTest):@classmethoddef setUpClass(cls):super().setUpClass()  # 必须显式调用父类方法print("子类初始化")

五、最佳实践建议

  1. 资源管理原则

    • setUpClass中打开文件/数据库连接
    • tearDownClass中关闭连接
    • setUp中初始化测试数据
    • tearDown中清理临时数据
  2. 执行效率优化

    15% 10% 50% 25% 方法执行时间占比 setUpClass tearDownClass setUp/tearDown 测试逻辑
    "setUpClass" : 15
    "tearDownClass" : 10
    "setUp/tearDown" : 50
    "测试逻辑" : 25
    

六、完整代码

"""
Python :3.13.3
Selenium: 4.31.0
"""import unittestclass A(unittest.TestCase):@classmethoddef setUpClass(cls):print(cls.setUpClass.__name__)def setUp(self):print(self.setUp.__name__)def test_a(self):print(self.test_a.__name__)def test_b(self):print(self.test_b.__name__)@classmethoddef tearDownClass(cls):print(cls.tearDownClass.__name__)def tearDown(self):print(self.tearDown.__name__)

「小贴士」:点击头像→【关注】按钮,获取更多软件测试的晋升认知不迷路! 🚀

http://www.dtcms.com/wzjs/316058.html

相关文章:

  • 乐清网站网站建设武汉seo公司哪家专业
  • 软件下载wordpress主题百度网站排名搜行者seo
  • 网站的根目录的路径怎么做网络推广最有效
  • 旅游网站制作文献百度浏览器网页
  • 个人网站放什么内容营销方案策划书
  • 淘宝客网站开发定制宁波网站建设方案推广
  • 公众号第三方建微网站搭建自己的网站
  • 网站建设工作领导小组搜索引擎关键词竞价排名
  • 计算机网站建设与维护衡阳百度seo
  • 做网站如何添加视频网页推广方案
  • 哔哩哔哩推广平台引擎优化是什么意思
  • 门户网站开发报价免费seo搜索优化
  • 深圳网站推广优化市场营销网站
  • 国内成熟的crm系统长春做网站公司长春seo公司
  • 网站商城定制网站建设快速排序优化
  • 新建网站外链怎么做手机seo排名
  • 如何对网站的图片做cdnseo推广技巧
  • iis不能新建网站有没有好用的网站推荐
  • wordpress app发表长沙优化科技有限公司
  • wordpress 多用户样式seo分析是什么意思
  • 图片在线制作二维码sem优化公司
  • 做网站费用记入什么会计科目广州市疫情最新
  • 前端培训班深圳百度搜索排名优化
  • 网页设计版权怎么写知乎关键词排名优化工具
  • 武汉网站建设设计哪家好购物网站页面设计
  • 网站专项审批查询沈阳网站优化
  • 网站模板是什么意思百度关键词排名十大排名
  • 网站建站建设工作总结百搜科技
  • 怎么在av网站做引流歌尔股份砍单
  • 宜兴建设局质监网站培训班招生方案