Python+selenium自动化测试入门

Slides:



Advertisements
Similar presentations
1 网站设计理念 大连理工大学创新实验学院 优秀网站展示 - LAMP 类网站
Advertisements

Tool Command Language --11级ACM班 金天行.
第一页是课程的标题 Spring入门示例.
网站如何定制建设???.
信 息 与 软 件 工 程 学 院 实验室开放实验介绍.
目 錄 壹、緣由 貳、問題解析 參、問題歸納 肆、因應對策 伍、評鑑獎勵 陸、追蹤考核 1.
转正述职报告 乐恩公司 史航
在PHP和MYSQL中实现完美的中文显示
J2EE与中间件技术 ——Lab.
Selenium 一个用于Web应用程序测试的工具 Robin Ren
注 册 在浏览器中输入如下网址:
Selenium经典教程 selenium教程.
Ajax编程技术 第一章 Ajax简介.
Android开发入门 -----Android 开发“Ready go!” 主讲:李晓蕾
武汉纺织大学传媒学院 cm.wtu.edu.cn
AngularJS -- 使用AngularJS进行开发
第二讲 搭建Java Web开发环境 主讲人:孙娜
打开光盘,点击6100U-Driver文件夹 Open the CD, click the 6100U-Driver to run software.
学习目标 1、Linux(这里用的是Centos)下mysql5.7的基本安装 2、课后习题.
学习前的准备工作 讲师:burning.
R教學 安裝RStudio 羅琪老師.
大学计算机基础 典型案例之一 构建FPT服务器.
第11章:一些著名开源软件介绍 第12章:服务安装和配置 本章教学目标: 了解当前一些应用最广泛的开源软件项目 搭建一个网站服务器
Visual Studio Team System 简介
PostgreSQL 8.3 安装要点 四川大学计算机学院 段 磊
第十章 IDL访问数据库 10.1 数据库与数据库访问 1、数据库 数据库中数据的组织由低到高分为四级:字段、记录、表、数据库四种。
Hub Web System 主要功能: 1.查询库存(Query Current Storage) 2.创建PL(Create PL) 3.查询、打印PL单(Query & Print PL) 4.查询允交量、在途量 5.修改用户的基本信息(Update Password) 6.查询GR(Query.
如何下载英飞凌单片机相关资料? 中英文用户手册、数据手册、应用笔记等.
以ISI平台为例,为您演示一下如何在Endnote文献中查看该文献的References
2019/1/12 GDP设计协同 超级管理员操作手册 GDP项目组.
单元测试工具XUnit 任课老师:黄武 下午2时20分 25.
本文档介绍 1. 如何使用同一台电脑录课; 2. 如何在其他电脑录课;
访问Epic games官网( 点击右上方“获取Epic games”进行下载
程序语言的现在和未来 孙志岗.
Windows 7 的系统设置.
YMSM D-PACK 安装手册 作成者:D-PACK维护组(YMSLx) 作成日:
VSS使用简介 王树升
用event class 从input的root文件中,由DmpDataBuffer::ReadObject读取数据的问题
DevDays ’99 The aim of this mission is knowledge..
程序设计工具实习 Software Program Tool
编程作业3:网页正文抽取 (10分).
录制回放工具使用说明 鲁晓宇
第 1 章 簡介XML.
Web安全基础教程
本节内容 随机读取 视频提供:昆山爱达人信息技术有限公司.
第四章 团队音乐会序幕: 团队协作平台的快速创建
Platform Builder使用介绍 WINCE系统应用开发流程说明 ACTION RDC 杨 涛 2005.Dec.3th
VB与Access数据库的连接.
姚金宇 MIT SCHEME 使用说明 姚金宇
海南医学院附属医院 The Affiliated Hospital of Hainan Medical College 科研信息管理平台上线
计算机网络与网页制作 Chapter 07:Dreamweaver CS5入门
JSP实用教程 清华大学出版社 第2章 JSP运行环境和开发环境 教学目标 教学重点 教学过程 2019年5月7日.
iSIGHT 基本培训 使用 Excel的栅栏问题
第 6 章 XLink、XBase與XPointer
第六章 素材的加工与处理 第13讲 用GoldWave进行音频的截取、合并、淡入淡出操作
2019/5/8 第2章 数据分析软件介绍.
Javascript 基础 面向非JS语言的开发人员.
VRP教程 2011.
Delphi 7.0开发示例.
SCI收录号查询方法介绍 上海大学情报研究所
波形平均和叠加分析指南 上海骐驰仪器有限公司 Shanghai Qichi Instruments Co. Ltd.
Python 环境搭建 基于Anaconda和VSCode.
腾讯北京分公司实习感悟 樊旭光
创建、启动和关闭Activity 本讲大纲: 1、创建Activity 2、配置Activity 3、启动和关闭Activity
基于学案制作ppt 录屏工具使用 郑建彬.
使用Fragment 本讲大纲: 1、创建Fragment 2、在Activity中添加Fragment
培训课件 AB 变频器的接线、操作及参数的备份 设备动力科.
第17章 PHP應用實例探討 17-1 PHP應用實例探討 17-2 圖片版的訪客計數 17-3 訪客留言簿 17-4 聊天室
JUDDI安装手册.
百万行、千万行数据查询教程 老黄牛.
Presentation transcript:

Python+selenium自动化测试入门 孔祥祝

Selenium简介 Selenium是一款基于web应用程序的开源测试工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。它支持Firefox、ie、Mozilla等众多浏览器。它同时直至JAVA、C#、Ruby、Python、PHP、Perl等众多的主流语言。

Selenium简介-特点 开源、轻量 运行在浏览器中 简单灵活、支持很多种语言 IED提供录制功能

Selenium简介 Selenium Core:支持DHTML 的测试案例(效果类似数据驱动测试),它是Selenium IDE 和Selenium RC的引擎 Selenium IDE:FireFox 的一个插件,支持脚本录制。 Selenium RC:Selenium Remote Control。后续的系列文章我会主要针对Selenium RC 展开介绍。 Selenium Grid:允许同时并行地、在不同的环境上运行多个测试任务,极大地加快Web 应用的功能测试。

Selenium简介

Selenium IDE的安装 官网的下载路径http://release.seleniumhq.org/selenium-ide/1.6.0/selenium-ide-1.6.0.xpi 安装:将这个文件拖入到firefox窗口

SeleniumIDE的录制功能 如下图启动Firefox工具selenium IDE

SeleniumIDE的录制功能 点击右侧的红色按钮开始录制。需要注意的是启动selenium IDE后工具默认的就是开始录制。

SeleniumIDE的录制功能 打开百度输入”selenium ide”点击查询,整个步骤录制后如下。

SeleniumIDE的录制功能 可以点击回放一下。脚本回放成功为淡绿色,验证信息回放成功为深绿色

SeleniumIDE的录制功能 工具默认将操作步骤记录为html格式,点击optionsformat可以选择你要转化的语言。从这儿可以看出selenium的强大之处。

SeleniumIDE的录制功能 转化之后再source面板可以看到转化后的代码,如右图

SeleniumRC的工作原理-RC的组成

Selenium server的安装和启动 官网的下载selenium-server-standalone-2.19.0.jar cmdjava -jar selenium-server-standalone-2.19.0.jar 需要java sdk

Python自动化 安装python2.7 将selenium-2.19.1.tar.gz(http://pypi.python.org/packages/source/s/selenium/selenium-2.19.1.tar.gz#md5=fc856390a87800c463c7e2d3800e3112)的selenium目录拷到C:\Python27\Lib\site-packages下

录制http://y.duowan.com/category/vip 保存为rc python

Python下运行

具体测试用例 定位元素 结合 Xpath checker 和 firebug

Element Locators==test object Map? RFT将所有的页面元素编织成树形的地图,通过键值对来进行精确地定位 Selenium则通过元素定位器来获取页面元素。

Element Locators id = id id locators 指定HTML中唯一的id元素 name = name name locators指定HTML中相同的name元素中的第一个元素 identifier = id identifier locators首先查找HTML中是否存在该id的元素,若不存在,则查找第一个该name的元素

Element Locators dom = JavaScriptExpression dom locator 用JavaScript 表达式来定位HTML 中的元素,注意必须要以"document"开头 例如: dom=document.forms['myForm'].myDropdown dom=document.images[56]

Element Locators xpath=xpathExpression xpath locator 用XPath 表达式来定位HTML 中的元素,必须注意要以"//"开头 例如: xpath=//img[@alt='The image alt text'] xpath=//table[@id='table1']//tr[4]/td[2]

Element Locators link=textPattern link locator 用link 来选择HTML 中的连接或锚元素 例如: link=The link text 在没有locator 前序的情况下如果以"document."开头,则默认是使用dom locator,如果是以"//"开头,则默认使用xpath locator,其余情况均认作identifier locator

Element Locators-xpath XPath 使用路径表达式在 XML 文档中进行导航 XPath 是一门在 XML 文档中查找信息的语言 XPath 包含一个标准函数库 XPath 是 XSLT 中的主要元素 XPath 是一个 W3C 标准

Element Locators-xpath nodename :选取此节点的所有子节点 / :从根节点选取(绝对路径) // :从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置 . :选取当前节点 .. :选取当前节点的父节点 @ :选取属性

Element Locators-xpath <?xml version="1.0" encoding="ISO-8859-1"?> <tools> <tool name=“RFT”> <use name=“function test”> <free>no!</free> </use> <free>no</free> </tool> <tool name=“loadrunner”> <use name=“performance test”>

Element Locators-xpath <tool name=“selenium”> <use name=“function tester”> <free>yes!</free> </use> <free>yes</free> </tool> <tool id=“jmeter”> <use name=“performance test”></use> <\tool> </tools>

Element Locators-xpath 选出所有的tools所有的子元素 /tools/* 选出文件中的所有元素 //* 选出所有的free元素 //free 注意:这里查找的free元素包括tool和use的子元素

Element Locators-xpath 选出tool下的free元素 //tools/tool/free 选出tools下的第一个tool元素 //tools/tool[1] 选出tools下的最后一个tool元素 //tools/tool[last()] 选出free为no的所有的tool元素 //tools/tool[free=no]

Element Locators-xpath 选出所有含有name属性的tool //tool[@name] 选出name属性为selenium的tool //tool[@name=‘selenium’]

Firebug+xpath checker 启动Firefox工具附加组件

Firebug+xpath checker 启动附加组件后点击获取附件组件,输入firebug回车,选中firebug后点击天机制Firefox。同样的方法添加xpath checker

Firebug+xpath checker 如右图打开firebug或者直接点击F12打开firebug

Firebug+xpath checker 如下图点击按钮后鼠标置于页面处,可迅速定位到页面元素对应的代码

Firebug+xpath checker 右键菜单中打开View Xpath

Firebug+xpath checker 如右图所示可以根据firebug中的定位后的代码写出对应页面元素的xpath,然后在xpath checker中进行检查,若xpath正确则返回对应的页面元素