Test output and the way tests are written can be localized. This way scenarios can be written in almost native language using UTF support of JavaScript. If you have non-English team and you work on non-English project consider enabling translation by setting translation to one of available languages.

Please refer to translated steps inside translation files and send Pull Requests to add missing.

To get autocompletion for localized method names generate definitions by running

codeceptjs def


Add to config:

  "translation": "ru-RU"

when running with --steps option steps output will be translated:

This also enables localized method names for actor object.

This way tests can be written in native language while it is still JavaScript:

Scenario('пробую написать реферат', (Я) => {
    Я.вижу("Написать реферат по");
    Я.кликаю("Написать реферат");
    Я.вижу("Реферат по психологии");


To write your tests in portuguese you can enable the portuguese translation in config file like:

  "translation": "pt-BR"

Now you can write test like this:

Scenario('Efetuar login', (Eu) => {
    Eu.preenchoOCampo("login", "");
    Eu.preenchoOCampo("senha", "123456");
    Eu.vejo("Seja bem vindo usuário!");


Add to config

  "translation": "it-IT"

Now you can write test like this:

Scenario('Effettuare il Login su GitHub', (io) => {
    io.compilo_il_campo("Username or email address", "giuseppe-santoro");
    io.compilo_il_campo("Password", "*********");
    io.faccio_click_su("Sign in");
    io.vedo("Learn Git and GitHub without any code!");