jasmine angular testing - можно ли добавить атрибут в метод описания?

Я новичок в тестировании жасмина и работаю с xUnit .Net.

Можно ли пометить тест или набор тестов таким образом:

[SomeAttribute]

 describe("A suite", function() {
   it("contains spec with an expectation", function() {
           expect(true).toBe(true);   
             });
 });

Поддерживает ли jasmine какие-либо атрибуты или идентификаторы? Моя цель на самом деле состоит в том, чтобы запустить группу тестов описания дважды, с разными настройками между запусками тестов. Я не хотел дублировать тесты. Может ли тест запускать другие тесты?

Этот вопрос предполагает, что я удовлетворен дублированием шага сборки для запуска тестового набора дважды, только с подмножеством тестов для второго запуска.

Изменить: более реалистичный пример того, как я надеюсь его потреблять.

[Theory]
[TestData(true)]
[TestData(false)]
 describe("A suite", function() {

    beforeEach(() => {
     configureTestBed(/*someHow get input*/);
    });

   it("contains spec with an expectation", function() {
           expect(true).toBe(true);   
             });
 });

person asdf    schedule 09.07.2018    source источник
comment
Откуда возьмутся настройки? Из внешнего файла? от 1_? так далее?   -  person Bk Santiago    schedule 09.07.2018
comment
Добавил редактирование в OP, чтобы показать, как я надеюсь его использовать, снова черпая вдохновение из теорий параметризованных тестов: andrewlock.net/ Если бы я мог указать другой karma.conf, который потенциально мог бы работать, если бы я мог каким-то образом прочитать этот параметр из конфигурации тестового стенда (а затем согласиться на дублирование шагов сборки, чтобы дважды запустить набор тестов, а затем внести в белый список определенные описания)   -  person asdf    schedule 09.07.2018


Ответы (1)


Что вы можете сделать, так это определить отдельные функции, которые будут принимать параметры из другого места в вашем коде.

Что-то вроде этого:

describe('Sample describe', () => {
    testFunction(1);
});

function testFunction(param1) {
    it('should execute test with params', () => {
        console.log(param1);
        expect(param1).toBe(1);
    });
}
person Yuriy Kravets    schedule 09.07.2018