selenium常用操作

本文详细介绍了Selenium的使用,包括Selenium IDE界面、元素定位方法、Web UI元素操作、浏览器控制、对话框处理、页面滚动等。特别讨论了close()和quit()的区别,以及各种元素定位技术如By.id()、By.name()、XPath等,并提供了相应的Java代码示例。
摘要由CSDN通过智能技术生成

selenium文档

Selenium IDE界面说明:

1.文件:创建、打开和保存测试案例和测试案例集;编辑:复制、粘贴、删除、撤销和选择测试案例中的所有命令;Options : 用于设置seleniunm IDE

2. 用来填写被测网站的地址

3. 速度控制:控制案例的运行速度

4. 运行所有:运行一个测试案例集中的所有案例

5. 运行:运行当前选定的测试案例

6. 暂停/恢复:暂停和恢复测试案例执行

7. 单步:可以运行一个案例中的一行命令

8. 录制:点击之后,开始记录你对浏览器的操作

9. 案例集列表

10. 测试脚本;table标签:用表格形式展现命令及参数;source标签:用原始方式展现,默认是HTML语言格式,也可以用其他语言展示

11. 查看脚本运行通过/失败的个数

12. 当选中前命令对应参数

13. 日志:当你运行测试时,错误和信息将会自定显示;参考:当在表格中输入和编辑selenese命令时,面板中会显示对应的参考文档;UI元素:参考帮助菜单中的;Rollup:暂无

selenium中close和quit的区别

         close:表示关闭当前页面(窗口)

         quit:表示退出浏览器

元素定位方法:

定位方法

Java语言实现实例

id 定位

driver.findElement(By.id(“id的值”));

name 定位

diver.findElement(By.name(“name的值”));

链接的全部文字定位

driver.findElement(By.linkText(“链接的全部文字”));

链接的部分文字定位

driver.findElement(By.partialLinkText(“链接的部分文字”));

css 方式定位

driver.findElement(By.cssSelector(“css表达式”));

xpath 方式定位

driver.findElement(By.xpath(“xpath表达式”));

Class 名称定位

driver.findElement(By.className(“class属性”));

TagName 标签名称定位

driver.findElement(By.tagName(“标签名称”));

Jquery方式

Js.executeScript(“return jQuery.find(“jquery表达式”)”)

1.通过ID查找元素:By.id()

  以百度主页为例:搜索框的HTML示例代码如下,它的ID为kw

<input type="text"class="s_ipt" name="wd" id="kw"maxlength="100" autocomplete="off">

  “百度一下”搜索按钮元素的HTML示例代码如下,它的ID为su

<input type="submit"value="百度一下"id="su" class="btn self-btn bg s_btn">

 selenium/webdriver中通过ID查找元素的java实例代码:

 Webdriver driver = new FirefoxDriver();

 driver.get(“https://www.baidu.com/”);

 

 WebElement searchBox = driver.findElement(By.id(“kw”));

 searchBox.sendKeys(“小坦克 博客园”);

 WebElement searchButton = driver.findElement(By.id(“su”));

  searchButton.submit();

 

 driver.close();

2. 通过Name查找元素:By.name()

以豆瓣网的主页搜索框为例, 其搜索框的HTML代码如下,  它name是: q

<input type="text" maxlength="60"size="12" placeholder="书籍、电影、音乐、小组、小站、成员" name="q" autocomplete="off">

  WebDriver中通过name查找豆瓣主页上的搜索框的Java代码如下:

WebDriver driver  = newFirefoxDriver();

 driver.get("https://www.douban.com/");

 

 WebElement searchBox = driver.findElement(By.name("q"));

 searchBox.sendKeys("小坦克");

 searchBox.submit();

3. 通过TagName查找元素: By.tagName()

通过tagName来搜索元素的时候,会返回多个元素. 因此需要使用findElements()

   WebDriver driver  = newFirefoxDriver();

   driver.get("http://www.cnblogs.com");

 

   List<WebElement> buttons =driver.findElements(By.tagName("div"));

   System.out.println("Button:" + buttons.size());

注意:  如果使用tagName,  要注意很多HTML元素的tagName是相同的,

 

比如单选框,复选框, 文本框,密码框.这些元素标签都是input.  此时单靠tagName无法精确获取我们想要的元素, 还需要结合type属性,才能过滤出我们要的元素

   WebDriver driver  = newFirefoxDriver();

   driver.get("http://www.cnblogs.com");

        

   List<WebElement> buttons = driver.findElements(By.tagName("input"));

   for (WebElement webElement : buttons) {

        if (webElement.getAttribute("type").equals("text")){

            System.out.println("input text is :" + webElement.getText());

        }

    }

3. 通过ClassName 查找元素 By.className

   以淘宝网的主页搜索为例, 其搜索框的HTML代码如下:   class="search-combobox-inpu

t"

<input autocomplete="off" autofocus="true"accesskey="s" aria-label="请输入搜索文字" name="q" id="q"class="search-combobox-input" aria-haspopup="true"aria-combobox="list"

role="combobox" x-webkit-grammar="builtin:translate"tabindex="0">

 

   WebDriver driver  = new FirefoxDriver();

   driver.get("http://www.taobao.com");

   Thread.sleep(15000);

   WebElement searchBox =driver.findElem

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值