Selenium教程-虫师版

作者:虫师

《selenium 基础之java实现》

菜鸟学自动化测试(一)—-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测试框架

发表评论

电子邮件地址不会被公开。 必填项已用*标注