-
-
Notifications
You must be signed in to change notification settings - Fork 2.7k
Description
Have you read the Contributing Guidelines on issues?
- I have read the Contributing Guidelines on issues.
WebdriverIO Version
8.15.6
Node.js Version
16.9.0
Mode
Standalone Mode
Which capabilities are you using?
{
clientApp: {
capabilities: {
browserName: "chrome",
browserVersion:"stable",
"goog:chromeOptions": {
args: [
"--disable-notifications"
, "--disable-setuid-sandbox"
, "--no-sandbox"
, "--window-size=1536x864"
, "--disable-dev-shm-usage"
// ,"--headless"
, `--arch=${process.arch}`,
"--allow-file-access-from-files",
"--use-fake-ui-for-media-stream",
"--use-fake-device-for-media-stream",
`--use-file-for-fake-video-capture=/Users/${os.userInfo().username}/Desktop/output.y4m`
],
"prefs": {
"hardware.audio_capture_enabled": true,
"hardware.video_capture_enabled": true,
"hardware.audio_capture_allowed_urls": ["https://staging.stageserver.co"],
"hardware.video_capture_allowed_urls": ["https://staging.stageserver.co"],
}
},
}
},
advisorApp: {
capabilities: {
platformName: 'Android',
'appium:deviceName': webConfig.devicesContent[0].deviceName, 'appium:platformVersion': webConfig.devicesContent[0].platformVersion,
'appium:orientation': 'PORTRAIT',
'appium:automationName': 'UiAutomator2',
'appium:appPackage': 'co.myApp.android.staging',
'appium:appActivity': 'co.myApp.android.splash.SplashActivity',
'appium:noReset': true,
'appium:systemPort': 8216,
'appium:newCommandTimeout': 240,
'appium:autoGrantPermissions': true
}
}
}What happened?
I have tests that need different multiremote driver interactions: standalone chrome with appium Android or iOS.
When running web browser in standalone mode, it works fine. When running appium test - also everything starts ok.
When running 2 webdriver instances: 1 for browser, 2 - mobile app,
then chromedriver attempting to connect to appiun server.
What is your expected behavior?
When there was selenium standalone service it automatically started selenium server and connected chromedriver to it.
appium service also was started by wdio, both services were running on different ports so did not intercept eachother.
It would be great if the crhomedriver does not attempt to connect to appium server.
How to reproduce the bug.
create any test with this capabilities combination.
clientApp.url('/');
advisorApp.$('someMobileSelector').waitForDisplayed();
Relevant log output
Appium server log
2023-08-25T12:10:08.352Z DEBUG webdriver: request failed due to response error: invalid argument
2023-08-25T12:10:08.352Z WARN webdriver: Request failed with status 400 due to 'automationName' can't be blank; 'platformName' can't be blank
2023-08-25T12:10:08.352Z INFO webdriver: Retrying 3/3
2023-08-25T12:10:08.352Z INFO webdriver: [POST] http://127.0.0.1:4723/session
2023-08-25T12:10:08.352Z INFO webdriver: DATA {
capabilities: {
alwaysMatch: {
browserName: 'chrome',
browserVersion: 'stable',
'goog:chromeOptions': [Object]
},
firstMatch: [ {} ]
},
desiredCapabilities: {
browserName: 'chrome',
browserVersion: 'stable',
'goog:chromeOptions': { args: [Array], prefs: [Object] }
}
}
2023-08-25T12:10:08.367Z DEBUG webdriver: request failed due to response error: invalid argument
2023-08-25T12:10:08.367Z ERROR webdriver: Request failed with status 400 due to invalid argument: 'automationName' can't be blank; 'platformName' can't be blank
2023-08-25T12:10:08.367Z ERROR webdriver: invalid argument: 'automationName' can't be blank; 'platformName' can't be blank
at getErrorFromResponseBody (file:///Users/myUserName/src/testAutomation/node_modules/webdriver/build/utils.js:194:12)
at NodeJSRequest._request (file:///Users/myUserName/src/testAutomation/node_modules/webdriver/build/request/index.js:164:23)
at processTicksAndRejections (node:internal/process/task_queues:96:5)
at async startWebDriverSession (file:///Users/myUserName/src/testAutomation/node_modules/webdriver/build/utils.js:63:20)
at async Function.newSession (file:///Users/myUserName/src/testAutomation/node_modules/webdriver/build/index.js:27:45)
at async remote (file:///Users/myUserName/src/testAutomation/node_modules/webdriverio/build/index.js:45:22)
at async file:///Users/myUserName/src/testAutomation/node_modules/webdriverio/build/index.js:98:26
at async Promise.all (index 0)
at async multiremote (file:///Users/myUserName/src/testAutomation/node_modules/webdriverio/build/index.js:97:5)
at async initialiseInstance (file:///Users/myUserName/src/testAutomation/node_modules/@wdio/runner/build/utils.js:71:21)
at async Runner._startSession (file:///Users/myUserName/src/testAutomation/node_modules/@wdio/runner/build/index.js:224:29)
at async Runner._initSession (file:///Users/myUserName/src/testAutomation/node_modules/@wdio/runner/build/index.js:190:25)
at async Runner.run (file:///Users/myUserName/src/testAutomation/node_modules/@wdio/runner/build/index.js:79:19)
2023-08-25T12:10:08.374Z ERROR @wdio/runner: Error: Failed to create session.
'automationName' can't be blank; 'platformName' can't be blank
at startWebDriverSession (file:///Users/myUserName/src/testAutomation/node_modules/webdriver/build/utils.js:68:15)
at processTicksAndRejections (node:internal/process/task_queues:96:5)
at async Function.newSession (file:///Users/myUserName/src/testAutomation/node_modules/webdriver/build/index.js:27:45)
at async remote (file:///Users/myUserName/src/testAutomation/node_modules/webdriverio/build/index.js:45:22)
at async file:///Users/myUserName/src/testAutomation/node_modules/webdriverio/build/index.js:98:26
at async Promise.all (index 0)
at async multiremote (file:///Users/myUserName/src/testAutomation/node_modules/webdriverio/build/index.js:97:5)
at async initialiseInstance (file:///Users/myUserName/src/testAutomation/node_modules/@wdio/runner/build/utils.js:71:21)
at async Runner._startSession (file:///Users/myUserName/src/testAutomation/node_modules/@wdio/runner/build/index.js:224:29)
at async Runner._initSession (file:///Users/myUserName/src/testAutomation/node_modules/@wdio/runner/build/index.js:190:25)
at async Runner.run (file:///Users/myUserName/src/testAutomation/node_modules/@wdio/runner/build/index.js:79:19)Code of Conduct
- I agree to follow this project's Code of Conduct
Is there an existing issue for this?
- I have searched the existing issues