《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. eclipse版本发展历史

    Eclipse百科 https://zh.wikipedia.org/wiki/Eclipse        # 中文维基百科 http://baike.baidu.com/subview/23576 ...

  2. SQL语句经典大全

    一.基础 1.说明:创建数据库 CREATE DATABASE database-name  2.说明:删除数据库 drop database dbname 3.说明:备份sql server --- ...

  3. touchstart、touchmove、touchend 实现移动端上的触屏拖拽

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  4. java基本类型的默认值及其取值范围

  5. sql字符串分组

    create function f_myWord(@s varchar(50)) returns varchar(50) as begin declare @i int set @i=1 while ...

  6. java学习笔记(3)之面向对象(1)

    下面来谈谈我对面向对象的一些理解和总结. 1.什么叫面向对象?我自己的理解就是一种编程思想,强调对象,是一种思考问题的思维模式.在学习面向对象的时候,我们要建立起自己面向对象的思维模式. (1).先整 ...

  7. 生成Json文件

  8. Visual Studio中创建混合移动应用程序解决方案Xamarin Portable Razor

    在Visual Studio中创建混合移动应用程序的一个解决方案是使用Xamarin Portable Razor工具,这是ASP.NET MVC API针对移动设备的一个轻量级实现.Xamarin编 ...

  9. ABP理论学习之启动配置

    返回总目录 本篇目录 配置ABP 配置模块 为模块创建配置 为了在应用启动时配置ABP和模块,ABP提供了一个基础设施. 配置ABP 配置ABP是在模块的PreInitialize事件中完成的.下面的 ...

  10. HTML和CSS经典布局5

    如下图: 需求: 1. 如图 2. 可以从body标签开始. 3. 页面内容高度设置高点,把窗口的滚动条显示出来,但是busy indicator不滚动. <!DOCTYPE html> ...