parts of appium api

Lock

Lock the screen.//锁屏。

// java
driver.lockScreen(3);
// objective c
[driver lockDeviceScreen:3];
# python
driver.lock(5)

Background app

Send the currently active app to the background.//将当前的app放到后台运行。

// java
driver.runAppInBackground(5);
// objective c
[driver runAppInBackground:3];
# python
driver.background_app(5)
 

Hide Keyboard

Hide the keyboard. Note: on iOS, this helper function is not guaranteed to work. There is no automation hook for hiding the keyboard, and apps are free to allow the user to hide the keyboard using any of a variety of different strategies, whether that is tapping outside the keyboard, swiping down, etc… We encourage you, rather than using this method, to think about how a user would hide the keyboard in your app, and tell Appium to do that instead (swipe, tap on a certain coordinate, etc…). That being said, the default behavior here might help you.//隐藏键盘。需要注意的是,在iOS系统上,这个方法不一定正常工作。实际上,用户可以通过“点击键盘外的区域”、“滑动”这些操作隐藏键盘。所以,使用appium时,推荐通过这些操作来隐藏键盘。

// java
driver.hideKeyboard();
// objective c
[driver hideKeyboard];
# python
driver.hide_keyboard()

Start Activity

Open an activity in the current app or start a new app and open an activity Android only//只适用于安卓系统。在当前app中打开一个activity,或者打开一个新的app。

// java
driver.startActivity("appPackage","com.example.android.apis", null, null);
// objective c
[driver startActivity:@"com.example.android.apis" package:@".Foo"];
# python
driver.start_activity('com.example.android.apis', '.Foo')

Open Notifications

Open the notification shade Android only//只适用于安卓系统。打开通知栏。

// java
driver.openNotifications();
// objective c
[driver openNotifications];
# python
driver.open_notifications()

Is installed

Check if an app is installed//判断是否安装了某个app。

// java
driver.isAppInstalled("com.example.android.apis")
// objective c
[driver isAppInstalled:@"com.example.android.apis-"];
# python
driver.is_app_installed('com.example.android.apis')

Install App

Install an app to the device.//安装一个app。

// java
driver.installApp("path/to/my.apk")
// objective c
[driver installAppAtPath:@"path/to/my.apk"];
# python
driver.install_app('path/to/my.apk')

Remove App

Remove an app from the device.//卸载一个app。

// java
driver.removeApp("com.example.android.apis")
// objective c
[driver removeApp:@"com.example.android.apis"];
# python
driver.remove_app('com.example.android.apis')

Shake

Simulate the device shaking.//模拟晃动操作。

// java
driver.shake()
// objective c
[driver shakeDevice];
# python
driver.shake()

Close app

Close the app.//关闭app。

// java
driver.closeApp()
// objective c
[driver closeApp];
# python
driver.close_app();

Launch

