学了一个月用java编写selenium driver 测试脚本,也将公司做的系统基本可用的模块做了一次自动化,虽然写的比较简陋,但是基本可用跑一遍,并用testNG生成了测试报告。

学习方式无非是:书+百度+群主的指导,自学还是有点难度,试错百度无数次,但是至少有一丢丢进步,也有点底气去面对接受更难的挑战。

但是对于框架的了解和使用,以及更深层次的自动化还是缺乏实践和认知,果然还是需要在一个真正的测试团队中去磨练成长。

早就听说python编写脚本比java清晰又简洁,今天就试一试啦~虽然表示并不知道python是个什么鬼。。。。

一、python介绍

python是一种通过缩进来进行功能逻辑块的编排,加上python本身的精悍,从而使得python程序非常简约明了。

python作为一种脚本语言,对于测试脚本的编写相对与java更加简单易于学习,并且具有以下优点:

  1. 学习难度小,开发周期短。对目前国内大多数测试人员来说,编码经验不足,python是个很好的入门语言。
  2. 胶水语言,能与C++, Java, COM, and .NET,Object-C 整合。 测试部门要做单元测试,接口测试,因为人员比例的关系,不可能让测试人员同时掌握多门语言,python可以对C/C++, Java, Object-C进行接口封装后,实现单元测试。
  3. 语法简约,清晰。减少后期维护的难度。
  4. 跨平台
  5. 大量可用的库(但python的库有个缺点是,不像perl一样,有个CPAN类库集中地,大部分集中在SourceForge,其实有google这些都不是问题)
  6. 成熟的框架。web: django,zope。高性能网络框架:twisted,gevent
  7. 丰富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 环境搭建详解的更多相关文章

  1. Python环境搭建详解(Window平台)

    前言 Python,是一种面向对象的解释型计算机程序设计语言,是纯粹的自由软件,Python语法简洁清晰,特色是强制用空白符作为语句缩进,具有丰富和强大的库,它常被称为胶水语言. Python是一种解 ...

  2. Windows GTK+ 环境搭建(详解)

    来源:http://blog.sina.com.cn/s/blog_a6fb6cc901017ygy.html Windows GTK+ 环境搭建 最近要做界面的一些东西,但是对微软提供的类库MFC不 ...

  3. 转:python webdriver 环境搭建

    第一节 环境搭建准备工具如下:-------------------------------------------------------------下载 python[python 开发环境]ht ...

  4. Windows环境下,python webdriver环境搭建

    最近刚开始学习selenium,这是我从虫师的<selenium2自动测试实战--基于Python语言>这本书上学到搭建环境的步骤,里面有加上我的一些总结,希望对大家有所帮助!   准备工 ...

  5. windows 64位下,React-Native环境搭建详解 (Android)

    React-Native环境搭建需要: 1.安装Java JDK 2.安装Android Studio 3.安装node.js 4.安装git 5.安装Python 2.x (注意目前不支持Pytho ...

  6. nginx+php环境搭建详解(Linux)

    今天在内网环境下,给linux主机安装nginx+php环境,由于是内网环境,只能手动解压缩包进行安装,在这过程中我也着实遇到了一些问题(困扰了我许久),还好最后搭建环境成功了,所以写篇博客记录一下, ...

  7. Windows下的SVN环境搭建详解

    前言:最近因为要和其他人合作开发项目,所以花时间搭建了SVN的环境. 因为是初次使用SVN,对于SVN的环境搭建很不熟悉,再加上网上的教程都介绍的比较粗略,导致前前后后重做了几次. 当然最终是搭建成功 ...

  8. Vue.js 运行环境搭建详解(基于windows的手把手安装教学)及vue、node基础知识普及

    Vue.js 是一套构建用户界面的渐进式框架.他自身不是一个全能框架——只聚焦于视图层.因此它非常容易学习,非常容易与其它库或已有项目整合.在与相关工具和支持库一起使用时,Vue.js 也能完美地驱动 ...

  9. AngularJS4.0环境搭建详解--windows系统环境

    第一步:安装NodeJS 下载最新版的NodeJS并安装,安装完成后打开CMD命令行,输入以下命令: node -v 若返回类似版本号则代表NodeJS安装成功,如下: 第二部 安装npm 新版的No ...

随机推荐

  1. vue 生命周期

    一 vue的生命周期如下图所示(很清晰) 二 vue生命周期的栗子 注意触发vue的created事件以后,this便指向vue实例,这点很重要 <!DOCTYPE html> <h ...

  2. 神经网络与深度学习笔记 Chapter 2.

    转载请注明出处http://www.cnblogs.com/zhangcaiwang/p/6886037.html 以前都没有正儿八经地看过英文类文档,神经网络方面又没啥基础,结果第一章就花费了我将近 ...

  3. 删除多余的win10软件

    第一步:开始→所有程序→WindowsPowershell→然后右键以管理员方式运行 全部应用: Get-AppxPackage | Remove-AppxPackage 计算器: Get-AppxP ...

  4. Web前端学习开篇

    首先想想自己喜欢干什么?想干什么?脑袋需要什么?什么对自己来说最重要?自己的规划? 本人数字媒体技术专业,想学Web前端开发有好长时间了,有一定的基础,所以就想进一步深入学习.谁料想,我怎么那么没有耐 ...

  5. Win7下C:\Users\Cortana以账户名称命名的系统文件夹用户名的修改

    Win7下C:\Users\Cortana以账户名称命名的系统文件夹用户名的修改 Win7下C:\Users\Cortana以账户名称命名的系统文件夹用户名的修改 即修改Cmd命令提示符:C:\Use ...

  6. 8.8.1 Super关键字

    Super关键字 1.super不是引用类型,super中存储的不是内存地址,super指向的不是父类对象. 2.super代表的是当前子类对象中的父类型特征. //通过子类的构造方法去调用父类的构造 ...

  7. sgu102 Coprimes

    102. Coprimes time limit per test: 0.25 sec. memory limit per test: 4096 KB For given integer N (1&l ...

  8. Jquery Mobile笔记之一

    jQuery Mobile 在你的网页中添加 jQuery Mobile 你可以通过以下几种方式将jQuery Mobile添加到你的网页中: 从 CDN 中加载 jQuery Mobile (推荐) ...

  9. HDU 6149 Valley Numer II 状压DP

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6149 题意:中文题目 解法:状压DP,dp[i][j]代表前i个低点,当前高点状态为j的方案数,然后枚 ...

  10. css 禁止长按保存功能

    *{-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;} 或者指定某个元 ...