Как я могу настроить случайное жасмин на gruntfile?

Как я могу настроить случайную опцию, используя grunt-contrib-jasmine? Я могу сделать это напрямую с помощью командной строки jasmine, но, выполнив задачу jasmine с помощью grunt-cli, я не нашел случайной опции. Тогда выходные данные командной строки всегда показывают случайные выходные данные спецификаций.

1 ответ

Я нашел ответ на свой вопрос. По крайней мере, я проверил, и это сработало. В верхней части каждой описательной декларации вы можете настроить случайную опцию вашего теста костюма. Это может быть со следующим утверждением:

describe('My suite', function(){
   jasmine.getEnv().configure({random:false});

   // There are several tests here... 

   afterAll(function(){
      jasmine.getEnv().configure({random:true});
   });

   ...

Если вы используете jasmine.d.ts и ваши тесты написаны на машинке, вы также можете добавить в интерфейс Env в jasmine.d.ts такую ​​функцию, как:

interface Env {
    // some code
    // add function:
    configure(b: any): void;
}

Затем в своих тестах вы можете написать что-то вроде:

/// <reference path="../../../../typings/jasmine/jasmine.d.ts" />
jasmine.getEnv().configure({ random: false });

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

Изменить: вы также можете включить конфигурацию жасмина в часть параметров / помощников вашей задачи grunt-contrib-jasmine в виде отдельного файла. Что-то типа:

jasmine: {
    src: [some source files],
    options: {
      specs: [some spec files],
      helpers: 'helpers.js'
    }
}
Другие вопросы по тегам