java控制浏览器,java控制夜神访问浏览器

java控制夜神访问浏览器

1、环境搭建java+eclipse+appium

参考文档:https://www.jianshu.com/p/1b959e0baae2

2、安装夜神,解决adb无法控制夜神问题

参考文档:https://i.cnblogs.com/posts/edit;postId=14331628

3、利用appium查找页面元素

--》打开浏览器

--》查看设备名称

adb devices

--》 查看系统版本

adb shell getprop ro.build.version.release

--》 查看 App 名称和 App 启动项名称

adb shell dumpsys window w | findstr \/ | findstr name=

{

"deviceName": "127.0.0.1:62001",

"platformName": "Android",

"platformVersion": "5.1.1",

"appPackage": "com.android.browser",

"appActivity": "com.android.browser.BrowserActivity",

"noReset": true

}

4、编写代码控制

public class TestNox01 {

//AppiumDriver含义,建立于Appium的连接

AppiumDriver driver;

@Test

public void f() {

}

@SuppressWarnings("rawtypes")

@BeforeClass

public void beforeClass() {

//创建DesiredCapabilities对象

//指定测试设备信息

DesiredCapabilities devices = new DesiredCapabilities();

//使用的移动设备或模拟器的种类,如 iPhone Simulator,iPad Simulator,Android Emulator,Galaxy S4 等

devices.setCapability("deviceName", "127.0.0.1:62001");

// 指定使用哪个移动操作系统平台,如 iOS,Android 或 FirefoxOS

devices.setCapability("platformName","Android");

//不重新安装软件

devices.setCapability("noReset","true");

//指定移动操作系统版本

devices.setCapability("platformVersion","5.1.1");

// 指定 app 程序包名,即被测程序名

devices.setCapability("appPackage","com.android.browser");

devices.setCapability("appActivity","com.android.browser.BrowserActivity");

//每次启动时覆盖session,否则第二次后运行会报错不能新建session

devices.setCapability("sessionOverride", true);

//设置可以输入中文

devices.setCapability("unicodeKeyboard", true);

devices.setCapability("resetKeyboard", true);

//启动 App

try {

driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"),devices);

} catch (MalformedURLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

@Test

public void test01() throws InterruptedException {

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

//查看app类型

Set context = driver.getContextHandles();

System.out.println(context);

//切换框架

driver.context("WEBVIEW_com.android.browser");

//点击搜索框

driver.findElementById("index-kw").click();

//输入搜所内容

driver.findElementById("index-kw").sendKeys("手机测试");

//点击回车

driver.findElementById("index_su").click();

Thread.sleep(2000);

}

@AfterClass

public void afterClass() {

driver.quit();

}

}

java控制夜神访问浏览器 相关文章

Java 基础(方法参数的值传递机制)

方法参数的值传递机制 方法,必须由其所在类或对象调用才有意义。若方法含有参数: 形参:方法声明时的参数 实参:方法调用时实际传给形参的参数值 Java 里方法的参数传递方式只有一种:值传递。即将实际参数值的副本(复制品)传入方法内,而实参本身不受影响

java之 FilterListener

0x01、Filter 什么是filter ?Filter:一个实现了特殊接口(Filter)的Java类. 实现对请求资源(jsp,servlet,html,)的过滤的功能. ?过滤器是一个运行在服务器的程序, 优先于请求资源(Servlet或者jsp,html) 之前执行. 过滤器是javaweb技术中 最为实用 的技术之一.

Java并发包源码学习系列:阻塞队列BlockingQueue及实现原理分析

目录 本篇要点 什么是阻塞队列 阻塞队列提供的方法 阻塞队列的七种实现 TransferQueue和BlockingQueue的区别 1、ArrayBlockingQueue 2、LinkedBlockingQueue 3、PriorityBlockingQueue 4、DelayQueue 5、SynchronousQueue 6、LinkedTransferQueue 7、LinkedB

JavaWeb三大框架基础架构——CRUD的基础功能搭建

@ 目录 介绍 注意 applicationContext.xml mybatis-config.xml web.xml 结束语 介绍 项目前端采用了bootstrap,后端是ssm三大框架 注意 这是项目的基础架构 要注意的几个配置:applicationContext.xml,mybatis.xml,web.xml,pom.xml 其中的pojo代码使用了l

Maven命令下载源码和javadocs

1:Maven命令下载源码和javadocs 当在IDE中使用Maven时如果想要看引用的jar包中类的源码和javadoc需要通过maven命令下载这些源码,然后再进行引入,通过mvn命令能够容易的达到这个目的: mvn dependency:sourcesmvn dependency:resolve -Dclassifier=javadoc

String中的享元模式

Java中将String类定义为由final修饰的(不可改变的),JVM中字符串一般被保存在字符串常量池中,Java会确保一个字符串在常量池中只有一个“复制”,这个字符串常量池在JDK 6.0以前是位于常量池中的,位于永久代;而在JDK 7.0中,JVM将其从永久代拿出来放置于

java之 JSP el jstl

0x01、JSP入门 jsp执行流程: 第一次访问的xxx.jsp时候,服务器收到请求,JspServlet会去查找对应的jsp文件 找到之后,服务器会将这个jsp文件转换成java文件(Servlet) 服务器编译java文件,生成class文件 服务器运行class文件,生成动态的内容 服务器收到内容之后

Java 给Word不同页面设置不同背景

Word文档中,可直接通过【设计】-【页面颜色】页面颜色,通过Java代码可参考如下设置方法: 1. 设置单一颜色背景 doc.getBackground().setType(BackgroundType.Color);doc.getBackground().setColor(Color.PINK); 2. 设置渐变背景 doc.getBackground().setTy

《Java小游戏》:球球大作战

此文转载自:https://blog.csdn.net/pandas_dream/article/details/113086334 目录 游戏规则 主要实现方法 游戏流程展示 1. 开始游戏页面 2. 加载中页面 3. 选择地图页面 4. 自定义昵称页面 5. 运行页面 死亡页面 发展方向 (前面都不感兴趣,快进到)原码 最后

win32 - 将控制台输出重定向到txt文本上

这里需要两个app. parent.cpp #include Windows.h#include stdio.hint main(){ SECURITY_ATTRIBUTES se = {}; se.nLength = sizeof(SECURITY_ATTRIBUTES); se.bInheritHandle = true; se.lpSecurityDescriptor = NULL; HANDLE hFile = CreateFileW(L"test.tx

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java语言可以与Selenium和Appium框架一起使用来进行自动化测试,通过连接到夜神模拟器,可以在模拟器中执行自动化测试脚本。 要连接到夜神模拟器,首先需要确保已经成功安装夜神模拟器和Java开发环境。然后,可以按照以下步骤连接到夜神模拟器: 1. 导入必要的类库:在Java项目中,需要导入Selenium和Appium的Java客户端库,以及用于与夜神模拟器进行交互的adb库。 2. 启动夜神模拟器:使用adb命令启动夜神模拟器,例如通过命令`adb shell am start -n com.junzhu.nemu_vbox86p_64/com.bignox.app.PlayActivity`启动夜神模拟器。 3. 配置Appium连接:创建一个DesiredCapabilities对象,并设置相关的配置参数,例如设置desiredCapabilities.setCapability("platformName", "Android")等。 4. 连接到Appium服务器:创建一个WebDriver对象,通过指定Appium服务器的IP地址和端口号来连接到Appium服务器,例如通过命令`driver = new AndroidDriver<>(new URL("http://127.0.0.1:4723/wd/hub"), desiredCapabilities)`来连接。 5. 执行自动化测试:通过WebDriver对象,可以在夜神模拟器上执行各种操作,例如查找元素、点击按钮、输入文本等。 总结:通过以上步骤,就可以使用Java语言连接到夜神模拟器,并通过Selenium和Appium框架实现自动化测试。连接到夜神模拟器后,可以利用Java语言的强大功能来编写测试脚本,并在夜神模拟器中执行这些脚本,以自动化地完成各种测试任务。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值