第三章 Webdriver API简介

论坛 期权论坛     
选择匿名的用户   2021-6-2 16:40   306   0
<p>      Selenium 2.0主要的特性就是与WebDriverAPI的集成。WebDriver旨在提供一个更简单,更简洁的编程接口以及解决一些Selenium-RC API的限制。Selenium-Webdriver更好的支持页面本身不重新加载而页面的元素改变的动态网页。WebDriver的目标是提供一个良好设计的面向对象的API,提供了对于现代先进web应用程序测试问题的改进支持<strong>。</strong></p>
<h2><span style="font-family:Cambria; font-size:24px">3.1 Webdriver API</span></h2>
<p>       Web应用程序的测试主要是基于调用Webdriver API来模拟用户操作,然后判断操作结果是否与预期的一致,从而达到自动化测试的目的。所以熟悉Webdriver的API的使用很重要,也是我们在做自动化测试的先决条件。</p>
<p>Webdriver API网上有官方文档,不过由于种种原因吧,官网不太容易打开。所以我们可以在百度中去搜索相关的文档,结果也非常多。不同语言的API有点儿不太一样,由于我们采用的是Python作为脚本语言,所以建议看出Python版的,推荐以下两个网页:</p>
<p align="left">(1)selenium_webdriver(python)第一版:<a href="http://wenku.baidu.com/link?url&#61;PDcKQYNL-iVRlahMunWoY1BDMw5vyUvv-AFCtC6eUCfG0R5XdC0SnBCHdp742uY6riA25FdBfaUtL-N2uZiXj6PXxIyRGcI-bV1QEYSZHGW" rel="noopener noreferrer" target="_blank"><span style="font-size:14px; color:#0000ff">http://wenku.baidu.com/link?url&#61;PDcKQYNL-iVRlahMunWoY1BDMw5vyUvv-AFCtC6eUCfG0R5XdC0SnBCHdp742uY6riA25FdBfaUtL-N2uZiXj6PXxIyRGcI-bV1QEYSZHGW</span></a></p>
<p align="left">(2)虫师的翻译:<a href="http://www.cnblogs.com/fnng/archive/2013/06/16/3138283.html" rel="noopener noreferrer" target="_blank"><span style="color:#0000ff">http://www.cnblogs.com/fnng/archive/2013/06/16/3138283.html</span></a></p>
<p align="left">这两篇文档刚好是一个人的,我看了一下写的比较详细,大家就去自行学习一下吧。</p>
<p align="left">关于WebdriverAPI的一点儿说明:</p>
<p align="left">  API只是一些儿封闭的方法,大致浏览一下,知道有哪儿些API,完成什么操作即可,没有必要花很多时间去学习,边用边学。</p>
<p align="left">  API的学习要灵活,最好把同类的操作放到一起比较一下。因为在编写测试用例的过程中,不仅仅只有一种方法可以达到预期的结果。</p>
<p align="left">  要会使用Eclipse的联想功能。在写测试用例的时候,如果一时想不起来用什么方法了,可以利用联想功能进行查询。</p>
<p align="left">本章我们就不详细讲解这些儿API的使用方法了,重点将放到页面元素的定位及检查点的设置,这些儿是体现一个自动化测试工程师水平的重点。</p>
<h2><span style="font-family:Cambria; font-size:24px">3.2 </span>页面元素定位</h2>
<p>       自动化测试是模拟用户对页面元素进行操作的,所以在操作之前,需要先定位到要操作的页面元素。如果页面元素都定位不到,其他的操作将无从谈起。而对页面元素定位技巧,随着经验的增加,将会越来越精准。而在此,我们将从基础谈起,然后再逐步加深!</p>
<h3><span style="font-family:Calibri; font-size:24px">3.2.1 <strong>WebElement</strong></span><strong>对象提供的各种定位元素策略</strong></h3>
<p>下面我们先来讲解一下<strong><span style="color:#333333">WebElement</span><span style="color:#333333">对象提供的各种常用的定位元素策略:</span></strong></p>
<p>  通过<span style="font-family:Calibri">ID</span>定位元素:</p>
<p align="left">ID:driver.find_element_by_id(&lt;elementID&gt;)</p>
<p align="left"><span style="font-size:14px">示例:当一个页面元素如下,明显包含id属性,而且属性值是固定的时候,可以使用这个定位方法。</span></p>
<p align="left"><span style="font-size:14px">&lt;div <span style="color:red">id</span><span style="color:red">&#61;&#34;</span><span style="color:red">nav</span><span style="color:red">&#34;</span> class&#61;&#34;m-subnav&#34;&gt;…..&lt;/div&gt;</span></p>
<p align="left"><span style="font-family:宋体; font-size:14px"> </span></p>
<p align="left"><em>Ex: driver. find_element_by_id(“nav”)</em></p>
<p align="left"><span style="font-size:14px"> </span></p>
<p align="left">  通过<span style="font-family:Calibri">Name</span>定位元素:</p>
<p align="left">Name:driver.find_element_by_name(&lt;elementName&gt;)</p>
<p align="left"><span style="font-size:14px">示例:当一个页面元素如下,明显包含name属性,而且属性值是固定的时候,可以使用这个定位方法。</span></p>
<p align="left"><span style="font-size:14px">&lt;inputtype&#61;&#34;text&#34; wx-validator-placeholder&#61;&#34;用户名/手机号/邮箱&#34; wx-validator-username-required&#61;&#34;*请输入账号&#34; wx-validator-rule&#61;&#34;required&#34; <span style="color:red">name&#61;&#34;username&#34;</span> class&#61;&#34;foc&#34;placeholder&#61;&#34;用户名/
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP