《selenium 基础之java实现》

selenium RC 环境配置

菜鸟学自动化测试(一)----selenium IDE

菜鸟学自动化测试(二)----selenium IDE 功能扩展

菜鸟学自动化测试(三)----selenium 命令

菜鸟学自动化测试(四)----selenium 命令之验证页面元素

菜鸟学自动化测试(五)-----selenium命令之定位页面元素

菜鸟学自动化测试(六)----selenium 命令之文字范本匹配

菜鸟学自动化测试(七)----selenium RC 工作原理

菜鸟学自动化测试(八)----selenium 2.0环境搭建(基于maven)

菜鸟学自动化测试(九)----WebDirver

=========================================================================

  在拾功能自动化距离上次selenium的学习刚好一年左右的时光,过去的一年时光里,一直在围绕 性能测试 学东西,一方面是自己学到性能调优是个瓶颈,另一方面专职性能的需求量不大(至少在我跳槽时是这种感受),惭愧,再次的跳槽不能如愿的去做性能。

  新工作的氛围也算喜欢,就工作本身来说没什么挑战,因为产品部分用python开发,所以,浅学了一下。

  一直在摸索能否将目前的产品自动化起来,对自己也是一种挑战和提高。放弃了久之不用的java ,改换 python 。之前的系列也只算个入门,后面就接着摸索下去。

下面会用  selenium + webdriver + python 实现

关系:

selenium 自动化测试工具 :selnium 1.0 包括:selenium RC 、selenium IDE 、selenium GRID、selenium CORE

webdriver  google的自动化测试框架(或者说是套规范API)

webdriver 与seleinum  各有优点,两个团队都认为合并会更牛逼,于是:

selenium 2.0 = selenium RC + webdriver

selenium 可以使用多种语言实现:C# , java , python , ruby ....

环境搭建:

selenium + python自动化测试环境搭建

译:selenium webdriver (python)

----------------轻松自动化系列目录-----------

轻松自动化---selenium-webdriver(python) (一)

开始我们的第一个脚本:

  • 熟悉selenium python 代码样式
  • time.sleep()  添加休眠时间
  • print   打印输出信息

轻松自动化---selenium-webdriver(python) (二)

  • 打印URL
  • 将浏览器最大化
  • 设置浏览器固定宽、高
  • 操控浏览器前进、后退

轻松自动化---selenium-webdriver(python) (三)

* 简单对象定位:

  • · id
  • · name
  • · class name
  • · link text
  • · partial link text
  • · tag name
  • · xpath
  • · css selector

轻松自动化---selenium-webdriver(python) (四)

  • 定位一组元素

轻松自动化---selenium-webdriver(python) (五)

  • 层级定位

轻松自动化---selenium-webdriver(python) (六)

操作对象:

  • · click 点击对象
  • · send_keys 在对象上模拟按键输入
  • · clear 清除对象的内容,如果可以的话

WebElement  另一些常用方法:

  • · text  获取该元素的文本
  • · submit  提交表单
  • · get_attribute  获得属性值

轻松自动化---selenium-webdriver(python) (七)

多层框架或窗口的定位:

  • switch_to_frame()
  • switch_to_window()

智能等待:

  • implicitly_wait()

轻松自动化---selenium-webdriver(python) (八)

调用js方法

  • execute_script(script, *args)

轻松自动化---selenium-webdriver(python) (九)

  • 上传文件

轻松自动化---selenium-webdriver(python) (十)

  • 处理下拉框
  • switch_to_alert()
  • accept()

轻松自动化---selenium-webdriver(python) (十一)

  • 控制滚动条到底部

轻松自动化---selenium-webdriver(python) (十二)

  • l 键盘按键用法
  • l 键盘组合键用法
  • l send_keys() 输入中文运行报错问题

selenium-webdriver(python) (十三) -- cookie处理

  • driver.get_cookies() 获得cookie信息
  • add_cookie(cookie_dict)  向cookie添加会话信息
  • delete_cookie(name)   删除特定(部分)的cookie
  • delete_all_cookies()    删除所有cookie

selenium-webdriver(python) (十四) -- webdriver原理

  • webdriver 原理分析

selenium-webdriver(python) (十五) -- 鼠标事件

  • context_click()  右击
  • double_click()   双击
  • drag_and_drop()  拖动

selenium-webdriver(python) (十六) --unittest 框架

  • 浅析unittest测试框架

最新,《selenium 2.0 (python) 第一版》  PDF版本即将推出,内容更完善,顺序更合理。敬请期待。。。

后面内容近期更新......

「UI 测试自动化selenium」汇总的更多相关文章

  1. 关于UI测试自动化的考虑

    针对IE的测试使用.net体系是比较方便的,利用process启动IE,再把IE进程转换成IExplore对象,就可以随意的操纵html dom了 针对Firefox的测试使用selenium也是比较 ...

  2. 《软件测试自动化之道》读书笔记 之 基于反射的UI测试

    <软件测试自动化之道>读书笔记 之 基于反射的UI测试 2014-09-24 测试自动化程序的任务待测程序测试程序  启动待测程序  设置窗体的属性  获取窗体的属性  设置控件的属性  ...

  3. python测试开发工具库汇总(转载)

    Web UI测试自动化 splinter - web UI测试工具,基于selnium封装. selenium - web UI自动化测试. mechanize- Python中有状态的程序化Web浏 ...

  4. 测试自动化:java+selenium3 UI自动化(1) - 环境搭建

    1.前言 我大概是在2012年第一次正式接触到自动化测试,那个时候跟随我的团队一起,就当时项目的UI自动化尝试做出了探索. 在我离开那家公司的时候,我们的自动化测试体系仍然难言完美,但是也已经达到了非 ...

  5. angular单元测试与自动化UI测试实践

    关于本文:介绍通过karma与jsmine框架对angular开发的应用程序进行单元与E2E测试. angular单元测试与集成测试实践 先决条件 创建项目 webstorm中创建空白web项目 创建 ...

  6. UI自动化selenium

    1.什么是UI自动化?模拟人用代码的方式去操作页面2.为什么要做UI自动化?后期迭代的时候,老功能比较多,人工维护成本较大,重复性工作较多,这个时候就考虑因为UI自动化3.什么时候做UI自动化?项目稳 ...

  7. 一种新的自动化 UI 测试解决方案 Airtest Project

    今天分享一个自动化UI测试工具airtest——一款网易出品的基于图像识别面向游UI测试的工具,也支持原生Android App基于元素识别的UI自动化测试.主要包含了三部分:Airtest IDE. ...

  8. 《软件测试自动化之道》读书笔记 之 基于Windows的UI测试

    <软件测试自动化之道>读书笔记 之 基于Windows的UI测试 2014-09-25 测试自动化程序的任务待测程序测试程序  启动待测程序  获得待测程序主窗体的句柄  获得有名字控件的 ...

  9. 《软件测试自动化之道》读书笔记 之 底层的Web UI 测试

    <软件测试自动化之道>读书笔记 之 底层的Web UI 测试 2014-09-28 测试自动化程序的任务待测程序测试程序  启动IE并连接到这个实例  如何判断待测web程序完全加载到浏览 ...

随机推荐

  1. JS的面向对象编程一:封装

    Javascript是一种基于对象的语言,但它又没有class.这在很长的一段时间里,对JS的面向对象编程的概念很模糊,在编程的时候时有用到,但要说个所以然,却说不出来,所以看了些书,又在网上查了些资 ...

  2. apk 反编译

    http://blog.csdn.net/vipzjyno1/article/details/21039349/ [置顶] Android APK反编译就这么简单 详解(附图) 标签: android ...

  3. js中的时间与毫秒数互相转换

    1.js毫秒时间转换成日期时间 var oldTime = (new Date("2012/12/25 20:11:11")).getTime(); //得到毫秒数     //不 ...

  4. 一鼓作气 博客--第一篇 note1

    1. 语言的类型 ,编译型(c,c++),解释型(python,php,ruby,java),编译型可移植性差,优点是运行速度快,解释型语言特点:边执行边翻译,速度慢. 2.翻译官就是机器的解释器,跟 ...

  5. 设置Android Studio启动时可选最近打开过的工程

    Android Studio启动时,默认会打开最近关闭的工程. 如果想Android Studio在启动时,打开欢迎界面(Welcome to Android Studio界面),则可以通过设置Set ...

  6. 部分安卓手机微信浏览器中使用XMLHttpRequest 2上传图片显示字节数为0的解决办法

    前端JS中使用XMLHttpRequest 2上传图片到服务器,PC端和大部分手机上都正常,但在少部分安卓手机上上传失败,服务器上查看图片,显示字节数为0.下面是上传图片的核心代码: HTML < ...

  7. Python3 的json 和 PHP的json

    Python3操作json的标准api库参考:https://docs.python.org/3/library/json.html#module-json >>> aa = ['/ ...

  8. Swift语言快速入门

    Swift语言快速入门(首部同步新版官方API文档和语法的Swift图书,确保代码可编译,作者专家在线答疑,图书勘误实时跟进) 极客学院 编著   ISBN 978-7-121-24328-8 201 ...

  9. C语言-指针

    C指针基础知识 C语言中,指针无疑是最令人头疼的.今天无事就来学学C语言的指针,在此留下点笔记,仅供个人参考. 首先要搞懂的是,指针是什么? 指针:是用来存放内存地址的变量. 不管是什么类型的指针,存 ...

  10. C#设计模式-装饰者模式

    在软件开发中,我们经常想要对一类对象添加不同的功能,例如要给手机添加贴膜,手机挂件,手机外壳等,如果此时利用继承来实现的话,就需要定义无数的类,如StickerPhone(贴膜是手机类).Access ...