Appium - Execute 드라이버 스 크 립 트 (드라이버 스 크 립 트 실행)
Run a WebdriverIO script against the current session, allowing execution of many commands in one Appium request./현재 세 션 에 대해 WebdriverIO 스 크 립 트 를 실행 합 니 다. 하나의 Appium 요청 에서 여러 명령 을 수행 할 수 있 습 니 다.
Example Usage
Java
String script =
"const el = await driver.$('~foo');
"
+ "await el.click();"
driver.executeDriverScript(script, new ScriptOptions().withTimeout(200)); Python
import textwrap script =
"""
const el = await driver.$('~foo');
await el.click();
"""
response = driver.execute_driver(script=textwrap.dedent(script)) Javascript
//webdriver.io exampleconst script =
'
const el = await driver.$('~foo');
await el.click();
'
;await driver.executeDriver(script);//wd exampleconst script =
const el = await driver.$('~foo');
await el.click();
;await driver.executeDriver(script, {timeout: 200}); Ruby
# ruby_lib examplescript =
//TODO C# sample
PHP
//TODO PHP sample
Description
Appium 의 클 라 이언 트 - 서버 아 키 텍 처 의 단점 중 하 나 는 각 명령 이 높 은 대기 시간 으로 네트워크 를 가로 질 러 이동 해 야 한 다 는 것 입 니 다. 이 는 특히 Appium 세 션 이 로 컬 이 아 닌 서비스 제공 업 체 의 호스트 시스템 에서 발생 하 는 경우 입 니 다.//잠재 적 인 높 은 지연 단점
This command enables the batching of many commands together, to be executed in one go on the Appium server. The way this is accomplished is on the model of
executeScript
: the client will send in a string representing code to be executed. The Appium server will execute that code in the context of the current session,and return any values specified by the script./다 중 명령 일괄 처 리 를 한 번 에 실행 할 수 있 도록 합 니 다. executeScript 모델 에서.There are three parameters accepted by this command (which may be collected by each client in its own way): *
script
: the string consisting of the script itself * timeout
: a number representing the number of milliseconds to wait before killing the process running the driver script. Default is equivalent to 1 hour. * type
: a string representering the script language/API. Currently only one type, webdriverio
, is supported (and it is the default).기본 값 은 1 시간 에 해당 합 니 다. *type: 스 크 립 트 언어/API 를 나타 내 는 문자열 입 니 다.현재 웹 드라이브 리 오 형식 만 지원 합 니 다. (기본 값 입 니 다.)Not just any code can run in this context. The code must be written in Javascript, and it will have access to a context with three objects *
driver
: a WebdriverIO driver object. It may be assumed this driver has already connected with the Appium server and is ready to run commands. The version of WebdriverIO used is the one installed according to the specification in appium-base-driver
's package.json
file. * console: a custom console
object, with methods log
, warn
, and error
, so that logging may take place. * Promise
: a Promise library (Bluebird), to make asynchronous work easier.The code will be placed inside an
async
function, as below, so you are free to use await:/코드 는 비동기 함수 에 배치 되 어 있 으 므 로 자 유 롭 게 사용 할 수 있 습 니 다.(async function (driver, console, Promise) {
// --> your script here
})()
Any errors will result in an error response to the call to this command. Any return values will be wrapped up and sent back to your client in the following form: 모든 오류 가 이 명령 에 대한 오류 응답 을 가 져 옵 니 다.모든 반환 값 은 다음 과 같은 형식 으로 포장 하여 클 라 이언 트 에 게 보 냅 니 다.
{
result: <return value>, logs: {
log: [], warn: [], error: []}}
Using this response object you can gather the return value as well as the output of any log statements you made.//이 응답 대상 을 사용 하면 핸드폰 반환 값 과 로그 문 구 를 출력 할 수 있 습 니 다.
The advantage of this approach of using WebdriverIO code is that you have access to a full programming language and Appium API, and can use any language or API features you need, including loops, conditionals, and explicit waits. The WebdriverIO API cannot be enumerated here,so visit the WebdriverIO documentation for more info./이러한 WebdriverIO 코드 를 사용 하 는 방법 은 완전한 프로 그래 밍 언어 와 appiumapi 에 접근 할 수 있 고 순환, 조건, 명시 적 대기 등 필요 한 모든 언어 나 API 기능 을 사용 할 수 있다 는 장점 이 있 습 니 다.WebdriverIO API 를 매 거 할 수 없습니다. 더 많은 정 보 를 얻 기 위해 WebdriverIO 문 서 를 방문 하 십시오.
Support
Appium Server
상세 하 게 보다
Appium Clients
Language
Support
Documentation
Java
All
appium.github.io
Python
None
appium.github.io
Javascript (WebdriverIO)
All
Javascript (WD)
All
github.com
Ruby
None
www.rubydoc.info
PHP
None
C#
None
HTTP API Specifications
Endpoint
POST /session/:session_id/appium/execute_driver
URL Parameters
name
description
session_id
ID of the session to route the command to
JSON Parameters
name
type
description
script
string
The webdriverio script to execute
type
string
The name of the script type. Currently only ‘webdriverio’ is supported
timeout
number
The number of ms Appium should wait for the script to finish before killing it due to timeout
Response
The script result. It will have two fields:
result
and logs
. Result will be the return value of the script. Logs will include the content of anything logged from the console
object by the script. any
//스 크 립 트 결과.결과 와 로그 두 필드 가 있 습 니 다.결 과 는 스 크 립 트 의 반환 값 입 니 다.로 그 는 스 크 립 트 가 콘 솔 대상 에서 기록 한 모든 내용 을 포함 합 니 다.(무엇이든)이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Appium - Execute 드라이버 스 크 립 트 (드라이버 스 크 립 트 실행)Run a WebdriverIO script against the current session, allowing execution of many commands in one Appium request./현재 세 션 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.