python webdriver 环境搭建详解
学了一个月用java编写selenium driver 测试脚本,也将公司做的系统基本可用的模块做了一次自动化,虽然写的比较简陋,但是基本可用跑一遍,并用testNG生成了测试报告。
学习方式无非是:书+百度+群主的指导,自学还是有点难度,试错百度无数次,但是至少有一丢丢进步,也有点底气去面对接受更难的挑战。
但是对于框架的了解和使用,以及更深层次的自动化还是缺乏实践和认知,果然还是需要在一个真正的测试团队中去磨练成长。
早就听说python编写脚本比java清晰又简洁,今天就试一试啦~虽然表示并不知道python是个什么鬼。。。。
一、python介绍
python是一种通过缩进来进行功能逻辑块的编排,加上python本身的精悍,从而使得python程序非常简约明了。
python作为一种脚本语言,对于测试脚本的编写相对与java更加简单易于学习,并且具有以下优点:
- 学习难度小,开发周期短。对目前国内大多数测试人员来说,编码经验不足,python是个很好的入门语言。
- 胶水语言,能与C++, Java, COM, and .NET,Object-C 整合。 测试部门要做单元测试,接口测试,因为人员比例的关系,不可能让测试人员同时掌握多门语言,python可以对C/C++, Java, Object-C进行接口封装后,实现单元测试。
- 语法简约,清晰。减少后期维护的难度。
- 跨平台
- 大量可用的库(但python的库有个缺点是,不像perl一样,有个CPAN类库集中地,大部分集中在SourceForge,其实有google这些都不是问题)
- 成熟的框架。web: django,zope。高性能网络框架:twisted,gevent
- 丰富python测试工具。此系列文章主要关注于python在测试中的应用。这里有很全面的测试工具介绍(http://wiki.python.org/moin/PythonTestingToolsTaxonomy),从web测试,到性能测试,单元测试,持续集成等
二、搭建python环境(有一丢丢复杂,不过按下面的来肯定没问题,亲自实践)
1. python
先下载安装 python-2.7.5.msi ,CSDN有免积分版本,按步骤安装即可 (python开发环境)
2. setuptools
下载 setuptools-18.5 压缩包,下载地址:http://pypi.python.org/pypi/setuptools。
(基础包工具,下载,构建,安装,升级,卸载)
配置 python-2.7.5.msi 安装路径到path中
解压后到解压文件夹下,shift +右键,运行cmd :python setup.py install 即可安装成功
常见错误提示:
安装的过程中可能会出现“ImportError: No module named setuptools”的错误提示,这是新手很常遇见的错误提示。不用担心,这
是因为Windows环境下Python默认是没有安装setuptools这个模块的,这也是一个第三方模块。下载地址为
http://pypi.python.org/pypi/setuptools。
3. pip
下载pip-7.1.2压缩包,python软件包的安装工具,管理python类库,下载路径:http://pypi.python.org/pypi/pip
解压到文件夹下,输入cmd:python setup.py install
到python安装包下的Scripts下运行:easy_install pip
至此pip安装完毕
4.安装selenium
到python安装包下的Scripts下运行:pip install -U selenium
selenium安装完毕后截图如下:

三、IDLE编写python
在开始-程序中找到IDLE(Python GUI)快捷方式,打开,输入:print ”hello world!" 回车,可显示如下:

现在编写自动化测试脚本,一个小的完整用例:
打开file》new windows 或 Ctrl+N,输入代码如下:
# coding =utf-8 //防止乱码
from selenium import webdriver //导入selenium的webdriver包 browser=webdriver.Firefox() //创建浏览器对象,默认FF已在webdriver中,其他的no
browser.get("http://www.baidu.com") browser.find_element_by_id("kw").sendkeys("selenium")
browser.find_element_by_id("su").click()
保存成.py文件(记得加py扩展名,默认是不会自动加添的),按F5运行,FF即可打开并跳到百度,输入内容搜索,大功告成!
PS:
如何debug?
1.设置断点:在Python编辑器中要调试的代码行右击->Set Breakpoint,之后该行底色就变黄了
2.打开debugger:Python Shell->Debug->Debugger
3.编辑窗口按F5
4.debug过程略
- Go表示运行完相当于eclipse的F8,不过按F5后先要Go一下才能往下走,默认是不运行的
- Step表示一步一步相当于eclipse的F5
- Over表示跳过函数方法相当于eclipse的F6
- Out表示跳出本函数相当于eclipse的F7
快捷键有哪些?
自动补全代码 Alt+/(查找编辑器内已经写过的代码来补全)
补全提示 Ctrl+Shift+space(默认与输入法冲突,修改之) (方法:Options->configure IDLE…->Keys-> force-open-completions 提示的时候只要按空格就出来对于的,否则翻上下键不需要按其他键自动就补全了)
后退 Ctrl+Z
重做 Ctrl+Shift+Z 加缩进 Ctrl+] 减缩进 Ctrl+[ 加注释 Alt+3 去注释 Alt+4
python webdriver 环境搭建详解的更多相关文章
- Python环境搭建详解(Window平台)
前言 Python,是一种面向对象的解释型计算机程序设计语言,是纯粹的自由软件,Python语法简洁清晰,特色是强制用空白符作为语句缩进,具有丰富和强大的库,它常被称为胶水语言. Python是一种解 ...
- Windows GTK+ 环境搭建(详解)
来源:http://blog.sina.com.cn/s/blog_a6fb6cc901017ygy.html Windows GTK+ 环境搭建 最近要做界面的一些东西,但是对微软提供的类库MFC不 ...
- 转:python webdriver 环境搭建
第一节 环境搭建准备工具如下:-------------------------------------------------------------下载 python[python 开发环境]ht ...
- Windows环境下,python webdriver环境搭建
最近刚开始学习selenium,这是我从虫师的<selenium2自动测试实战--基于Python语言>这本书上学到搭建环境的步骤,里面有加上我的一些总结,希望对大家有所帮助! 准备工 ...
- windows 64位下,React-Native环境搭建详解 (Android)
React-Native环境搭建需要: 1.安装Java JDK 2.安装Android Studio 3.安装node.js 4.安装git 5.安装Python 2.x (注意目前不支持Pytho ...
- nginx+php环境搭建详解(Linux)
今天在内网环境下,给linux主机安装nginx+php环境,由于是内网环境,只能手动解压缩包进行安装,在这过程中我也着实遇到了一些问题(困扰了我许久),还好最后搭建环境成功了,所以写篇博客记录一下, ...
- Windows下的SVN环境搭建详解
前言:最近因为要和其他人合作开发项目,所以花时间搭建了SVN的环境. 因为是初次使用SVN,对于SVN的环境搭建很不熟悉,再加上网上的教程都介绍的比较粗略,导致前前后后重做了几次. 当然最终是搭建成功 ...
- Vue.js 运行环境搭建详解(基于windows的手把手安装教学)及vue、node基础知识普及
Vue.js 是一套构建用户界面的渐进式框架.他自身不是一个全能框架——只聚焦于视图层.因此它非常容易学习,非常容易与其它库或已有项目整合.在与相关工具和支持库一起使用时,Vue.js 也能完美地驱动 ...
- AngularJS4.0环境搭建详解--windows系统环境
第一步:安装NodeJS 下载最新版的NodeJS并安装,安装完成后打开CMD命令行,输入以下命令: node -v 若返回类似版本号则代表NodeJS安装成功,如下: 第二部 安装npm 新版的No ...
随机推荐
- windows和linux下关闭Tomcat进程
windows和linux下解决Tomcat进程 windows下启动Tomcat报错,8080端口号被占用,报错信息如下 两种解决方法,一种是关闭了这个端口号,另外一种是修改Tomcat下的serv ...
- Charles使用(一)
Charles使用(一) 1.什么是Charles Charles是在MAC下常用的网络封包截取工具,在做移动开发时,是为了调试与服务端的网络通信协议,常常需要截取网络包来分析.Charles是通 ...
- fs模块练习
1.fs+path练习01.判断 当前路径下的public是否存在,不存在则创建02.判断 public下的index.html文件是否存在,不存在则创建 <h1>index</h1 ...
- 【Spring 核心】装配bean(三)XML配置
项目包结构: src/main/java com.bonc.pojo--|-CompactDisc.java (接口) |-SgtPeppers.java (实现类 实现 CompactDis ...
- Maven 项目 @Override must override a superclass method` 问题
问题 Maven 项目 @Override must override a superclass method` 原因 JDK 在1.5以上的版本,才支持@Override 注解 解决方法 (1)po ...
- 浅谈JS的继承
JS继承 继承是OO语言中最为人津津乐道的概念,许多OO语言都支持两种方式的继承:接口继承:实现继承. 接口继承:只继承方法签名. 实现继承:继承实际的方法. 由于ES里函数没有签名,所以在ES里面无 ...
- mysql的索引问题分析
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "PingFang SC"; color: #454545 } span. ...
- Day2 - Linux发展史
第1章 Linux发展史 1.1 什么是操作系统 操作系统是人与计算机硬件的一个中介. 1.2 操作系统组成 操作系统类似与鸡蛋 蛋壳--------->系统中各种各样的软件 蛋清------- ...
- 微信iOS收款到账语音提醒开发总结
本文来自于腾讯Bugly公众号(weixinBugly),未经作者同意,请勿转载,原文地址:https://mp.weixin.qq.com/s/yYCaPMxHGT9LyRyAPewVWQ 作者:l ...
- SourceTree使用方法介绍
SourceTree比命令行更容易操作,能更直观看到发生了什么.但是没有哪一家git图形化软件能完成git的所有操作,封装后的使用也隐藏了git的一些细节,在图形化工具出现一些非常罕见的情况时,还是需 ...