- 本文主要介绍自动化测试环境搭建、Python相关概念和pip包管理工具。
#环境搭建
安装Python
更换国内源镜像源
pip install selenium==xx.xx -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
安装Selenium包
- 运行命令
pip install --user selenium
- 运行命令
pip国内软件源可供安装的地址:
https://pypi.tuna.tsinghua.edu.cn/simple/
https://pypi.doubanio.com/simple/
配置浏览器驱动
pip命令安装chromedriver(推荐)
- 安装
pip install chromedriver-py
- 使用
1
2
3from selenium import webdriver
from chromedriver_py import binary_path
driver = webdriver.Chrome(executable_path=binary_path) # driver初始化的时候一定要指定executable_path参数为chromedriver_py模块的binary_path变量。- chromedriver_py的本地文件夹
- 由于使用的pip安装,所以
chromedriver
在Python环境下的Lib\site-packages\chromedriver_py
- 由于使用的pip安装,所以
- 安装
手动下载安装chromedriver
- 下载浏览器驱动放于Python安装目录下。
- chrome浏览器驱动下载
pip的常用命令
pip freeze
或pip list
列举已安装的包- 导出requirements.txt(用于生成记录所有依赖包及其精确的版本号。以便新环境部署。)
pip freeze
<目录>/requirements.txtpip install
<目录>/<文件名>pip intstall -upgrade
或pip install -U
<包名>升级包pip pip install -U pip
升级pip show
<包名-现实指定包版本pip show -f
<包名-显示包所在目录pip search
<搜索关键字>pip list -o
查询可升级的包pip install
<包名–d <目录-或pip install -d
<目录–r requirements.txt 下载包而不安装pip wheel
<包名-打包pip install
软件名称 == 很大的数字 查看全部可安装版本ctrl + c
打断
Chrome Driver
下载chromedriver
的版本一定要与Chrome的版本一致,不然就不起作用。- 有两个下载地址:
http://chromedriver.storage.googleapis.com/index.html
https://npm.taobao.org/mirrors/chromedriver
Firefox Driver
下载https://github.com/mozilla/geckodriver/releases
#Python 基础
print函数
- 转换说明符
- %s 字符串,采用str()
- %r 采用repr()显示
- %c Unicode 码点
- %d 十进制整数
- %i 十进制整数
- %o 八进制整数
- %x 十六进制整数
- %e 指数(基底为e)
- %E 指数(基底为E)
- %f 浮点数
- %F 浮点数
- %g 指数(e)或浮点数
- %G 指数(e)或浮点数
- 格式化输出
1
2
3
4
5# 格式化输出
print("{} {}".format("hello", "world"))
print("{0} {1}".format("hello", "world"))
print("{1} {0} {1}".format("hello", "world"))
print("{:.2f}".format(3.1415926)) # 保留两位小数
引号与注释
- 单行注释 #
- 多行注释 ```注释内容```
- 支持三引号(不论单双)
引用模块import
如果确定不会从把不同模块导入同名函数
- from 模块名称 import -
注意:自定函数名与导入函数同名会覆盖原函数。
理解执行import,Python到底做了那些操作
- 创建一个
module
(可能包含多个module
) - 把这个
module
插入到sys.module
中 - 装载
module
的代码(如果需要,则必须先编译) - 创建对象,插入对象,装载要执行的代码,执行对应代码。
- 创建一个
装载代码过程:
- 当前路径(以及从当前目录指定的
sys.path
) - Python的PATH
- Python安装时的默认路径。
- 执行新的module中对应的代码
- 当前路径(以及从当前目录指定的
补充
- ./ 代表当前目录
- …/ 代表上一级目录
- /是根目录
异常
- 异常抛出机制
- 程序运行时发生异常,解释器会查询相应处理语句(称为handler)
- 如果再当前函数理没有找到就会将异常传递给上层调用函数
- 如果再最外层(全局“main”)中还是未找到,解释器就会退出,同时打印Traceback,方便用户找到错误产生原因。
- 所有异常都继承Exception,所以可以使用它来接受所有类型的异常。
- Python2.5后所有的异常类都继承与基类
BaseException
,Exception同样继承与BaseException
- 异常抛出机制
Python运算符优先级表