Appnium-API-Session
Session
Create New Session
Java:
DesiredCapabilities desiredCapabilities = new DesiredCapabilities();
desiredCapabilities.setCapability(MobileCapabilityType.PLATFORM_VERSION, "10.3");
desiredCapabilities.setCapability(MobileCapabilityType.DEVICE_NAME, "iPhone Simulator");
desiredCapabilities.setCapability(MobileCapabilityType.AUTOMATION_NAME, "XCUITest");
desiredCapabilities.setCapability(MobileCapabilityType.APP, "/path/to/ios/app.zip");
URL url = new URL("http://127.0.0.1:4723/wd/hub");
IOSDriver driver = new IOSDriver(url, desiredCapabilities);
String sessionId = driver.getSessionId().toString();
Python:
desired_caps = desired_caps = {
'platformName': 'Android',
'platformVersion': '7.0',
'deviceName': 'Android Emulator',
'automationName': 'UiAutomator2',
'app': PATH('/path/to/app')
}
self.driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
Description
The server should attempt to create a session that most closely matches the desired and required capabilities.
JSONWP Spec Required capabilities have higher priority than desired capabilities and must be set for the session to be created W3C Spec capabilities.alwaysMatch must be set for session to be created; capabilities.firstMatch must match at least one (the first one to match will be used)
End Session
Java:driver.quit();
Python:self.driver.quit()
Get Session Capabilities
Retrieve the capabilities of the specified session
Java:Map<String, Object> caps = driver.getSessionDetails();
Python:desired_caps = self.driver.desired_capabilities()
Go Back
Navigate backwards in the browser history, if possible (Web context only)
Java:driver.back();
Python:self.driver.back()
Take Screenshot
Take a screenshot of the current viewport/window/page
Java:File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
Python:screenshotBase64 = self.driver.get_screenshot_as_base64()
Get Page Source
Get the current application hierarchy XML (app) or page source (web)
Java:String pageSource = driver.getPageSource();
Python:source = self.driver.page_source
Set Timeouts
Configure the amount of time that a particular type of operation can execute for before they are aborted
Java:driver.manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS);
Python:self.driver.set_page_load_timeout(5000)
Set Implicit Wait Timeout
Set the amount of time the driver should wait when searching for elements
Java:driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
Python:self.driver.implicitly_wait(5000)
Set Script Timeout
Set the amount of time, in milliseconds, that asynchronous scripts executed by execute async are permitted to run before they are aborted (Web context only)
Java:driver.manage().timeouts().setScriptTimeout(30, TimeUnit.SECONDS);
Python:self.driver.set_script_timeout(5000)
Get Orientation
Get the current device/browser orientation
Java:ScreenOrientation orientation = driver.getOrientation();
Python:orientation = self.driver.orientation()
Set Orientation
Set the current device/browser orientation
Java:driver.rotate(ScreenOrientation.LANDSCAPE);
**
Python:**driver.orientation = "LANDSCAPE"
Get Geolocation
Get the current geo location
Java:Location location = driver.location(); // Must be a driver that implements LocationContext
Python:location = self.driver.location()
Set Geolocation
Set the current geo location
Java:driver.setLocation(new Location(49, 123, 10)); // Must be a driver that implements LocationContext
Python:self.driver.set_location(49, 123, 10)
Get available log types
Get the log for a given log type. Log buffer is reset after each request
Java:Set<String> logTypes = driver.manage().logs().getAvailableLogTypes();
Python:log_types = driver.log_types();
Get Logs
Get the log for a given log type. Log buffer is reset after each request
Java:LogEntries logEntries = driver.manage().logs().get("driver");
Python:logs = driver.get_log('driver');
Update Device Settings
Update the current setting on the device
Java:driver.setSetting(Setting.WAIT_FOR_IDLE_TIMEOUT, Duration.ofSeconds(5));
Python:self.driver.update_settings({"sample": "value"}))
Retrieve Device Settings
Retrieve the current settings on the device
Java:Map<String, Object> settings = driver.getSettings();
Python:self.driver.get_settings
Appnium-API-Session的更多相关文章
- Web Api Session开启会话支持
1.WebApi中默认是没有开启Session会话支持的.需要在Global中重写Init方法来指定会话需要支持的类型 //代码如下 public override voi ...
- 购物车Demo,前端使用AngularJS,后端使用ASP.NET Web API(2)--前端,以及前后端Session
原文:购物车Demo,前端使用AngularJS,后端使用ASP.NET Web API(2)--前端,以及前后端Session chsakell分享了前端使用AngularJS,后端使用ASP.NE ...
- laravel 4.2 session
laravel的session简要API Session的API还是比较简单的,大家看看中文文档也大概知道是怎么个意思.但是有那么几个还不太好理解. //session的永久保存(在不过期范围内) S ...
- laravel框架session使用教程
laravel是一款php框架了,在使用laravel时会碰到session使用问题了,在使用过程中碰到一些问题与一些应用的例子. 用Laravel开发应用,把原有的代码copy过来,以前的代码ses ...
- Jetty开发指导:Jetty Websocket API
Jetty WebSocket API使用 Jetty提供了功能更强的WebSocket API,使用一个公共的核心API供WebSockets的服务端和client使用. 他是一个基于WebSock ...
- 会话技术cookie和session详解
什么是会话 会话可简单理解为:用户开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭浏览器,整个过程称之为一个会话. 会话技术解决了什么问题 每个用户与服务器进行交互的过程中,各自会有一 ...
- 前端获得session信息方式对比,优化
在开发中,页面 js 经常会遇到需要 当前登录用户信息(菜单权限,用户基本信息,配置信息) 的地方,一般情况我们可能对这些信息获取方式不是太在意,但是现在的前端通过webpack打包,即使做了代码分割 ...
- laravel中session的过期时间
在项目开发的过程中,前后端分离 需要用session保存用户的登陆信息 这就涉及到session的有效期了 session又分为php中的session有效期和laravel中的session的有效期 ...
- electron api sendInputEvent 源码
electron-master\electron-master\shell\browser\api\atom_api_web_contents.cc // Copyright (c) 2014 Git ...
- web 之 session
Session? 在WEB开发中,服务器可以为每个用户浏览器创建一个会话对象(session对象),注意:一个浏览器独占一个session对象(默认情况下).因此,在需要保存用户数据时,服务器程序可以 ...
随机推荐
- eplan图框制作
1. 首先,新建一个原理图项目 2. 新建图框.选择“工具”→“主数据”→“图框”→“新建” 在“文件名”中输入文件名,保存. 3.添加新建图框属性选项.选中“新建符号*”,添加选项 4. 设置图框的 ...
- CodeForces 1151D Stas and the Queue at the Buffet
题目链接:http://codeforces.com/contest/1151/problem/D 题目大意: 有n个学生排成一队(序号从1到n),每个学生有2个评定标准(a, b),设每个学生的位置 ...
- 关系型数据库 VS 非关系型数据库
一.关系型数据库? 1.概念 关系型数据库是指采用了关系模型来组织数据的数据库.简单来说,关系模式就是二维表格模型. 主要代表:SQL Server,Oracle,Mysql,PostgreSQL. ...
- 改善python程序的建议[转]
<编写高质量代码 改善Python程序的91个建议> <编写高质量代码 改善Python程序的91个建议>读后程序学习小结 - BigDeng_2014的专栏 - CSDN博客 ...
- sourceinsight问题
1.添加.cc文件 Options-〉“Document Options”-〉在“File filter” 裡邊加上*.cc Project--->Add and Remove Pr ...
- C++ 左值与右值 右值引用 引用折叠 => 完美转发
左值与右值 什么是左值?什么是右值? 在C++里没有明确定义.看了几个版本,有名字的是左值,没名字的是右值.能被&取地址的是左值,不能被&取地址的是右值.而且左值与右值可以发生转换. ...
- [BZOJ4318] OSU!
比较简单,每个键分两种情况计算期望. 然而要注意的是,期望是线性运算,期望的平方不是平方的期望 . #include <cmath> #include <queue> #inc ...
- Linux系统下DHCP服务安装部署和使用详解
一.概述 DHCP :动态主机设置协议(英语:Dynamic Host Configuration Protocol,DHCP)是一个局域网的网络协议,使用UDP协议工作,主要有两个用途:用于内部网或 ...
- python 速记正则使用(转)
目录 python 速记正则使用(转) 正则表达式语法 字符与字符类 量词 组与捕获 断言与标记 条件匹配 正则表达式的标志 Python正则表达式模块 四大功能 两种方法 常用方法 匹配对象的属性与 ...
- RSA加密传输代码示例
RSA加密传输代码示例 涉及敏感数据的传输,双方最好约定使用加密解密.那RSA非对称加密就大有作为了.服务端可以保留自己的私钥,发给客户端对应的公钥.这样就可以互相加解密了.php中rsa加解密实现: ...