python3+selenium框架设计05-配置文件和浏览器引擎类
python3配置文件的增删改查等操作可以使用内置的ConfigParser模块,可以自行百度学习,也可以看 Python3学习笔记27-ConfigParser模块
配置文件一般存放着环境信息,比如url和一些测试过程中后续需要用到的字段。还有测试中需要导入,导出的一些文件。在项目下新建Config文件夹,文件夹下新建config.ini文件。项目结构如下
实际项目测试中,比如测试环境和生产的地址的切换,用户信息这些都是放在配置文件中,所以会频繁的使用对配置文件进行操作的方法,那我们就需要对配置文件的增删改查进行封装
先看下config.ini文件
因为ConfigParser模块在写入时会把注释给清空掉。所以如果要实现配置文件去控制想要测试哪个环境信息,只能配置一个开关。没办法通过去掉注释这种方法。
environment是配置一些开关,比如browser用来配置浏览器,可以设定0是谷歌浏览器,1是火狐浏览器。switch是环境开关,0是测试环境,1是生产环境
test放一些关于测试环境用到的信息
prod放一些关于生产环境用到的信息
接下来进行具体的实现。在Common文件夹下,对Base_Page.py文件添加全局变量
path = getcwd.get_cwd() config_path = os.path.join(path, 'Config/config.ini') config = configparser.ConfigParser() config.read(config_path,encoding="utf-8-sig")
上面代码是为了提供配置文件的路径,接下来是封装配置的文件的增删改查
这是将读取配置文件的方法进行封装。代码中key是配置文件中section某个键,section是具体哪个部分的配置文件,默认是None。如果需要读的信息不是test或者prod下,才需要进行传入。来看下测试代码
可以看到第一个如果要读取不是test或prod下的配置内容,需要把section和key都传进去,注意顺序先key再section。第二个因为switch是1,所以读的是prod下的,也就是生产环境的url。
接下来看写入配置文件
和上面读取的思路差不多懒得解释了。来看测试代码。
可以看到新增成功了。
再看下删除
和读取也是差不多的思路,看下测试代码
在对配置文件操作封装文成之后,封装浏览器引擎类,根据配置文件的不对,启动不同的浏览器。
看下测试代码
我这边执行成功