1. 简介

  这篇文章主要是分享讲解一下,如何封装自己用到的方法和类。以便方便自己和别人的调用,这样就可以避免重复地再造轮子。

  封装(Encapsulation)是面向对象的三大特征之一(另外两个是继承和多态),它指的是将对象的状态信息隐藏在对象内部,不允许外部程序直接访问对象内部信息,而是通过该类所提供的方法来实现对内部信息的操作和访问。

就好比使用计算机,我们只需要使用计算机提供的键盘,就可以达到操作计算机的目的,至于在敲击键盘时计算机内部是如何工作,我们根本不需要知道。

封装机制保证了类内部数据结构的完整性,因为使用类的用户无法直接看到类中的数据结构,只能使用类允许公开的数据,很好地避免了外部对内部数据的影响,提高了程序的可维护性。总的来说,对一个类或对象实现良好的封装,可以达到以下目的:

  • 隐藏类的实现细节。

  • 让使用者只能通过事先预定的方法来访问数据,从而可以在该方法里加入控制逻辑,限制对属性的不合理访问。

  • 可进行数据检查,从而有利于保证对象信息的完整性。

  • 便于修改,提高代码的可维护性。

为了实现良好的封装,需要从以下两个方面来考虑:

  1. 将对象的属性和实现细节隐藏起来,不允许外部直接访问。

  2. 把方法暴露出来,让方法来控制对这些属性进行安全的访问和操作。

因此,实际上封装有两个方面的含义:把该隐藏的隐藏起来,把该暴露的暴露出来。

2. 二次封装Selenium中几个方法

  本文来介绍,如何把常用的几个webdriver的方法封装到自己写的一个类中去,这个封装过程叫二次封装Selenium方法。我们把打开站点,浏览器前进和后退,关闭和退出浏览器这这个方法封装到一个新写的类中去。

我们按照如下层次结构在PyCharm中新建两个包和两个.py文件:

上图,baidu_search.py是我们编写测试脚本的python文件,具体测试代码写在这个文件。包test1下的basepage.py文件是这次我们介绍的二次封装selenium方法而新建的。这里提一下,python中默认规则,包名和文件名都是小写,类名称单词首字母大写,函数名称小写,多个字母下划线隔开。我们尽量遵守下这个不成文的约定。

来看看basepage.py的内容:

2.1 代码实现:

2.2 参考代码:

# coding=utf-8												

最新文章

  1. java基本数据类型包装类
  2. 对Excel文件的操作
  3. 【转】requirejs简单入门
  4. Photoshop:制作方块背景
  5. JDBC 的基本步骤
  6. S3C2410 实验三——跑马灯实验
  7. Java编程最差代码
  8. -_-#【Canvas】
  9. 【HTML5】DOMContentLoaded事件
  10. anyremote源码分析
  11. url语法
  12. C++输出
  13. webservice调用和生成
  14. 洛谷P1108 低价购买题解
  15. 【SQL】SQL存储过程相关当前理解。(@temp=……)
  16. 2019.01.08 codeforces 1009F. Dominant Indices(长链剖分)
  17. iOS4.0及以上系统,关闭程序,applicationWillTerminate为调用问题解决
  18. JQuery表格插件
  19. Date日期操作
  20. Linux下MariaDB 安装及root密码设置(修改)

热门文章

  1. lucas定理(模板题题解)
  2. 创建linux系统下的虚拟机
  3. PHP路径指定web路径的方法
  4. springboot封装JsonUtil,CookieUtil工具类
  5. Unity - Cinemachine实现相机抖动
  6. Asciinema文章勘误及Web端使用介绍
  7. thefuck的安装和使用
  8. nyoj 4 ASCII码排序
  9. mysql 导出 导入
  10. Bran的内核开发教程(bkerndev)-08 中断服务程序(ISR)