Загрузите дополнительный файл CONFIG со значениями

Я использую множество значений для моего теста, таких как имя пользователя и пароль.

Для этого я создал файл конфигурации, в котором храню только эти данные в формате JSON, он выглядит следующим образом:

{
    "login": "test",
    "password": "pass",
    "number": "1234",
}

Это работает для меня, если я запрашиваю его при запуске каждого тестового файла (один файл для входа в систему, другой для чего-то еще)

Как я могу загрузить этот файл конфигурации один раз, а не в каждом отдельном файле. Пример, как я это делаю сейчас:

var configFile = require('./config.json');

Может кто-нибудь помочь мне настроить это?

2 ответа

Решение

Чтобы следовать принципу "СУХОЙ", используйте конфигурацию транспортира и доступны глобально browser объект:

  • в конфигурации транспортира "импортируйте" файл конфигурации и установите его как params значение:

    var config = require("./config.js");
    exports.config = {
        // ...
    
        params: config,
    
        // ...
    }
    
  • в ваших тестах просто используйте browser.params Например:

    describe('Logging in', function(){
         it('should log in', function(){
             var login = element(by.id("login"));
             login.sendKeys(browser.params.login);
    
             var password = element(by.id("password"));
             login.sendKeys(browser.params.password);
    
             element(by.id("submit")).click();
         });
     });
    

Другими словами, это подход "Импортировать один раз - везде использовать".

Вы можете просто использовать configFile в качестве глобальной переменной и использовать ее в каждом из ваших тестов.

describe('Description', function(){
    var configFile = require('./config.json');
    it('Test1', function(){
        //Consume configFile here
    });
    it('Test2', function(){
        //Consume configFile here
    });
});

Надеюсь, это поможет.

Другие вопросы по тегам