Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

wdio plugin launcher options do not have support to set browserstackLocal

Aberta
#2,736 0 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
2/5
Tempo estimado
1-3 horas
Facilidade para iniciantes
45/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
javascript, nodejs
Domínio
testing-qa

Direção de pesquisa

Comece inspecionando o launcher do plugin wdio em node_modules/codeceptjs/lib/puglin/wido.js e compare as opções do launcher com a configuração fornecida. Verifique se a configuração browserstackLocal é repassada e se os testes locais do BrowserStack não são mais reportados como desabilitados.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

What are you trying to achieve?

I am using WebDriverIO and @wdio/browserstack-service for testing via browser stack local

What do you get instead?

Browserstack local testing is always disabled

Provide console output if related. Use --verbose mode for more details.

INFO @wdio/browserstack-service: browserstackLocal is not enabled - skipping...

Details
  • CodeceptJS version: 3.0.4
  • NodeJS Version: 12.10.0
  • Operating System: Windows 10
  • webdriverio: 6.10.11
  • @wdio/browserstack-service: 6.10.10
  • Configuration file:
exports.config = {
  tests: './tests/*_test.ts',
  timeout: 5000,
  output: './output',
  helpers: {
    WebDriver: {
      host: 'hub.browserstack.com',
      path: '/wd/hub',
      url: 'https://localhost:1101/',
      user: 'XX', // credentials
      key: 'XX', // credentials
      browserstackLocal:true,
      browser: 'chrome',
      desiredCapabilities: {
        'os':'Windows',
        'os_version' : '10',
        'browserName' : 'Chrome',
        'browser_version' : '70.0',
        'browserstack.local' : 'true',
        'browserstack.debug' : 'true',
        'browserstack.networkLogs' : 'true',
        'browserstack.user' : 'XX', // credentials
        'browserstack.key' : 'XX' // credentials
      },
      waitForTimeout: 5000 //override default of 1 sec wait with 5 seconds
    }
  },
  include: {
    I: './steps_file.ts'
  },
  gherkin: {
    features: "./src/features/*.feature",
    steps: "./src/step_definitions/*.steps.ts",
  },
  bootstrap: null,
  mocha: {},
  name: 'CodeceptJSWebDriver',
  require: ["ts-node/register"],
  plugins: {
    retryFailedStep: {
      enabled: true
    },
    screenshotOnFail: {
      enabled: true
    },
    allure:{
      enabled:true
    },
    wdio: {
      enabled: true,
      services: ['browserstack']
    }
  }
}

As a work around for now, I have modified node_modules\codeceptjs\lib\puglin\wido.js and added browserstackLocal:true

for (const name of config.services) {
    // webdriverio v5 style
    const Service = safeRequire(`@wdio/${name.toLowerCase()}-service`);
    if (Service) {
      if (Service.launcher && typeof Service.launcher === 'function') {
        const Launcher = Service.launcher;

        const version = JSON.parse(fs.readFileSync(path.join(require.resolve('webdriverio'), '/../../', 'package.json')).toString()).version;
        if (version.indexOf('5') === 0) {
          launchers.push(new Launcher(config));
        } else {
          const options = { logPath: global.output_dir, installArgs: seleniumInstallArgs, args: seleniumArgs, browserstackLocal:true };
          launchers.push(new Launcher(options, [config.capabilities], config));
        }
      }
      if (typeof Service === 'function') {
        services.push(new Service(config, config.capabilities));
      }
      continue;
    }

    throw new Error(`Couldn't initialize service ${name} from wdio plugin config.\nIt should be available either in '@wdio/${name.toLowerCase()}-service' package`);
  }
Linguagem predominante
JavaScript
Estrelas
4.2k
Forks
756
Merge médio
2d 9h
PRs com merge (30d)
16

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de codeceptjs/CodeceptJS

Todas as issues de codeceptjs/CodeceptJS

Issues semelhantes

Mais issues de JavaScript

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.