【自动化测试框架】什么是对象层?
如何用“搭乐高”理解对象层与继承?从商场到图书馆的趣味解读
一、什么是对象层?——编程中的“积木分类箱”
1. 对象:编程世界的最小积木块
想象你在搭乐高,每一块积木(比如方形、车轮、窗户)都代表一个对象。
- **面向对象编程(OOP)**中,对象是“数据和功能的集合”。例如:
- 一个“按钮对象”包含属性(颜色、位置)和行为(点击后跳转)。
- 一个“输入框对象”包含属性(默认文字、长度限制)和行为(输入验证)。
2. 对象层:把积木分类装进不同的箱子
当积木太多时,你会按类型分类:车辆积木放蓝箱、建筑积木放红箱。
- 对象层就是将相关对象组织在一起的逻辑层。例如:
- 登录页面对象层:包含“用户名输入框”“密码输入框”“登录按钮”等对象。
- 购物车对象层:包含“商品列表”“结算按钮”“优惠券输入框”等对象。
3. 应用场景:自动化测试的“万能工具箱”
- Web自动化测试:用对象层管理页面元素(按钮、表格),让测试脚本像搭积木一样复用。
- 接口测试:用对象层封装API请求参数和校验规则,避免重复造轮子。
二、继承场景:像图书馆的“分类书架”一样扩展功能
1. 页面流程:借书→读书→还书的完整动线
- 流程链:
首页(图书馆大门)→ 登录页(借书卡登记)→ 业务A页面(科技区)→ 业务B页面(文学区)→ 注销页(还书离开)
- 用户必须按顺序“走完书架”,用“@”符号串联步骤,确保流程不跳步。
2. 对象层继承:从“通用工具书”到“专业手册”
-
基础对象层(工具书区)
定义所有业务通用的功能,比如:点击()
:像“如何查目录”这样的基础操作。输入文本()
:像“如何做笔记”这样的通用方法。
-
业务A对象层(科技区手册)
继承基础层,并扩展科技区专属功能:搜索编程书籍()
:基于点击()
,但限定在“Python/Java”分类。筛选最新出版()
:新增按时间排序的逻辑。
-
业务B对象层(文学区指南)
继承业务A层(如果需要共用科技区逻辑),或直接继承基础层,新增文学区功能:按作者查询()
:调用基础层的搜索()
,但附加作者过滤条件。查看书评()
:独有的互动功能。
3. 对象集合:图书馆的不同功能区
-
浏览器对象(图书馆大楼)
提供基础设施:- 灯光(页面渲染)、楼梯(导航)、WiFi(网络请求)。
-
业务A页面对象集合(科技区书架)
管理所有科技书籍的操作:- 如何借阅《Python入门》?
- 如何预约《AI算法》?
-
业务B页面对象集合(文学区阅览室)
管理文学书籍的专属功能:- 如何查询《百年孤独》的借阅记录?
- 如何续借《三体》?
三、总结:为什么对象层+继承是程序员的“懒人秘籍”?
1. 像乐高一样“拼装复用”
- 基础层是通用积木块,避免重复写“点击按钮”这种代码。
- 业务层是主题积木包(太空系列、城市系列),按需取用。
2. 像图书馆一样“分类管理”
- 新增业务时,只需扩展专属功能,无需从头造轮子。
- 修改基础功能时(比如优化“搜索逻辑”),所有继承的业务自动同步更新。
3. 适用场景
- Web开发:快速构建不同业务线页面(电商、社交、教育)。
- 自动化测试:用同一套基础操作,测试不同业务模块。
最后的小剧场:
程序员小明:“为什么我的代码从不加班?”
老板:“因为你用对象层继承——就像用乐高搭城堡,别人还在挖泥烧砖!”
用对方法,编程也能像玩乐高一样快乐! 🚀🧱
「小贴士」:点击头像→【关注】按钮,获取更多软件测试的晋升认知不迷路! 🚀