首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WebdriverIO不使用config.path访问Appium服务器

WebdriverIO不使用config.path访问Appium服务器
EN

Stack Overflow用户
提问于 2022-02-15 11:04:43
回答 1查看 499关注 0票数 2

我正在尝试开始使用appium,并使用Appium Server和Appium检查器成功地连接到我的设备(我不得不将远程路径更改为/wd/集线器)。现在,我正尝试使用WebdriverIO使用https://github.com/webdriverio/appium-boilerplate来做同样的事情

首先,我启动了appium服务器:

现在,我从https://github.com/webdriverio/appium-boilerplate克隆了Appium样板,并运行了npm install。然后,我将config/wdio.android.app.conf.ts中的路径更改为‘/wd/集线器’:

代码语言:javascript
复制
import { join } from 'path';
import config from './wdio.shared.local.appium.conf';

// ============
// Specs
// ============
config.specs = [
    './tests/specs/**/app*.spec.ts',
];

// ============
// Capabilities
// ============
// For all capabilities please check
// http://appium.io/docs/en/writing-running-appium/caps/#general-capabilities
config.capabilities = [
    {
        // The defaults you need to have in your config
        platformName: 'Android',
        maxInstances: 1,
        // For W3C the appium capabilities need to have an extension prefix
        // http://appium.io/docs/en/writing-running-appium/caps/
        // This is `appium:` for all Appium Capabilities which can be found here
        'appium:deviceName': 'Pixel_3_10.0',
        'appium:platformVersion': '10.0',
        'appium:orientation': 'PORTRAIT',
        'appium:automationName': 'UiAutomator2',
        // The path to the app
        'appium:app': join(process.cwd(), './apps/Android-NativeDemoApp-0.4.0.apk'),
        // @ts-ignore
        'appium:appWaitActivity': 'com.wdiodemoapp.MainActivity',
        // Read the reset strategies very well, they differ per platform, see
        // http://appium.io/docs/en/writing-running-appium/other/reset-strategies/
        'appium:noReset': true,
        'appium:newCommandTimeout': 240,
    },
];

config.path = '/wd/hub';
console.log(config);
exports.config = config;

现在我调用npm run android.app,console.log命令向我展示:

代码语言:javascript
复制
{
  runner: 'local',
  specs: [ './tests/specs/**/app*.spec.ts' ],
  capabilities: [
    {
      platformName: 'Android',
      maxInstances: 1,
      'appium:deviceName': 'Pixel_3_10.0',
      'appium:platformVersion': '10.0',
      'appium:orientation': 'PORTRAIT',
      'appium:automationName': 'UiAutomator2',
      'appium:app': '<<removed initially ;-)>>',
      'appium:appWaitActivity': 'com.wdiodemoapp.MainActivity',
      'appium:noReset': true,
      'appium:newCommandTimeout': 240
    }
  ],
  logLevel: 'silent',
  bail: 0,
  baseUrl: 'http://the-internet.herokuapp.com',
  waitforTimeout: 45000,
  connectionRetryTimeout: 120000,
  connectionRetryCount: 3,
  services: [ [ 'appium', [Object] ] ],
  framework: 'mocha',
  reporters: [ 'spec' ],
  mochaOpts: { ui: 'bdd', timeout: 180000 },
  port: 4723,
  path: '/wd/hub'
}

..。这对我来说似乎没问题,但Appium服务器显示:

代码语言:javascript
复制
[HTTP] Waiting until the server is closed
[HTTP] Received server close event
[Appium] Welcome to Appium v1.22.0
[Appium] Non-default server args:
[Appium]   address: 127.0.0.1
[Appium]   sessionOverride: true
[Appium]   relaxedSecurityEnabled: true
[Appium]   allowInsecure: {
[Appium]   }
[Appium]   denyInsecure: {
[Appium]   }
[Appium] Appium REST http interface listener started on 127.0.0.1:4723
[HTTP] --> POST /session
[HTTP] {"capabilities":{"alwaysMatch":{"platformName":"Android","appium:deviceName":"Pixel_3_10.0","appium:platformVersion":"10.0","appium:orientation":"PORTRAIT","appium:automationName":"UiAutomator2","appium:app":"<<removed ;-)>>","appium:appWaitActivity":"com.wdiodemoapp.MainActivity","appium:noReset":true,"appium:newCommandTimeout":240},"firstMatch":[{}]},"desiredCapabilities":{"platformName":"Android","appium:deviceName":"Pixel_3_10.0","appium:platformVersion":"10.0","appium:orientation":"PORTRAIT","appium:automationName":"UiAutomator2","appium:app":"<<removed ;-)>>","appium:appWaitActivity":"com.wdiodemoapp.MainActivity","appium:noReset":true,"appium:newCommandTimeout":240}}
[HTTP] No route found for /session
[HTTP] <-- POST /session 404 8 ms - 211
[HTTP] 
[HTTP] --> POST /session
[HTTP] {"capabilities":{"alwaysMatch":{"platformName":"Android","appium:deviceName":"Pixel_3_10.0","appium:platformVersion":"10.0","appium:orientation":"PORTRAIT","appium:automationName":"UiAutomator2","appium:app":"<<removed ;-)>>","appium:appWaitActivity":"com.wdiodemoapp.MainActivity","appium:noReset":true,"appium:newCommandTimeout":240},"firstMatch":[{}]},"desiredCapabilities":{"platformName":"Android","appium:deviceName":"Pixel_3_10.0","appium:platformVersion":"10.0","appium:orientation":"PORTRAIT","appium:automationName":"UiAutomator2","appium:app":"<<removed ;-)>>","appium:appWaitActivity":"com.wdiodemoapp.MainActivity","appium:noReset":true,"appium:newCommandTimeout":240}}

看起来WebdriverIO没有识别config.path设置。我已经签出了Testing Mobile App with Appium & WebdriverIO: "No route found for /session",但是解决方案改变了config.path值(我做了),但是我不知道为什么它没有被识别.有人知道吗?

EN

回答 1

Stack Overflow用户

发布于 2022-07-15 10:39:19

我刚刚跨过了同一个问题,当您在capabilites下设置它时,它看起来是有效的。

代码语言:javascript
复制
 capabilities: [{
    "path": "/wd/hub",
    ...
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71125342

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档