Launch the session for the desired capabilities. Note that this is the companion to the autoLaunch=false capability. This is not for launching arbitrary apps/activities—for that use start_activity. This is for continuing the initialization ("launch”) process if you have used autoLaunch=false.//当autoLauch=false时,使用desired capability加载session。

// java
driver.launchApp()
// objective c
[driver launchApp];
# python
driver.launch_app()
 

Reset

Reset the app.//重启app。

// java
driver.resetApp()
// objective c
[driver resetApp];
# python
driver.reset()
 

Available Contexts

List all available contexts.//列出全部可用的“上下文”

// java
driver.getContextHandles()
// objective c
NSArray *contexts = driver.allContexts;
# python
driver.contexts
 

Current context

List the current context.//列出当前的上下文。NATIVE_APP或者WEBVIEW_1。NATIVE_APP是指原生应用。

// java
driver.getContext()
// objective c
NSString *context = driver.context;
# python
driver.current_context
 

Switch to default context

Change the context to the default.//切换到默认“上下文”。

// java
driver.context();
// objective c
[driver setContext:nil];
# python
driver.switch_to.context(None)
 

App Strings

Get the app’s strings.//获取app的字符串。

// java
driver.getAppStrings();
// objective c
[driver appStrings];
[driver appStringsForLanguage:"@ru"];
# python
driver.app_strings
 

Key Event

Send a key event to the device.//发送一个key event到设备。

// java
driver.sendKeyEvent(AndroidKeyCode.HOME);
// objective c
NSError *err;
[driver triggerKeyEvent:176 metastate:0 error:&err];
# python
driver.keyevent(176)
 

Current Activity

Android only. Get the current activity.//获取当前的activity。

// java
driver.currentActivity();
// objective c
NSError *err;
[driver currentActivity];
# python
driver.current_activity
 

TouchAction / MultiTouchAction

An API for generating touch actions. This section of the documentation will be expanded upon soon.//触摸操作。

// java
TouchAction action = new TouchAction(driver)
.press(mapview, 10, 10)
.release().
perform();
# python
action = TouchAction(driver)
action.press(element=el, x=10, y=10).release().perform()
 

Swipe

Simulate a user swipe.//模拟滑动操作。

// java
driver.swipe(75, 500, 75, 0, 0.8)
# python
driver.swipe(start_x=75, start_y=500, end_x=75, end_y=0, duration=800)
 

Pinch

Pinch the screen.//捏,两指滑动靠近。

// java
driver.pinch(element);
# python
driver.pinch(element=el)
 

Zoom

Zoom the screen.//两指滑动远离。

// java
driver.zoom(element);
# python
driver.zoom(element=el)
 

Scroll To

Scroll to an element.//滚动。

// java
JavascriptExecutor js = (JavascriptExecutor) driver;
HashMap<String, String> scrollObject = new HashMap<String, String>();
scrollObject.put("direction", "down");
scrollObject.put("element", ((RemoteWebElement) element).getId());
js.executeScript("mobile: scroll", scrollObject);
# python
driver.execute_script("mobile: scroll", {"direction": "down", element: element.id})
 

Pull file

Pulls a file from the device.//从设备中,下载一个文件到本地。

// java
driver.pullFile("Library/AddressBook/AddressBook.sqlitedb");
# python
driver.pull_file('Library/AddressBook/AddressBook.sqlitedb')
 

Push File

Pushes a file to the device.//上传一个文件到设备里。

// java
byte[] data = Base64.encodeBase64("some data for the file".getBytes());
String path = "/data/local/tmp/file.txt";
driver.pushFile(path, data)
# python
data = "some data for the file"
path = "/data/local/tmp/file.txt"
driver.push_file(path, data.encode('base64'))
 

Settings

Here you will find sample code for getting/setting appium serverSetting. For more information on how they work, and which settings are supported, see [the settings docs][/docs/en/advanced-concepts/settings.md]

JsonObject settings = driver.getSettings()
// java-client doesn't support setting arbitrary settings, just settings which are already provided by appium.
// So for the 'ignoreUnimportantViews' setting, the following method exists:
driver.ignoreUnimportantViews(true);
# python
current_settings = driver.get_settings()
driver.update_settings({"someSetting": true})

appium(6)-parts of appium api的更多相关文章

  1. 『与善仁』Appium基础 — 16、APPium基础操作API

    目录 1.前置代码 2.安装和卸载APP 3.判断APP是否已安装 4.关闭APP软件和关闭驱动对象 5.发送文件到手机和获取手机中的文件 6.获取当前屏幕内元素结构(重点) 7.脚本内启动其他APP ...

  2. Appium使用Python运行appium测试的实例

    Appium使用Python运行appium测试的实例 一.  Appium之介绍 https://testerhome.com/topics/8038 详情参考--https://testerhom ...

  3. appium(2)-Setting up Appium

    Setting up Appium Running Appium on Windows Additional Setup for Android App Testing Download latest ...

  4. 『与善仁』Appium基础 — 10、Appium基本原理

    目录 1.Appium自动化测试架构 2.Appium架构图 3.Session说明 4.Desired Capabilities说明 5.Appium Server说明 6.Appium Clien ...

  5. 『与善仁』Appium基础 — 14、Appium测试环境搭建

    目录 1.Appium测试环境搭建整体思路 (1)Android测试环境搭建 (2)Appium测试环境搭建 (3)测试脚本语言的环境搭建 2.Appium在Android端和IOS端的工作流程 (1 ...

  6. Appium基础二:Appium的安装(基Windows)

    1.JAVA环境配置: 1.1安装jdk: 1.2配置JAVA_Home.Path配置.java验证 Path: 输入C:\Program Files\Java\jdk1.8.0_121\bin:C: ...

  7. 『与善仁』Appium基础 — 12、Appium的安装详解

    目录 (一)Appium server安装 方式一:(桌面方式:推荐) 1.Appium Desktop下载 2.Appium Desktop安装 3.Appium Desktop使用 方式二:(No ...

  8. 『与善仁』Appium基础 — 20、Appium元素定位

    目录 1.by_id定位 2.by_name定位 3.by_class_name定位 4.by_xpath定位 5.by_accessibility_id定位 6.by_android_uiautom ...

  9. Appium+python自动化8-Appium Python API

    Appium+python自动化8-AppiumPython API   前言: Appium Python API全集,不知道哪个大神整理的,这里贴出来分享给大家. 1.contexts conte ...

随机推荐

  1. 详解webpack-dev-server的配置属性

    1.devServer.contentBase   它指定了服务器资源的根目录,如果不写入contentBase的值,那么contentBase默认是项目的目录. 在上面例子中产生错误和后来解决错误的 ...

  2. 教你写Linux设备驱动程序:一个简短的教程

    教你写Linux设备驱动程序:一个简短的教程 http://blog.chinaunix.net/uid-20799298-id-99675.html

  3. k8s之nginx-ingress、 Daemonset实现生产案例

    上一篇中用node ip + 非80端口,访问k8s集群内部的服务.实际生产中更希望用node ip + 80端口的方式,访问k8s集群内的服务. # 修改mandatory.yaml中创建控制器部分 ...

  4. IE使用多彩文档上传数据库报错

    使用多彩文档,用IE浏览器提交表单,双引号里面包含单引号,导致数据库插入不了,而用chrome浏览器不会报错,自动过滤单引号, 解决:content.replace("'", &q ...

  5. 期望DP初步

    感觉期望DP这种东西像是玄学- 主要总结说一点基础性的东西, 或许对于理解题目的做法会有一点帮助. 首先是关于独立事件, 互斥事件的概念. 通俗地说, 就是对于两个事件A, B, 假如满足发生了其中一 ...

  6. spring管理事务

    2.1 事务管理器 Spring并不直接管理事务,而是提供了多种事务管理器,他们将事务管理的职责委托给Hibernate或者JTA等持久化机制所提供的相关平台框架的事务来实现. Spring事务管理器 ...

  7. fastscript增加公共函数

    fastscript增加公共函数 unit fs_BsCommFuncs; interface{$i fs.inc}uses SysUtils, Classes, fs_iclassesrtti, f ...

  8. iOS应用崩溃日志揭秘

    这篇文章还可以在这里找到 英语 Learn how to make sense of crash logs! 本文作者是 Soheil Moayedi Azarpour, 他是一名独立iOS开发者. ...

  9. sqlite数据库转换为mysql数据库

    SQLite工具我用的SQLiteStudio2.1.5 下载地址 http://sqlitestudio.pl/?act=download SQLiteStudio打开数据库文件,点工具->导 ...

  10. TDDL-剖析淘宝TDDL

    TDDL-剖析淘宝TDDL 学习了:https://blog.csdn.net/sumj7011/article/details/78286741 Taobao Distribute Data Lay ...