appium+as+react native h5 混合+h5

2632人阅读
Appium(182)
使用APPIUM + java 操作真机报下面的错误!
错误详情:
package ios;
import static org.junit.Assert.*;
import io.appium.java_client.remote.MobileCapabilityType;
import java.io.File;
import java.net.URL;
import org.junit.Before;
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.CapabilityType;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;
public class CASE {
WebDriver driver;
public void setUp() throws Exception {
// set up appium
File appDir = new File(System.getProperty(&github/local/AppiumTest/sample-code/apps/TestApp/Products&);
DesiredCapabilities capabilities = new DesiredCapabilities();
// capabilities.setCapability(&device&, &iPhone Simulator&);
//capabilities.setCapability(CapabilityType.BROWSER_NAME,&iOS&);
capabilities.setCapability(CapabilityType.VERSION,&7.1&);
capabilities.setCapability(CapabilityType.PLATFORM,&Mac&);
capabilities.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
capabilities.setCapability(&deviceName&, &pohoto&);
capabilities.setCapability(&platformName&, &ios&);
capabilities.setCapability(MobileCapabilityType.APP,&com.yiguo.YiGuoApp&);
driver = new RemoteWebDriver(new URL(&http://0.0.0.0:4723/wd/hub&),capabilities);
public void example() throws Exception {
// find an element by tag name
WebElement button = driver.findElement(By.tagName(&button&));
button.click();
// get the value of the element
WebElement texts = driver.findElement(By.tagName(&staticText&));
assertEquals(texts.getText(), &some expected value&);
APPium 报错打印日志
Last login: Thu Jan 29 15:20:12 on ttys000
liyudeMac-mini:~ admin$ appium -U 728CD07EF9A84DFEB0C04CC20D02A68D3162CD8E --app com.yiguo.YiGuoApp
info: Welcome to Appium v1.3.4 (REV c8c79a85fbdd66d038a115ebe22efe)
info: Appium REST http interface listener started on 0.0.0.0:4723
info: [debug] Non-default server args: {&app&:&com.yiguo.YiGuoApp&,&udid&:&728CD07EF9A84DFEB0C04CC20D02A68D3162CD8E&}
info: Console LogLevel: debug
info: --& POST /wd/hub/session {&desiredCapabilities&:{&app&:&io.appium.TestApp&,&platformVersion&:&7.1&,&browserName&:&&,&platformName&:&iOS&,&deviceName&:&iPhone Simulator&}}
info: Client User-Agent string: Apache-HttpClient/4.3.4 (java 1.5)
info: [debug] App is an iOS bundle, will attempt to run as pre-existing
info: [debug] Creating new appium session 9e25c17f-5e62-4cb6-f196fc4e
info: [debug] Removing any remaining instruments sockets
info: [debug] Cleaned up instruments socket /tmp/instruments_sock
info: [debug] Setting Xcode folder
info: [debug] Setting Xcode version
info: [debug] Setting iOS SDK Version
info: [debug] Getting sdk version from xcrun with a timeout
info: [debug] iOS SDK Version set to 8.1
info: [debug] Not checking whether simulator is available since we're on a real device
info: [debug] Detecting automation tracetemplate
info: [debug] Not auto-detecting udid, running on sim
info: [debug] Could not parse plist file (as binary) at /usr/local/lib/node_modules/appium/io.appium.TestApp/en.lproj/Localizable.strings
info: Will try to parse the plist file as XML
`parseFileSync()` is deprecated. Use `parseStringSync()` instead.
info: [debug] Could not parse plist file (as XML) at /usr/local/lib/node_modules/appium/io.appium.TestApp/en.lproj/Localizable.strings
warn: Could not parse app Localizable. assuming it doesn't exist
info: [debug] Creating instruments
info: On some xcode 6 platforms, instruments-without-delay does not work. If you experience this, you will need to re-run appium with the --native-instruments-lib flag
info: [debug] Preparing uiauto bootstrap
info: [debug] Dynamic bootstrap dir: /Users/admin/Library/Application Support/appium/bootstrap
info: [debug] Dynamic env: {&nodePath&:&/usr/local/Cellar/node/0.10.35_2/bin/node&,&commandProxyClientPath&:&/usr/local/lib/node_modules/appium/node_modules/appium-uiauto/bin/command-proxy-client.js&,&instrumentsSock&:&/tmp/instruments_sock&,&interKeyDelay&:null,&justLoopInfinitely&:false,&autoAcceptAlerts&:false,&sendKeyStrategy&:&grouped&}
info: [debug] Dynamic bootstrap code: // This file is automatically generated. D...ot manually modify!
info: [debug] Dynamic bootstrap path: /Users/admin/Library/Application Support/appium/bootstrap/bootstrap-c28cdf2cec4fb293.js
info: [debug] Reusing dynamic bootstrap: /Users/admin/Library/Application Support/appium/bootstrap/bootstrap-c28cdf2cec4fb293.js
info: [debug] Getting device string from opts: {&forceIphone&:false,&forceIpad&:false,&xcodeVersion&:&6.1&,&iOSSDKVersion&:&8.1&,&deviceName&:&iPhone Simulator&,&platformVersion&:&7.1&}
info: [debug] fixDevice is on
info: [debug] Fixing device. Changed from: &iPhone Simulator (7.1 Simulator)& to: &iPhone 5s (7.1 Simulator)&
info: [debug] Final device string is: 'iPhone 5s (7.1 Simulator)'
info: [debug] Not setting device type since we're on a real device
info: [debug] Checking whether we need to set app preferences
info: [debug] Not setting iOS and app preferences since we're on a real device
info: [debug] Running ios sim reset flow
info: [debug] Killing the simulator process
info: [debug] Killall iOS Simulator
info: [debug] Killing any other simulator daemons
info: [debug] O cannot clean device state
info: [debug] Not setting locale because we're using a real device
info: [debug] No iOS / app preferences to set
info: [debug] Starting iOS device log capture via deviceconsole
error: Log capture did not start in a reasonable amount of time
info: [debug] Cleaning up appium session
error: Failed to start an Appium session, err was: Error: Log capture did not start in a reasonable amount of time
info: [debug] Error: Log capture did not start in a reasonable amount of time
at null._onTimeout (/usr/local/lib/node_modules/appium/lib/devices/ios/ios-log.js:137:10)
at Timer.listOnTimeout [as ontimeout] (timers.js:112:15)
info: [debug] Responding to client with error: {&status&:33,&value&:{&message&:&A new session could not be created. (Original error: Log capture did not start in a reasonable amount of time)&,&origValue&:&Log capture did not start in a reasonable amount of time&},&sessionId&:null}
info: &-- POST /wd/hub/session 500
info: [debug] Not pre-launching simulator
info: [debug] Creating iDevice object with udid 728CD07EF9A84DFEB0C04CC20D02A68D3162CD8E
info: [debug] Couldn't find ideviceinstaller, trying built-in at /usr/local/lib/node_modules/appium/build/libimobiledevice-macosx/ideviceinstaller
info: [debug] Checking app install status using: /usr/local/lib/node_modules/appium/build/fruitstrap/fruitstrap isInstalled --id 728CD07EF9A84DFEB0C04CC20D02A68D3162CD8E --bundle io.appium.TestApp
解决方案:
1,启动Appium 加上设备UDID 和BUID
2,启动真机代码内的配置内容:
public void setUp() throws Exception {
// set up appium
DesiredCapabilities capabilities = new DesiredCapabilities();
//capabilities.setCapability(CapabilityType.BROWSER_NAME, &ios&);
capabilities.setCapability(CapabilityType.VERSION, &7.1&);
capabilities.setCapability(CapabilityType.PLATFORM, &Mac&);
//capabilities.setCapability(&device&, &iPhone Simulator&);
//capabilities.setCapability(&app&, &safai&);
capabilities.setCapability(&deviceName&, &pohoto&);//pohoto
capabilities.setCapability(&platformName&, &ios&);
driver = new RemoteWebDriver(new URL(&http://0.0.0.0:4723/wd/hub&), capabilities);
3,这样就可以启动我们真机上的app了
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:753631次
积分:9539
积分:9539
排名:第1819名
原创:23篇
转载:1189篇
评论:70条
(1)(6)(1)(5)(19)(9)(35)(34)(70)(42)(10)(23)(18)(69)(96)(18)(51)(58)(31)(105)(36)(17)(151)(97)(125)(72)(21)今天看啥 热点:
传递给Appium服务器以开启相应安卓Automation会话的Capabilities的几点说明
Desired Capabilities是由客户端发送给Appium服务器端的用来告诉服务器去启动哪种我们想要的会话的一套键值对集合。当中也有一些键值对是用来在自动化的过程中修改服务器端的行为方式的。比如,我们可以把键为platformName的capability的值设置成iOS来告诉服务器我们想要开启的是一个iOS的会话,而非Anddroid的会话。或者我们可以把键为safariAllowPopups 的capability的值设置成true来确保在Safari自动化会话的过程中,我们可以使用JavaScript来弹出一个新窗口。要查看Appium支持的完整的capabilities列表,请查看capabilities
doc或以下文档。
请注意以下列表中高亮的项,这些都是必填的项目。当中有以下几点需要注意的:
deviceName :我无论填写什么值,在我的HTC Incredable S机器上都可以跑通测试,但是这项又是必须要填的。我用得Appium版本是V1.2.2。app :如果填写了,appium会在目标机器上安装测试目标app,如果没有的话,会根据appActivity和appPackage去目标机器查找目标appappPackage :
可以通过sdk自带工具aapt获得appActivityvc3Ryb25nPjrNrNH5v8nS1M2ouf3S1MnPuaS+37vxtcOho9PQ0ru149Do0qrXotLitcTKx6OsJiMyMDU0MDu/ydLUuL2803BhY2thZ2VOYW1lo6zSsr/J0tSyu7i9vNOjrNKyvs3Kx8u10tTPwsG91tbM7tC0t73Kvba8yse21LXEobAuTm90ZXNMaXN0"和”com.example.android.notepad.NotesList"
Appium server capabilities
Capability
Description
automationName
Which automation engine to use
Appium (default) or Selendroid
platformName
Which mobile OS platform to use
iOS, Android, or FirefoxOS
platformVersion
Mobile OS version
e.g., 7.1, 4.4
deviceName
The kind of mobile device or emulator to use
iPhone Simulator, iPad Simulator, iPhone Retina 4-inch, Android Emulator, Galaxy
The absolute local path or remote http URL to an .ipa or .apk file, or a .zip containing one of these. Appium will attempt
to install this app binary on the appropriate device first. Note that this capability is not required for Android if you specify appPackage and appActivity capabilities
(see below). Incompatible with browserName.
/abs/path/to/my.apk or /app.ipa
browserName
Name of mobile web browser to automate. Should be an empty string if automating an app instead.
‘Safari’ for iOS and ‘Chrome’, ‘Chromium’, or ‘Browser’ for Android
newCommandTimeout
How long (in seconds) Appium will wait for a new command from the client before assuming the client quit and ending the session
autoLaunch
Whether to have Appium install and launch the app automatically. Default true
true, false
(Sim/Emu-only) Language to set for the simulator / emulator
(Sim/Emu-only) Locale to set for the simulator / emulator
e.g. fr_CA
Unique device identifier of the connected physical device
e.g. 1ae2g
orientation
(Sim/Emu-only) start in a certain orientation
LANDSCAPE or PORTRAIT
autoWebview
Move directly into Webview context. Default false
true, false
Don’t reset app state before this session. Default false
true, false
(iOS) Delete the entire simulator folder. (Android) Reset app state by uninstalling app instead of clearing app data. On Android, this will also remove the app after the session is complete. Default false
true, false
ANDROID ONLY
Capability
Description
appActivity
Activity name for the Android activity you want to launch from your package
MainActivity, .Settings
appPackage
Java package of the Android app you want to run
com.example.android.myApp, com.android.settings
appWaitActivity
Activity name for the Android activity you want to wait for
SplashActivity
appWaitPackage
Java package of the Android app you want to wait for
com.example.android.myApp, com.android.settings
deviceReadyTimeout
Timeout in seconds while waiting for device to become ready
androidCoverage
Fully qualified instrumentation class. Passed to -w in adb shell am instrument -e coverage true -w
com.my.Pkg/com.my.Pkg.instrumentation.MyInstrumentation
enablePerformanceLogging
(Chrome and webview only) Enable Chromedriver’s performance logging (default false)
true, false
androidDeviceReadyTimeout
Timeout in seconds used to wait for a device to become ready after booting
androidDeviceSocket
Devtools socket name. Needed only when tested app is a Chromium embedding browser. The socket is open by the browser and Chromedriver connects to it as a devtools client.
e.g., chrome_devtools_remote
Name of avd to launch
e.g., api19
avdLaunchTimeout
How long to wait in milliseconds for an avd to launch and connect to ADB (default 120000)
avdReadyTimeout
How long to wait in milliseconds for an avd to finish its boot animations (default 120000)
Additional emulator arguments used when launching an avd
e.g., -netfast
useKeystore
Use a custom keystore to sign apks, default false
true or false
keystorePath
Path to custom keystore, default ~/.android/debug.keystore
e.g., /path/to.keystore
keystorePassword
Password for custom keystore
Alias for key
e.g., androiddebugkey
keyPassword
Password for key
chromedriverExecutable
The absolute local path to webdriver executable (if Chromium embedder provides its own webdriver, it should be used instead of original chromedriver bundled with Appium)
/abs/path/to/webdriver
specialChromedriverSessionArgs
Custom arguments passed directly to chromedriver in chromeOptions capability. Passed as object which properties depend on a specific webdriver.
e.g., {'androidDeviceSocket': 'opera_beta_devtools_remote',}
autoWebviewTimeout
Amount of time to wait for Webview context to become active, in ms. Defaults to 2000
intentAction
Intent action which will be used to start activity (default android.intent.action.MAIN)
e.g.android.intent.action.MAIN, android.intent.action.VIEW
intentCategory
Intent category which will be used to start activity (default android.intent.category.LAUNCHER)
e.g. android.intent.category.LAUNCHER, android.intent.category.APP_CONTACTS
intentFlags
Flags that will be used to start activity (default 0x)
optionalIntentArguments
Additional intent arguments that will be used to start activity. See Intent arguments
e.g. --esn , --ez
unicodeKeyboard
Enable Unicode input, default false
true or false
resetKeyboard
Reset keyboard to its original state, after running Unicode tests with unicodeKeyboard capability. Ignored if used alone. Default false
true or false
Capability
Description
calendarFormat
(Sim-only) Calendar format to set for the iOS Simulator
e.g. gregorian
Bundle ID of the app under test. Useful for starting an app on a real device or for using other caps which require the bundle ID during test startup
e.g. io.appium.TestApp
launchTimeout
Amount of time in ms to wait for instruments before assuming it hung and failing the session
e.g. 20000
locationServicesEnabled
(Sim-only) Force location services to be either on or off. Default is to keep current sim setting.
true orfalse
locationServicesAuthorized
(Sim-only) Set location services to be authorized or not authorized for app via plist, so that location services alert doesn’t pop up. Default is to keep current sim setting. Note that if you use this setting you MUST also use the bundleId capability
to send in your app’s bundle ID.
true orfalse
autoAcceptAlerts
Accept iOS privacy access permission alerts (e.g., location, contacts, photos) automatically if they pop up. Default is false.
true orfalse
nativeInstrumentsLib
Use native intruments lib (ie disable instruments-without-delay).
true orfalse
nativeWebTap
(Sim-only) Enable “real”, non-javascript-based web taps in Safari. Default: false. Warning: depending on viewport size/ratio this might not accurately tap an element
true orfalse
safariAllowPopups
(Sim-only) Allow javascript to open new windows in Safari. Default keeps current sim setting
true orfalse
safariIgnoreFraudWarning
(Sim-only) Prevent Safari from showing a fraudulent website warning. Default keeps current sim setting.
true orfalse
safariOpenLinksInBackground
(Sim-only) Whether Safari should allow links to open in new windows. Default keeps current sim setting.
true orfalse
keepKeyChains
(Sim-only) Whether to keep keychains (Library/Keychains) when appium session is started/finished
true orfalse
localizableStringsDir
Where to look for localizable strings. Default en.lproj
processArguments
Arguments to pass to the AUT using instruments
e.g., -myflag
interKeyDelay
The delay, in ms, between keystrokes sent to an element when typing.
以下是一个配置例子:
public void setUp() throws Exception {
// set up appium
File classpathRoot = new File(System.getProperty("user.dir"));
File appDir = new File(classpathRoot, "apps");
File app = new File(appDir, "NotePad.apk");
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("deviceName","iPad Simulator");
//capabilities.setCapability("platformVersion", "4.2");
capabilities.setCapability("platformName", "Android");
capabilities.setCapability("app", app.getAbsolutePath());
//capabilities.setCapability("appPackage", "com.example.android.notepad");
//capabilities.setCapability("appActivity", "com.example.android.notepad.NotesList");
//capabilities.setCapability("appActivity", ".NotesList");
driver = new AppiumDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
相关搜索:
相关阅读:
相关频道:
&&&&&&&&&&&&&&&&
Java编程最近更新4547人阅读
测试自动化(39)
Appium(27)
Desired Capabilities是由客户端发送给Appium服务器端的用来告诉服务器去启动哪种我们想要的会话的一套键值对集合。当中也有一些键值对是用来在自动化的过程中修改服务器端的行为方式的。比如,我们可以把键为platformName的capability的值设置成iOS来告诉服务器我们想要开启的是一个iOS的会话,而非Anddroid的会话。或者我们可以把键为safariAllowPopups&的capability的值设置成true来确保在Safari自动化会话的过程中,我们可以使用JavaScript来弹出一个新窗口。要查看Appium支持的完整的capabilities列表,请查看或以下文档。
请注意以下列表中高亮的项,这些都是必填的项目。当中有以下几点需要注意的:
deviceName :我无论填写什么值,在我的HTC Incredable S机器上都可以跑通测试,但是这项又是必须要填的。我用得Appium版本是V1.2.2。app :如果填写了,appium会在目标机器上安装测试目标app,如果没有的话,会根据appActivity和appPackage去目标机器查找目标appappPackage : &可以通过sdk自带工具aapt获得appActivity:同样可以通过以上工具获得。有一点需要注意的是,值可以附加packageName,也可以不附加,也就是说以下两种填写方式都是对的“.NotesList&和”com.example.android.notepad.NotesList&
Appium server capabilities
Capability
Description
automationName
Which automation engine to use
Appium&(default) or&Selendroid
platformName
Which mobile OS platform to use
iOS,&Android, or&FirefoxOS
platformVersion
Mobile OS version
e.g.,&7.1,&4.4
deviceName
The kind of mobile device or emulator to use
iPhone Simulator,&iPad Simulator,&iPhone Retina 4-inch,&Android Emulator,&Galaxy
The absolute local path&or&remote http URL to an&.ipa&or&.apk&file, or a&.zip&containing one of these. Appium will attempt
to install this app binary on the appropriate device first.&Note that this capability is not required for Android if you specify&appPackage&and&appActivity&capabilities
(see below). Incompatible with&browserName.
/abs/path/to/my.apk&or&/app.ipa
browserName
Name of mobile web browser to automate. Should be an empty string if automating an app instead.
‘Safari’ for iOS and ‘Chrome’, ‘Chromium’, or ‘Browser’ for Android
newCommandTimeout
How long (in seconds) Appium will wait for a new command from the client before assuming the client quit and ending the session
autoLaunch
Whether to have Appium install and launch the app automatically. Default&true
true,&false
(Sim/Emu-only) Language to set for the simulator / emulator
(Sim/Emu-only) Locale to set for the simulator / emulator
e.g.&fr_CA
Unique device identifier of the connected physical device
e.g.&1ae2g
orientation
(Sim/Emu-only) start in a certain orientation
LANDSCAPE&or&PORTRAIT
autoWebview
Move directly into Webview context. Default&false
true,&false
Don’t reset app state before this session. Default&false
true,&false
(iOS) Delete the entire simulator folder. (Android) Reset app state by uninstalling app instead of clearing app data. On Android, this will also remove the app after the session is complete. Default&false
true,&false
ANDROID ONLY
Capability
Description
appActivity
Activity name for the Android activity you want to launch from your package
MainActivity,&.Settings
appPackage
Java package of the Android app you want to run
com.example.android.myApp,&com.android.settings
appWaitActivity
Activity name for the Android activity you want to wait for
SplashActivity
appWaitPackage
Java package of the Android app you want to wait for
com.example.android.myApp,&com.android.settings
deviceReadyTimeout
Timeout in seconds while waiting for device to become ready
androidCoverage
Fully qualified instrumentation class. Passed to -w in adb shell am instrument -e coverage true -w
com.my.Pkg/com.my.Pkg.instrumentation.MyInstrumentation
enablePerformanceLogging
(Chrome and webview only) Enable Chromedriver’s performance logging (default&false)
true,&false
androidDeviceReadyTimeout
Timeout in seconds used to wait for a device to become ready after booting
androidDeviceSocket
Devtools socket name. Needed only when tested app is a Chromium embedding browser. The socket is open by the browser and Chromedriver connects to it as a devtools client.
e.g.,&chrome_devtools_remote
Name of avd to launch
e.g.,&api19
avdLaunchTimeout
How long to wait in milliseconds for an avd to launch and connect to ADB (default&120000)
avdReadyTimeout
How long to wait in milliseconds for an avd to finish its boot animations (default&120000)
Additional emulator arguments used when launching an avd
e.g.,&-netfast
useKeystore
Use a custom keystore to sign apks, default&false
true&or&false
keystorePath
Path to custom keystore, default ~/.android/debug.keystore
e.g.,&/path/to.keystore
keystorePassword
Password for custom keystore
Alias for key
e.g.,&androiddebugkey
keyPassword
Password for key
chromedriverExecutable
The absolute local path to webdriver executable (if Chromium embedder provides its own webdriver, it should be used instead of original chromedriver bundled with Appium)
/abs/path/to/webdriver
specialChromedriverSessionArgs
Custom arguments passed directly to chromedriver in chromeOptions capability. Passed as object which properties depend on a specific webdriver.
e.g.,&{'androidDeviceSocket': 'opera_beta_devtools_remote',}
autoWebviewTimeout
Amount of time to wait for Webview context to become active, in ms. Defaults to&2000
intentAction
Intent action which will be used to start activity (default&android.intent.action.MAIN)
e.g.android.intent.action.MAIN,&android.intent.action.VIEW
intentCategory
Intent category which will be used to start activity (default&android.intent.category.LAUNCHER)
e.g.&android.intent.category.LAUNCHER,&android.intent.category.APP_CONTACTS
intentFlags
Flags that will be used to start activity (default&0x)
optionalIntentArguments
Additional intent arguments that will be used to start activity. See&
e.g.&--esn &EXTRA_KEY&,&--ez &EXTRA_KEY& &EXTRA_BOOLEAN_VALUE&, etc.
unicodeKeyboard
Enable Unicode input, default&false
true&or&false
resetKeyboard
Reset keyboard to its original state, after running Unicode tests with&unicodeKeyboard&capability. Ignored if used alone. Default&false
true&or&false
Capability
Description
calendarFormat
(Sim-only) Calendar format to set for the iOS Simulator
e.g.&gregorian
Bundle ID of the app under test. Useful for starting an app on a real device or for using other caps which require the bundle ID during test startup
e.g.&io.appium.TestApp
launchTimeout
Amount of time in ms to wait for instruments before assuming it hung and failing the session
e.g.&20000
locationServicesEnabled
(Sim-only) Force location services to be either on or off. Default is to keep current sim setting.
true&orfalse
locationServicesAuthorized
(Sim-only) Set location services to be authorized or not authorized for app via plist, so that location services alert doesn’t pop up. Default is to keep current sim setting. Note that if you use this setting you MUST also use the&bundleId&capability
to send in your app’s bundle ID.
true&orfalse
autoAcceptAlerts
Accept iOS privacy access permission alerts (e.g., location, contacts, photos) automatically if they pop up. Default is false.
true&orfalse
nativeInstrumentsLib
Use native intruments lib (ie disable instruments-without-delay).
true&orfalse
nativeWebTap
(Sim-only) Enable “real”, non-javascript-based web taps in Safari. Default:&false. Warning: depending on viewport size/ratio this might not accurately tap an element
true&orfalse
safariAllowPopups
(Sim-only) Allow javascript to open new windows in Safari. Default keeps current sim setting
true&orfalse
safariIgnoreFraudWarning
(Sim-only) Prevent Safari from showing a fraudulent website warning. Default keeps current sim setting.
true&orfalse
safariOpenLinksInBackground
(Sim-only) Whether Safari should allow links to open in new windows. Default keeps current sim setting.
true&orfalse
keepKeyChains
(Sim-only) Whether to keep keychains (Library/Keychains) when appium session is started/finished
true&orfalse
localizableStringsDir
Where to look for localizable strings. Default&en.lproj
processArguments
Arguments to pass to the AUT using instruments
e.g.,&-myflag
interKeyDelay
The delay, in ms, between keystrokes sent to an element when typing.
以下是一个配置例子:
public void setUp() throws Exception {
// set up appium
File classpathRoot = new File(System.getProperty(&user.dir&));
File appDir = new File(classpathRoot, &apps&);
File app = new File(appDir, &NotePad.apk&);
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(&deviceName&,&iPad Simulator&);
//capabilities.setCapability(&platformVersion&, &4.2&);
capabilities.setCapability(&platformName&, &Android&);
capabilities.setCapability(&app&, app.getAbsolutePath());
//capabilities.setCapability(&appPackage&, &com.example.android.notepad&);
//capabilities.setCapability(&appActivity&, &com.example.android.notepad.NotesList&);
//capabilities.setCapability(&appActivity&, &.NotesList&);
driver = new AppiumDriver(new URL(&http://127.0.0.1:4723/wd/hub&), capabilities);
天地会珠海分舵
服务号:TechGoGoGo
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:699284次
积分:10480
积分:10480
排名:第1521名
原创:163篇
转载:27篇
译文:194篇
评论:188条
文章:17篇
阅读:21911
文章:44篇
阅读:53669
文章:202篇
阅读:246585
阅读:33910
文章:10篇
阅读:65498
文章:10篇
阅读:69623
文章:21篇
阅读:69807
文章:35篇
阅读:189032
(3)(4)(6)(2)(1)(34)(6)(10)(11)(17)(10)(28)(8)(15)(73)(41)(18)(2)(8)(42)(36)(6)(4)}

我要回帖

更多关于 react native和h5 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信