Java-selenium
public class chrometest {
public static void main(String[] args) throws InterruptedException {
String chromepath="path";
System.setProperty("webdriver.chrome.driver", chromepath);
//初始化一个chrome浏览器实例,实例名称叫driver
WebDriver driver = new ChromeDriver();
//最大化窗口
driver.manage().window().maximize();
//get()打开一个站点
driver.get("https://music.163.com/");
//切换到第二个tab-li[2]
WebElement tagele1 = driver.findElement(By.xpath("//*[@id=\"g_nav2\"]/div/ul/li[2]/a"));
tagele1.click();
//切换iframe
WebElement frame = driver.findElement(By.xpath("//*[@id=\"g_iframe\"]"));
driver.switchTo().frame(frame);
//点击播放按钮
WebElement play_button = driver.findElement(By.xpath("//*[@id=\"toplist\"]/div[2]/div/div[1]/div/div[2]/div/div[3]/a[1]"));
play_button.click();
//打印当前url
System.out.println("当前.....打开页面是: "+ driver.getCurrentUrl());
//切换
//----------------------
driver.switchTo().defaultContent();
//----------------------
Thread.sleep(3000);
WebElement tagele0 = driver.findElement(By.xpath("//*[@id=\"g_nav2\"]/div/ul/li[1]/a"));
tagele0.click();
System.out.println("当前.....打开页面是: "+ driver.getCurrentUrl());
Thread.sleep(3000);
Actions action = new Actions(driver);
action.moveToElement(driver.findElement(By.xpath("//*[@class=\"link s-fc3\"]"))).perform();
Thread.sleep(3000);
WebElement ele2 = driver.findElement(By.xpath("//*[em=\"QQ登录\"]"));
ele2.click();
Thread.sleep(3000);
//----------------------
String title = "安全登录";
String s = null;
Set<String> handles = driver.getWindowHandles();
for (String t : handles) {
System.out.println("switchWindow: "+t);
if (driver.switchTo().window(t).getTitle().contains(title)) {
s = t;
}
}
driver.switchTo().window(s);
System.out.println("target_window_handler:"+s);
WebElement qframe = driver.findElement(By.xpath("//*[@id=\"ptlogin_iframe\"]"));
driver.switchTo().frame(qframe);
//点击意见反馈
WebElement qplay_button = driver.findElement(By.xpath("//*[@id=\"feedback_qlogin\"]"));
qplay_button.click();
Thread.sleep(8000);
System.out.println("当前.....打开页面是: "+ driver.getCurrentUrl());
driver.quit();
}
}
Java-selenium的更多相关文章
- java selenium (五) 元素定位大全
页面元素定位是自动化中最重要的事情, selenium Webdriver 提供了很多种元素定位的方法. 测试人员应该熟练掌握各种定位方法. 使用最简单,最稳定的定位方法. 阅读目录 自动化测试步骤 ...
- java+Selenium+TestNg搭建自动化测试架构(1)实现代码和数据的分离
1.主要介绍介绍Java+Selenium+POM的自动化测试框架的搭建,第一个首先实现代码和账号URL等信息的分离.第二点支持跨浏览器,通过读取配置文件的方式实现. 1)将账号URL等信息添加在pr ...
- Electorn(桌面应用)自动化测试之Java+selenium实战例子
基于electorn的桌面应用,网上相关资料较少.所有记录一下.使用java+selenium+testng对该类型应用的自动化测试方法. 代码样例 package com.contract.web. ...
- 【java+selenium】网易云音乐刷累计听歌数
背景应该是在去年的时候,刷知乎看到一个问题,大概是说怎么刷网易云音乐个人累计听歌数,然后有一个高赞回答,贴了一段js代码,直接在浏览器console执行就可以了.当时试了下,直接一下子刷了有好几万.悲 ...
- java+selenium的helloworld
在学校上测试课程,接触到自动化管理工具,在加上助教工作需要改作业,所以想着学下selenium这一强大的web自动化工具. 1.lenium官网:http://www.seleniumhq.org/ ...
- java+selenium自动化实践
git+java+selenium+testng +maven+idea 1.git之代码维护(下载.分支切换.上传) 下载命令 "git clone git@github.com:Luna ...
- java selenium webdriver处理JS操作窗口滚动条
未经作者允许,禁止转载!!! java selenium webdriver处理JS操作窗口滚动条 java selenium webdriver处理JS操作窗口滚动条 import org.open ...
- Java+Selenium 3.x 实现Web自动化 - 1.自动化准备
(一)自动化准备 说明:本文主要记录了基于公司现有项目(一个电子商务平台),从0开始实现UI自动化的历程.从准备阶段,部分内容直接省略了基础知识,一切以最终做成自动化项目为目标,难免会有晦涩之处.文章 ...
- Java+selenium自动化测试基础
Java+selenium maven配置 maven的配置,但还需要建立maven的本地库,修改apach-maven的setting.xml http://www.cnblogs.com/haoa ...
- Java+selenium+Firefox/ IE/ Chrome主流浏览器自动化环境搭建
一.java+selenium+firefox 1.环境准备:JDK1.8 2.安装firefox浏览器v59 3.下载驱动:https://github.com/mozilla/geckodrive ...
随机推荐
- json::rapidjson工具
源码地址: https://github.com/Tencent/rapidjson 可跨平台使用.将 rapidjson-master\include\rapidjson 中的 rapidjson ...
- phpfpm的原理是什么?
php-fpm是一种master(主)/worker(子)多进程架构,与nginx设计风格有点类似.master进程主要负责CGI及PHP环境初始化.事件监听.子进程状态等等,worker进程负责处理 ...
- ESP8266开发之旅 基础篇① 走进ESP8266的世界
授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...
- 打python&adb组合拳,实现微信读书永久免费读
用过“微信读书”的朋友都知道,如果我们想阅读全本的付费书籍,除了购买整本(使用书币)外,还可以使用无限卡.可无论是购买全书还是无限卡,归根结底都是要花银子的. 除此之外,还有一种方式——用阅读时长兑换 ...
- java 连续数字数组分组
问题: 1. 将Lis list = Arrays.asList(1,2,3,5,8,9,10), 拆分成 [1,2,3] .[5]. [8,9,10] , 2. 再传入一个数字 9, 将匹配数字9的 ...
- 对于谷歌开源的TensorFlow Object Detection API视频物体识别系统实现教程
本教程针对Windows10实现谷歌近期公布的TensorFlow Object Detection API视频物体识别系统,其他平台也可借鉴. 本教程将网络上相关资料筛选整合(文末附上参考资料链接) ...
- Java基础(二十九)Java IO(6)对象序列化(Object Serialization)
参考之前整理过的Java序列化与反序列化:https://www.cnblogs.com/BigJunOba/p/9127414.html 使用对象输入输出流可以实现对象序列化与反序列化,可以直接存取 ...
- MongoDB系列---用户及权限管理02
MongoDB-——Privilege 学习大纲: 1.用户权限管理 2.用户操作 知识回顾: 本系列上一篇博文我们讲述了如何搭建环境以及配置我们的MongoDB,通过搭建环境后我们又学习了如何通过 ...
- SpringCloud之Eureka服务注册与发现(一)
一 Eureka的基本架构 Spring Cloud 封装了 Netflix 公司开发的 Eureka 模块来实现服务注册和发现(请对比Zookeeper). Eureka 采用了 C-S 的设计架构 ...
- Flask:项目的准备工作
1.创建虚拟环境 (1)打开Windows命令窗口,输入命令(先确保电脑上安装了Anaconda): conda create -n FlaskPath python=3.5.2 FlaskPath为 ...