Skip to content

Scenario(...).injectDependencies is not a function #1472

@LNDeus

Description

@LNDeus

What are you trying to achieve?

I would like to try Scenario.injectDependencies(), see https://codecept.io/pageobjects/#dependency-injection

What do you get instead?

Scenario(...).injectDependencies is not a function

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

lucas@dev03:~/siganet-docker/siganet/siganet-source$
 ./node_modules/codeceptjs/bin/codecept.js run --steps ./test-front-end/financeiro_pagar_test.js --verbose

Scenario(...).injectDependencies is not a function

TypeError: 
    at Object.<anonymous> (/home/bruno/siganet-docker/siganet/siganet-source/test-front-end/financeiro_pagar_test.js:32:4)
    at Module._compile (internal/modules/cjs/loader.js:721:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:732:10)
    at Module.load (internal/modules/cjs/loader.js:620:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:560:12)
    at Function.Module._load (internal/modules/cjs/loader.js:552:3)
    at Module.require (internal/modules/cjs/loader.js:657:17)
    at require (internal/modules/cjs/helpers.js:20:18)
    at /home/bruno/siganet-docker/siganet/siganet-source/node_modules/mocha/lib/mocha.js:231:27
    at Array.forEach (<anonymous>)

Provide test source code if related

Feature('A pagar');

//Realiza o login antes de continuar o teste.
Before( (I , paginaLogin, menu) => {
    paginaLogin.realizaLogin();
});

//Realiza o logOut No final de cada cenário.
After( (I, menu) => {
   menu.realizaLogOut();
});

Scenario('Incluindo uma duplicata',async (I, menu, menuFinanceiro,Data) => {
    I.amOnPage('http://siganet.local/home.php');

    menuFinanceiro.aPagarInclusao();

    within({frame: "#principal"}, () => {
        //Fill some fields
        Data.preencheCampos();

        //click save button
        Data.salvar();

        //end operation
        Data.finalizar();

    //inject dynamic depencies for the scenario (here's where the error happen).
    });
}).injectDependencies({ Data: require('./page-objects/siga5011.js') });

Details

  • CodeceptJS version: v2.0.4
  • NodeJS Version: v11.7.0
  • Operating System: Debian GNU/Linux 9 (stretch) 64-bit
  • Protractor || WebDriverIO || Nightmare version: we use puppeteer
  • Configuration file:
exports.config = {
  output: 'test-front-end/logs',
  helpers: {
    Puppeteer: {
        url: 'siganet.local/site',
        show: true,
        fullPageScreenShots: true,
        keepBrowserState: true,
        restart: false
    },
    customHelper: {
      require: './test-front-end/helpers/customHelper.js',
    },
  },
  include: {
      paginaLogin: './test-front-end/page-objects/PaginaLogin.js',

      //menus
      menu: './test-front-end/page-objects/menus/Menu.js',
      menuFinanceiro: './test-front-end/page-objects/menus/MenuFinanceiro.js',

      //Step Objects
      financeiroSteps: './test-front-end/step-objects/financeiro-steps.js',

      //Page Objects
         //Page Fragments
      siga2289: './test-front-end/page-objects/siga2289.js',
      siga5026: './test-front-end/page-objects/siga5026.js',
      siga7015: './test-front-end/page-objects/siga7015.js',
      siga7020: './test-front-end/page-objects/siga7020.js',
      siga6098: './test-front-end/page-objects/siga6098.js'
  },
  mocha: {},
  bootstrap: null,
  teardown: null,
  hooks: [],
  gherkin: {
    features: './features/*.feature',
    steps: ['./step_definitions/steps.js']
  },
  plugins: {
    screenshotOnFail: {
      enabled: true
    }
  },
  tests: 'test-front-end/*_test.js',
  name: 'siganet-source',
  translation: 'pt-BR'
};

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions