本文基于Java语言,依托于Eclipse工具,使用Selenium框架,主要介绍在Selenium中,如何操作Web页面中的各种元素。

Eclipse 搭建

1.1、Eclipse 配置

1.2、引入依赖包

修改pom.xml文件

在dependencys节点下,添加如下内容,保存即可自动下载

org.seleniumhq.selenium

selenium-java

2.43.1

org.testng

testng

6.9.4

test

org.apache.poi

poi

3.9

访问浏览器

2.1、火狐默认路径:

WebDriver diver = new FirefoxDriver();

2.2、其他浏览器(非默认路径)

谷歌

IE

火狐

访问路径

3.1、访问一个具体的url

调用方法一:driver.get(url);

方法二:driver.navigate().to(url);

浏览器导航

driver.navigate().back();//向前

driver.navigate().forward ();//向后

driver.navigate().refresh();//当前页刷新

关闭浏览器

//关闭当前页面

driver.close();

//关闭所有页面

driver.quit();

页面元素的操作

6.1、输入框

备注:

//找到输入框元素:

WebElement element = driver.findElement(By.id("user"));

//将输入框清空:

element.clear();

//在输入框中输入内容:

element.sendKeys(“test”);

//获取输入框的文本内容:

element.getAttribute("value");

6.2、超链接

6.3、下拉选择框(Select)

对下拉框进行操作时首先要定位到这个下拉框,new 一个Selcet对象,然后对它进行操作

//找到下拉选择框的元素:

Select select = new Select(driver.findElement(By.name("select")));

//选择对应的选择项:

select.selectByVisibleText(“未提交”);

//或

select.selectByValue(“opel”);

//或者通过index选择

select.selectByIndex(1);

//不选择对应的选择项:

select.deselectAll();

select.deselectByValue(“MA_ID_001”);

select.deselectByVisibleText(“mediaAgencyA”);

//或者获取选择项的值:

select.getAllSelectedOptions();//多选列表,list循环可获取到对应的值

select.getFirstSelectedOption().getText();//单选列表直接获取值

6.4、单选项(Radio Button)

//找到单选框元素:

WebElement bookMode =driver.findElement(By.id("BookMode"));

//选择某个单选项:

bookMode.click();

//清空某个单选项:

bookMode.clear();

//判断某个单选项是否已经被选择:

bookMode.isSelected();

6.5、多选项(checkbox)

//多选项的操作和单选的差不多:

WebElement checkbox =driver.findElement(By.id("myCheckbox."));

checkbox.click();

checkbox.clear();

checkbox.isSelected();

checkbox.isEnabled();

6.6、按钮(button)

//找到按钮元素:

WebElement saveButton = driver.findElement(By.id("save"));

//点击按钮:

saveButton.click();

//判断按钮是否enable:

saveButton.isEnabled ();

6.6、左右选择框

也就是左边是可供选择项,选择后移动到右边的框中,反之亦然。

例如:

Select lang = new Select(driver.findElement(By.id("languages")));

lang.selectByVisibleText(“English”);

WebElement addLanguage =driver.findElement(By.id("addButton"));

addLanguage.click();

6.7、弹出对话框(Popup dialogs)

Alert alert = driver.switchTo().alert();

alert.accept();

alert.dismiss();

alert.getText();

6.8、表单(Form)

Form中的元素的操作和其它的元素操作一样,对元素操作完成后对表单的提交:

WebElement approve = driver.findElement(By.id("approve"));

approve.click();

//或

approve.submit();//只适合于表单的提交

6.9、上传文件 (Upload File)

//上传文件的元素操作:

WebElement adFileUpload = driver.findElement(By.id("WAP-upload"));

String filePath = "C:\test\\uploadfile\\media_ads\\test.jpg";

adFileUpload.sendKeys(filePath);

//拖拉(Drag andDrop)

WebElement element =driver.findElement(By.name("source"));

WebElement target = driver.findElement(By.name("target"));

(new Actions(driver)).dragAndDrop(element, target).perform();

6.9鼠标悬停(Mouse MoveOn)

Actions builder = new Actions(driver)

builder.moveToElement(driver.findElement(locator)).perform();

