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的更多相关文章

  1. Web Api Session开启会话支持

        1.WebApi中默认是没有开启Session会话支持的.需要在Global中重写Init方法来指定会话需要支持的类型           //代码如下 public override voi ...

  2. 购物车Demo,前端使用AngularJS,后端使用ASP.NET Web API(2)--前端,以及前后端Session

    原文:购物车Demo,前端使用AngularJS,后端使用ASP.NET Web API(2)--前端,以及前后端Session chsakell分享了前端使用AngularJS,后端使用ASP.NE ...

  3. laravel 4.2 session

    laravel的session简要API Session的API还是比较简单的,大家看看中文文档也大概知道是怎么个意思.但是有那么几个还不太好理解. //session的永久保存(在不过期范围内) S ...

  4. laravel框架session使用教程

    laravel是一款php框架了,在使用laravel时会碰到session使用问题了,在使用过程中碰到一些问题与一些应用的例子. 用Laravel开发应用,把原有的代码copy过来,以前的代码ses ...

  5. Jetty开发指导:Jetty Websocket API

    Jetty WebSocket API使用 Jetty提供了功能更强的WebSocket API,使用一个公共的核心API供WebSockets的服务端和client使用. 他是一个基于WebSock ...

  6. 会话技术cookie和session详解

    什么是会话 会话可简单理解为:用户开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭浏览器,整个过程称之为一个会话. 会话技术解决了什么问题 每个用户与服务器进行交互的过程中,各自会有一 ...

  7. 前端获得session信息方式对比,优化

    在开发中,页面 js 经常会遇到需要 当前登录用户信息(菜单权限,用户基本信息,配置信息) 的地方,一般情况我们可能对这些信息获取方式不是太在意,但是现在的前端通过webpack打包,即使做了代码分割 ...

  8. laravel中session的过期时间

    在项目开发的过程中,前后端分离 需要用session保存用户的登陆信息 这就涉及到session的有效期了 session又分为php中的session有效期和laravel中的session的有效期 ...

  9. electron api sendInputEvent 源码

    electron-master\electron-master\shell\browser\api\atom_api_web_contents.cc // Copyright (c) 2014 Git ...

  10. web 之 session

    Session? 在WEB开发中,服务器可以为每个用户浏览器创建一个会话对象(session对象),注意:一个浏览器独占一个session对象(默认情况下).因此,在需要保存用户数据时,服务器程序可以 ...

随机推荐

  1. vuex 状态管理 通俗理解

    解释:集中响应式数据管理,一处修改多处使用,主要应用于大中型项目. 安装: 第一:index.js:(注册store仓库) npm install vuex -D // 下载vuex import V ...

  2. 【问题解决方案】ImportError: No module named 'pygal'

    <Python编程:从入门到实践>一书,第二个项目-可视化,第四节用到pygal 安装部分用 'python -m pip install pygal==1.7' 安装,但使用时仍然报错 ...

  3. LR IP欺骗

    一.设置IP欺骗的原因: 1.当某个IP的访问过于频繁,或者访问量过大是,服务器会拒绝访问请求,这时候通过IP欺骗可以增加访问频率和访问量,以达压力测试的效果 2.某些服务器配置了负载均衡,使用同一个 ...

  4. 如何在springboot项目中进行XSS过滤

    简单介绍 XSS : 跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS.恶意 ...

  5. centos7之openvpn搭建

    一.环境介绍 操作系统centos7.4 openvpn版本:openvpn-2.1 lzo版本:lzo-2.03 二.搭建 关闭firewalld防火墙,并设置开机不启动.关闭selinux sys ...

  6. 【ML】从特征分解,奇异值分解到主成分分析

    1.理解特征值,特征向量 一个对角阵\(A\),用它做变换时,自然坐标系的坐标轴不会发生旋转变化,而只会发生伸缩,且伸缩的比例就是\(A\)中对角线对应的数值大小. 对于普通矩阵\(A\)来说,是不是 ...

  7. hyper发送表单数据

    前言 某个美丽的下午,运维把服务器上的nginx升级了,http协议也变成了http2.0,我本地的requests再也连接不到服务器,然后就找到了额hyper 但是hyper的文档写的很简单,而且相 ...

  8. [CTSC2017]网络

    [CTSC2017]网络 连一条长度为len的边,使得基环树的直径最小 结论:一定连在某条直径两个点上(否则更靠近不劣) 然后二分答案判定. dp[i]:链上一个点往下延伸的最大深度 考虑对于任意两个 ...

  9. 93.Restore IP Addresses(M)

    93.Restore IP Addresses Medium 617237FavoriteShare Given a string containing only digits, restore it ...

  10. 20175209 实验二《Java面向对象程序设计》实验报告

    20175209 实验二<Java面向对象程序设计>实验报告 一.实验前期准备 了解三种代码 伪代码 产品代码 测试代码 我们先写伪代码,伪代码 从意图层面来解决问题: 有了伪代码 我们用 ...