# POM20210322 **Repository Path**: xiaobai_long/POM20210322 ## Basic Information - **Project Name**: POM20210322 - **Description**: 自动化设计模式POM - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-03-23 - **Last Updated**: 2022-06-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: POM ## README # POM20210322 # 自动化设计模式POM ### 一.为什么要用POM: * 目前市面上,软件测试行业中公认最主流也是最佳的设计模式叫做POM,全称PageObject Model,页面对象模型,这种模型是纯粹应用在UI自动化阶段。 ### 二.POM设计模式的好处: * 1.完整的规范化的框架设计模式。 * 2.便于维护和升级(优化)。 * 3.便于公司的产出。 * 4.实现了高内聚低耦合。 ### 三.市面上自动化测试主流的设计模式: * 1.关键字驱动+数据驱动 * 2.POM+数据驱动 ### 四.POM设计模式示例: * 添加商品到购物车: * 1.访问首页,进入商品详情页 * 2.选择商品属性,点击加入购物车按钮 * 3.登录操作 * 4.添加成功,进入购物车页面来确定商品是否添加成功 * 流程: * 首页-商品详情页-购物车页面 * 在系统中,所有的业务流程都是基于一个个的页面进行排列组合,进行对应操作,从而实现的。 * 页面对象模型,POM。将系统的页面进行提取,结合业务流程,将核心页面提取成为一个个的页面对象,不同的页面对象进行不同的流程执行,在实际自动化中,通过组合各个类型的页面对象,结合到页面对象的流程,从而实现一个完整的业务流。 ### 五.POM的设计结构: * 1.代码与数据分离 * 2.逻辑代码与测试代码分离 * 3.测试数据单独存放管理 ### 六.基础POM来实现的结构: * 1.基类 * 2.页面对象类 * 2.测试用例类 * 3.测试数据类