Selenium经典教程
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
:允许 针对规模庞大的测试案例集或者 需要在不同环境中运行的测试案例集进行
扩展。
2019/4/25
4/25/2019
不能处理一下事件: ) 本机键盘和鼠标事件 ) 同源策略()
) 弹出框,对话框(基本身份认证,自签名 的证书和文件上传下载)
有简洁的,和对象,更好的抽象。且 支持多中操作系统,多语言,多浏览器。
元素定位
在高级的水平下,尽可能使用浏览器的原 生的能力。在那些没有原生的支持的浏览 器,我们提供自己的实现方式。但是三个 有一定的区别。
< "" "" > < "" "" > <20>19/4/2(5(""));
4/25/2019
元素定位
使用 您可以执行任意找到一个元素,只要你返回一个元素,它会自动转换到一个
4/25/2019
定位元素
这里的指的是中的元素,在实际使用 过程中,我们也会发现很多元素含有相同 的名。
通过 定位元素例子:
< ""><><><> < ""><><><>
2019/4/25
4/25/2019
元素定位
的元素
用 定位元素的例子:
< "..."><> ((""));
2019/4/25
4/25/2019
的优势
测试直接在浏览器中运行,就像真实用户 所做的一样。 测试可以在 、 和 上的 、 和 中运行。其他测试工具都不能覆盖如此多 的平台。使用 和在浏览器中运行测试还有 很多其他好处。下面是主要的两大好处: 通过编写模仿用户操作的 测试脚本,可以 从终端用户的角度来测试应用程序。通过 在不同浏览器中测试,更容易发现浏览器 的不兼容性。 的核心,也称 ,是用 编写 的201。9/4/2这5 使得测试脚本可以在受支持的浏览
同时进行了架构的调整和升级:
(也就是说合并了这两个项目)
2019/4/25
4/25/2019
的一个小例子
访问的一个例子: ;
; ;
{
([] ) {
();
("");
();wk.baidu.com
();
}
}
2019/4/25
4/25/2019
定位元素
可以通过实例来定位元素,任何语言库都含有“ ”和“ ”的方法。第一个方 法返回一个或者抛出异常。后者返回所有的列表,或者空列表。
4/25/2019
支持的浏览器
2019/4/25
4/25/2019
的组件
:一个插件,可以录制用户的基本操作, 生成测试用例。随后可以运行这些测试用
例在浏览器里回放,可将测试用例转换为
其他语言的自动化脚本。
() :支持
多种平台(,,)和多种浏览器(,,,),可
以用多种语言(,,,,,)编写测试用例。
标签操作
遍历标签 (("")); <> (("")); ( : ) { ((" : ", (""))); ();}
选择某一个选项: (((""))); (); ("");
2019/4/25
4/25/2019
(("")); ":\\\\\\\"; ();
和的切换
和之间的切换 一些应用程序有许多或多个。 支持使用“”的方法实现的窗口之间切
换。 ()(""); 所有对的调用都会指向特定的窗口,但是我们怎么知道窗口的名字呢?
我们可以查看代码和打开他的链接:
< "" ""> <> 另外,还可以通过“ ”去调用“()()”, 通过这个,我们就遍历来找到所有打开的窗口:
可以进行统一,取消,读取提示内容,后 则进入到提示,这个同样使用,,。
2019/4/25
4/25/2019
一些浏览器的自身操作
:
之前我们就可以通过方法来打开一个网页, 像我们所看到的,同样还有许多小接口, 就是其中一个小接口:
()(""); ()和()其实作用是一样的,但是还可以进行
浏览器的前进后退操作: ()(); 2019/4/25
4/25/2019
鼠标动作的操作
在前面的例子中已经出现过鼠标的操作了, 就是拖拽,但是鼠标动作有很多,比如双 击,单击右键等。操作类在中是的类,具 体的实现见例子:
(); (); 这个时候可以调用来进行各种操作。 ()双击左键 具201体9/4/2的5 例子可以参考的
上传文件
2019/4/25
4/25/2019
在中 ((""))();
提交
不在中
(); 建议使用第一种方式,出错的几率比较小,
并且比较直观
2019/4/25
4/25/2019
(("")); (("")); ( ())(, )();
拖拽操作
2019/4/25
4/25/2019
( : ()) { ()(); }
2019/4/25
4/25/2019
和的切换
同样支持: ()("");同样可以使用他访问,找的第一个中
叫做的:
()("");
2019/4/25
4/25/2019
弹出框
从开始,已经支持对弹出框的获取 ()(); 这个方法会返回当前被打开打警告框,你
2019/4/25
4/25/2019
的实例:
2019/4/25
4/25/2019
实例:
2019/4/25
4/25/2019
实例:
2019/4/25
4/25/2019
基于的例子
2019/4/25
4/25/2019
WebDriver实例2:
2019/4/25
4/25/2019
2019/4/25
4/25/2019
例子:
< "" ""> ((""));
例子: < ""><> ((""));
2019/4/25
4/25/2019
元素定位
元素定位
从名字上看,这是根据来定位元素。
例子: < ""> < ""><> < " "><> <> 2019/4/25 ((" ")); 4/25/2019
对象。 例子: 的页面加载一个简单的例子: () (())(" $('')[]"); 寻求所有的页面上的元素: <> ((""));<> (<>) (())( " [], []; ( ; < ; ){" "(([](''))); } ;", );
2019/4/25
4/25/2019
4/25/2019
中调用
有一些在页面的东西可能运用的不好解决, 这个时候我们可以调用来解析。所有的的 实现类都继承了的接口。
下面一个运行的例子: (); “('')”; ()(); 这个例子就会执行。 4/25/2因012901为9/4/2针5 对前端,比较流行,所以我们希望
获取和定位元素我们调用“”方法。下面具体解释下“”方法:
这是一个极为有效定位元素的方法。普遍的现状是工程师在实际编写页面时 很少写或者自动生产一个,这些都是需要避免的。对于一个页面来说,比自 动生产的更好。
通过定位元素的例子: < "">...<> ((""));
2019/4/25
经典教程
教程
的简介
是一个用于应用程序测试的工具。测试直接运行在浏 览器中,就像真正的用户在操作一样。支持的浏览器 包括、 、 等。这个工具的主要功能包括:测试与浏览 器的兼容性——测试你的应用程序看是否能够很好得 工作在不同浏览器和操作系统之上。测试系统功能— —创建衰退测试检验软件功能和用户需求。支持自动 录制动作和自动生成。、、等不同语言的测试脚本。 是专门为应用程序编写的一个验收测试工具。
中使用
假如设定包的路径为,则程序如下: ; ( ()); ((())){ ; } (); “”此处输入你要查找的的代码
2019/4/25
4/25/2这019 种方式其实就是读取库的内容,然后全
的设计模式
针对小型的页面来做自动化的话,可以很 简单的去编写测试用例,但是当涉及的页 面比较多的话就会有很多的代码要写,如 果找个一元素无限制的被复用,对于程序 员来讲是一件很恼火的事情,所以在编写 测试脚本的时候我们一般会借助一些设计 模式。自身带有一个的模式,下面看一个 发邮件的例子,可以算是一个比较简单的 的例子。