Жасмин: как запускать все тесты, предоставляя каждый раз разный контекст?

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

По рассказу:

  • Я использую jasmine и webdriver для тестирования нашего сайта. Webdriver - это инструмент автоматизации, позволяющий открыть выбранный браузер и запустить его для выполнения тестов.
  • У меня есть банк тестов, который пока поддерживает жестко запрограммированный браузер.
  • Я хотел бы получить список поддерживаемых браузеров ["safari", "chrome",…] и выполнить один и тот же тест для всех этих браузеров, ничего не меняя в коде.

Возможным вариантом может быть запуск jasmine через сценарий оболочки и передача глобальной переменной браузера перед каждым вызовом, но мне эта идея не очень нравится.

PS: эти вопросы могут быть связаны с этим


person Flavien Volken    schedule 14.10.2015    source источник
comment
Обычно это делается с помощью тестовой программы (карма, наглость и т. Д.). Большинство из них имеют параметры конфигурации для поддержки нескольких настраиваемых пользователем браузеров.   -  person ktharsis    schedule 14.10.2015


Ответы (1)


С помощью karma вы можете передать множество браузеров, которые хотите протестировать.

module.exports = function (config) {
    config.set({

        // base path that will be used to resolve all patterns (eg. files, exclude)
        basePath: '..',


        // frameworks to use
        frameworks: [
            'jasmine'
        ],

        // Here the rest of the config


        // start these browsers
        // available browser launchers: https://npmjs.org/browse/keyword/karma-launcher
        browsers: ['Chrome', 'Safari'],    
    })
};
person Nicolas Hefti    schedule 17.03.2016