selenium自动化

python与selenium开发环境搭建

  • python setup.py install
    • pip install ggplot(下载安装新库)
    • 备注:用权限安装
  • 打开相应浏览器的驱动Chrome chromedriver.storage.googleapis.com/index.html
    • 将chromedriver.exe文件复制到C:\Users\11839\AppData\Local\Programs\Python\Python37和C:\Users\11839\AppData\Local\Programs\Python\Python37\Scripts文件夹中
    • 火狐浏览器驱动GeckoDriver下载地址https://github.com/mozilla/geckodriver/releases使用方法同上
  • 备注:异常关闭杀毒软件(先从重启)
  • cmd开启控制台,cd命令进入:Python2\Scripts,输入pip install selenium 或者 pip install –U selenium后回车,等待下载并安装,如果无错误 即安装成功。
    • 手动下载
  • pycham功能及地址www.jetbrains.com/pycharm

  • idea功能相同(集成开发环境)
    • project视图、代码结构视图
    • 代码重构
    • 语法高亮、自动补齐、错误提示、自动修复
    • 代码导航
    • 主流开发框架的支持(Django)
    • 集成版本控制(git、svn)
    • 单元测试
    • 图形界面的调试功能

python

  • 对象
    • 字符串
    • 数字:整数、小数
    • 列表、字典
    • 函数、类、模块
  • 变量
    • 多次指代对象
    • a=3
    • a="hello.world"
    • a=100+34
    • print(a)
  • 变量名
    • 一般以字母(大小写均可)开头;
    • 后面可以使用 下划线_或者数字;
    • 大小写敏感;
    • 不能与关键字相同(关键字是python语言里面的特殊字符串)
    • 不要与内置函数相同)
  • 函数(function)
def playfootball():
    print("拿起足球")
    print("来到球场")
    print("分成两队")
    print("设法把球踢进对方球门")
print(playfootball)
playfootball()
playfootball()
复制代码
  • 函数的调用与返回
def function():
    print("now we are in function")
print("before funtion")
function()
print("after function")
复制代码
  • 函数的调用参数
    • 定义参数(形参)时的命名规则--和变量一样
    • 可以是一个,可以是多个(逗号隔开)
    • 函数体里面像变量一样的使用参数
    • 调用函数时,传入对应个数的参数(实参)

  • 函数的返回值
    • return关键字
    • 返回对象可以赋值给变量,也可以直接使用
def fool(x):
    return x+3
a=fool(3)
a=fool(3)+54
print(fool(3))
print(a)
复制代码
  • python中的字符串
    • C语言实现
    • 用单引号、双引号、三引号
print('''hello world''')
复制代码
  • \n 换行
print("hello\nworld")
复制代码
  • 字符串本身就有引号就里面用单引号外面用双引号,或者里面用双引号外面用单引号
  • 字符串拼接用+或省略
print("my name is" "joy")
print("my name is "+"jop")
复制代码
  • 三个字符串拼接(重复n次)
print('we'*3)
复制代码

  • sequence操作(序列类型)
    • 一个序列,若干个元素组成
  • 位置索引 index
    • 标志每个元素的位置,用来获取元素
    • 从左到右,位置从0开始

  • 表达式(越界)
>>> str='sdffg'
>>> str[0]
's'
>>> str[-1]
'g'
>>> str[-4]
'd'
>>> str[7]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IndexError: string index out of range
>>>
复制代码
  • 切片操作(slice)
  • string[start:end]
  • string[start:]
  • string[:end]
>>> str='sdffg'
>>> str[2:4]
'ff'
>>> str[-4:-1]
'dff'
复制代码
  • 列表定义和创建
>>> []            空列表
[]
>>> [1,1.333,'a','abc']     四个元素
[1, 1.333, 'a', 'abc']
>>> list()         空列表
[]
>>>
复制代码
  • 元素获取(index)与切片(slice)操作
>>> a=[123,'asddd',4.34,['inner','list']]
>>> a[0]
123
>>> a[3]
['inner', 'list']
>>> a[1:4]
['asddd', 4.34, ['inner', 'list']]
>>> a[:3]
[123, 'asddd', 4.34]
>>> a[1:]
['asddd', 4.34, ['inner', 'list']]
>>> a[3][1]        在列表里的列表
'list'
复制代码
  • 列表中的数具可以改变;字符串中的数值可以改变
>>> a[0]=4
>>> a
[4, 'asddd', 4.34, ['inner', 'list']]
>>> str='inner'
>>> str[0]='a'
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'str' object does not support item assignment
复制代码
  • 元组的定义和创建
>>> a=1,1.33,'a','abc'
>>> type(a)
<class 'tuple'>
>>> a=(1,)
>>> type(a)
<class 'tuple'>
>>> a              元组
(1,)
>>> a=(1)
>>> a
1
>>> a=1,        不加括号
>>> a
(1,)
>>> a[0]
1
复制代码
  • 元组支持切片(不改变原有内容,只有赋值会改变)
  • 不支持元素改变

接口自动化

  • 现在流行的API接口都是http
  • 接口通常是测试后端服务,后端是不是能正常处理。前端页面可以用UI
  • 对被测系统输入信息 -检查输出信息
  • 接口文档 - 接口消息的构成
  • 测试工具 -
  • 构造接口消息并发送接收
  • 根据测试用例,构造出相应的HTTP请求,发送给服务器
  • 内置库 httplib、urllib2
  • 第三方库
  • urllib3、requests、pyCurl;接收并检查响应消息

下载代码后安装:在python目录下(pip install requests)或 git clone git://github.com/kennethreitz/requests.git cd requests $ python setup.py install

报错

  • 1.存在requests.py的包,删除即可
  • 2.存在不同版本的python导致安装识别混乱,方法每个运行下,有成功者删除另外一个

自动化 原理

  • Selenium WebDriver

  • 元素

转载于:https://juejin.im/post/5cbb0c3a6fb9a068985fb5d1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值