I'm constructing an mobile automation frame using appium with webdriverIO. My employer is in the early stages of constructing their app so I'm using a boilplate WDIO app as it's a hybrid app.
I'm using the desired capabilities in appium inspector which have worked perfectly in the past. However, I can't get Appium inspector to load the app on its screen (However, it's loading perfectly on the iOS simulator).
did I miss something?
What I'm seeing on my screen
WDIO file Desired Capabilities:
capabilities: [{
// capabilities for local Appium web tests on iOS
platformName: 'iOS',
"appium:platformVersion":"18.1",
"appium:DeviceName":"iphone 16",
"appium:automationName":"XCUITest",
'appium:app': path.join(process.cwd(), 'App', 'iOS','wdiodemoapp.app'),
'appium:noReset': true,
'appium:autoAcceptAlerts': true,
'appium:newCommandTimeout': 300
}],
Appium Inspector Desired Capabilities
{
"platformName": "iOS",
"appium:deviceName": "iPhone 16",
"appium:platformVersion": "18.1",
"appium:automationName": "XCUITest"
}
Appium inspector session information
ession URL http://127.0.0.1:4724/wd/hub/session/d4d63b31-a737-4b90-b51b-708244dba43b
Session Length 00:52:01
Server Details
version 3.0.2
git-sha 93990ab7da37007c8d9db16415cfb939aa5dd201
built 2018-04-25 13:25:35 -0700
Session Details
platformName iOS
deviceName iPhone 16
platformVersion 18.1
automationName XCUITest
includeSafariInWebviews true
newCommandTimeout 3600
connectHardwareKeyboard true
Currently Active App ID com.apple.springboard
Start this Kind of Session with Code
// This sample code supports Appium Java client >=9
// https://github.com/appium/java-client
import io.appium.java_client.remote.options.BaseOptions;
import io.appium.java_client.AppiumBy;
import io.appium.java_client.ios.IOSDriver;
import java.net.URL;
import java.net.MalformedURLException;
import java.time.Duration;
import java.util.Arrays;
import java.util.Base64;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.openqa.selenium.*;
public class SampleTest {
private IOSDriver driver;
@Before
public void setUp() {
Capabilities options = new BaseOptions()
.amend("platformName", "iOS")
.amend("appium:deviceName", "iPhone 16")
.amend("appium:platformVersion", "18.1")
.amend("appium:automationName", "XCUITest")
.amend("appium:includeSafariInWebviews", true)
.amend("appium:newCommandTimeout", 3600)
.amend("appium:connectHardwareKeyboard", true);
driver = new IOSDriver(this.getUrl(), options);
}
@Test
public void sampleTest() {
}
@After
public void tearDown() {
driver.quit();
}
private URL getUrl() {
try {
return new URL("http://127.0.0.1:4724/wd/hub");
} catch (MalformedURLException e) {
e.printStackTrace();
}
}
}