selenium拖动元素java_【自动化测试】Java+Selenium操作页面元素(合集)相关推荐

  1. 操作页面元素WebElement—Selenium自动化测试指南(4)

    5.5.7  XPath(xPathToFind) 如果以上查找方法都无法定位到指定对象,那么可以按XPath进行查找.例如,百度首页有文本框,如图5-35所示. 图5-35  百度搜索文本框 其HT ...

  2. 利用 jQuery 操作页面元素的方法,实现电商网站购物车页面商品数量的增加和减少操作,要求单项价格和总价随着数量的改变而改变

    查看本章节 查看作业目录 需求说明: 利用 jQuery 操作页面元素的方法,实现电商网站购物车页面商品数量的增加和减少操作,要求单项价格和总价随着数量的改变而改变 当用户单击"+" ...

  3. jQuery操作页面元素属性和内容

    操作页面元素的属性 A $("#bu1").click(function(){ //获得元素对象 var tex=$("#inp1"); //获得元素对象的属性 ...

  4. Java基础能力精选文章合集200篇

    小编根据知识图谱整理了CSDN技术大咖的优质文章200篇,帮助Java工程提升基础能力,实现系统化持续学习! Java工程师基础能力文章200篇大合集包含: [JavaSE]30篇.[Lambda表达 ...

  5. autocad完全应用指南_2020版AutoCAD软件+操作教程+插件合集,限时3天领

    如今CAD在建筑行业内非常火爆啊,它有自己独特的图库.模型素材等,需要的时候直接搜索所需要的内容,非常方便,深受广大建筑朋友们的喜欢,是学习CAD朋友们的超大福利!! 这份CAD软件+操作教程+上百的 ...

  6. IDEA(Java Web 开发) 实时代码模板合集

    IDEA(Java Web 开发) 实时代码模板合集 简述 本文主要记录和收集使用IDEA开发JavaWeb项目时,常用的自定义实时模板.有关IDEA自定义模板的使用,请参考 IntelliJ IDE ...

  7. selenium拖动元素java_使用Java在Selenium WebDriver中聚焦元素的正确方法

    下面的代码 – element.sendKeys(""); 尝试找到一个输入标签框来输入一些信息,而 新操作(驱动程序).moveToElement(元素).perform(); ...

  8. Selenium操作页面元素

    转自:http://blog.sina.com.cn/s/blog_6966650401012a7q.html 一.输入框(text field or textarea) //找到输入框元素: Web ...

  9. selenium 3 ie java_【Java+selenium3】 Firefox/ IE/ Chrome主流瀏覽器自動化環境搭建(一)

    一.java+selenium+firefox 1.環境准備:JDK1.8 2.安裝firefox瀏覽器v59 3.下載驅動:https://github.com/mozilla/geckodrive ...

最新文章

  1. Redis的内存淘汰策略问题
  2. Ubuntu9.04 Update software Sources
  3. 具有Java Kickstart的MongoDB
  4. 如何用golang获取linux上文件的访问/创建/修改时间
  5. 王者归来!华为P40 Pro渲染图曝光:后置矩阵徕卡五摄模组
  6. SpringCloud工作笔记058---springBoot项目maven命令打包部署
  7. 基础 - 字符读取函数scanf、getchar、gets、cin(清空缓存区解决单字符回车问题)
  8. Android保存之SharedPreferences
  9. PLC编程软件等工具打包下载1.0【好用绿色三菱plc编程软件】
  10. day53_电力系统_ztree动态生成权限控制
  11. 零跑汽车冲刺港股:年营收31亿 去年曾募资88亿
  12. YOLO基础教程(三):视频处理
  13. Linux 应用调试神器- ASan
  14. CSS实现鼠标经过div时改变背景图片
  15. 干货分享 | 全文 40000 字,最强(全) Matplotlib 实操指南
  16. ppt矩形里面的图片怎么放大缩小_如何使用PPT调节图片的大小
  17. Android JNI开发入门与实战
  18. 游戏美术设计外包哪家比较好
  19. 采用网闸隔离的内外网如何进行数据的即时交互?
  20. 解决Office 2010打开文件提示“文件已损坏,无法打开。”的问题

热门文章

  1. Python3.4 Django MySQL MySQL-python 安装不成功解决办法 Unable to find vcvarsall.bat 错误
  2. Linux驱动设计ioctl函数的cmd参数不能为2
  3. 基于ARM+DSP进行应用开发-经验共享
  4. halcon trainf_ocr_class_svm 训练OCR分类器
  5. 学习笔记(04):Python网络编程并发编程-什么是socket
  6. spss练习数据_SPSS篇——如何在成千上百万个数据中标识重复个案
  7. 如何在vsc上下载php扩展包,正确的 Composer 扩展包安装方法
  8. Filter案例之登录验证
  9. vs文件上传失败--超过最大字符限制
  10. VueJS定义组件规则