Что я должен использовать вместо fit и fdescribe в Jasmine 3?

Я получаю сообщение об ошибке:

ERROR: 'DEPRECATION: fit and fdescribe will cause your suite to report an 'incomplete' status in Jasmine 3.0'

Я сделал RTFM для Jasmine 3.0, но он ничего не сказал об устаревании: https://jasmine.github.io/api/3.0/global.html#fit

Эти функции все еще будут там, сообщение сообщает вам, что общий запуск теперь будет неполным, не пройденным, если все целевые тесты пройдут.

jonrsharpe 28.05.2018 09:36

Спасибо. Вместо этого они должны были зарегистрировать это как ПРЕДУПРЕЖДЕНИЕ.

heldt 28.05.2018 10:17

Думаю, в этом случае ошибка более точна. Если вы забудете удалить fit или fdescribe из своих спецификаций, я хочу, чтобы мой CI вышел из строя!

Jonas Stawski 28.08.2018 22:51

FWIW, я согласен с @heldt, осуждение обычно подразумевает альтернативу. Если на самом деле ничего не сломано и альтернативы нет, что нам делать?

Eric Liprandi 26.09.2018 02:01

@EricLiprandi Вы когда-нибудь узнали ответ? Сейчас мы сидим с точно такой же проблемой, и я даже назначил за нее награду. Действительно беспокоит такая стена молчания по такому прямому вопросу.

Konrad Viltersten 27.02.2019 14:27

@KonradViltersten, извините, я не ... Я почти уверен, что мы все еще на 2.x ... Я изучу это в ближайшие недели.

Eric Liprandi 27.02.2019 18:56

Это все еще проблема? Похоже, это было решено здесь: github.com/karma-runner/karma-jasmine/issues/202 и, возможно, связано здесь: github.com/jasmine/jasmine/issues/1532

Boris Yakubchik 28.02.2019 19:30
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Angular и React для вашего проекта веб-разработки?
Angular и React для вашего проекта веб-разработки?
Когда дело доходит до веб-разработки, выбор правильного front-end фреймворка имеет решающее значение. Angular и React - два самых популярных...
Эпизод 23/17: Twitter Space о будущем Angular, Tiny Conf
Эпизод 23/17: Twitter Space о будущем Angular, Tiny Conf
Мы провели Twitter Space, обсудив несколько проблем, связанных с последними дополнениями в Angular. Также прошла Angular Tiny Conf с 25 докладами.
Угловой продивер
Угловой продивер
Оригинал этой статьи на турецком языке. ChatGPT используется только для перевода на английский язык.
Мое недавнее углубление в Angular
Мое недавнее углубление в Angular
Недавно я провел некоторое время, изучая фреймворк Angular, и я хотел поделиться своим опытом со всеми вами. Как человек, который любит глубоко...
Освоение Observables и Subjects в Rxjs:
Освоение Observables и Subjects в Rxjs:
Давайте начнем с основ и постепенно перейдем к более продвинутым концепциям в RxJS в Angular
43
7
12 419
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

По вашей ссылке на подходят документы

fit сосредоточится на тесте или их наборе.

поэтому, если у вас есть 5 тестов, 3it и 2fit, Жасмин выполнит только 2 с подгонкой.

ERROR: 'DEPRECATION: fit and fdescribe will cause your suite to report an 'incomplete' status in Jasmine 3.0'

ERROR --> WARNING: сообщает вам, что будет работать только fit, поэтому тест неполный.

Спасибо.

Да, но когда он говорит что-то вроде осуждение, я предпочитаю запускать тесты так, чтобы до настоящего времени, а не какой-то устаревший синтаксис. Проблема OP (как и у нас) заключается в том, что, похоже, нет альтернативы, на которую можно полагаться вместо устаревшего материала.

Konrad Viltersten 01.03.2019 14:48

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

T04435 02.03.2019 00:57

На самом деле это хорошая идея. Однако, что касается вопроса, мы все равно получим предупреждение об устаревании, и меня беспокоит, что у меня нет актуальных альтернатив, на которые можно было бы перейти.

Konrad Viltersten 02.03.2019 17:49

Это особенно беспокоит, когда добавление karma-chai и прочего в ... fit или fdescribe заставляет все это перестать работать, включая те, на которых мы пытаемся сосредоточиться.

RoboticRenaissance 07.10.2020 23:53
Ответ принят как подходящий

Они исправили предупреждение, что я использую jasmine v3.3.1, и я не вижу такого сообщения.

Так что мы все еще можем использовать fit и fdescribe, пожалуйста, прочтите приведенный ниже код и комментарии к нему. Это проверено и легко понять.

//If you want to run few describe only add f so using focus those describe blocks and it's it block get run

  fdescribe("focus description i get run with all my it blocks ", function() {
    it("1 it in fdescribe get executed", function() {
        console.info("1 it in fdescribe get executed unless no fit within describe");

    });
    it("2 it in fdescribe get executed", function() {
        console.info("2 it in fdescribe get executed unless no fit within describe");

    });
    //but if you and fit in fdescribe block only the fit blocks get executed
    fit("3  only fit blocks in  fdescribe get executed", function() {
        console.info("If there is  a fit   in fdescribe only fit blocks  get executed");

    });
  });

  describe("none description i get skipped with all my it blocks ", function() {
        it("1 it in none describe get skipped", function() {
            console.info("1 it in none describe get skipped");

        });
        it("2 it in none describe get skipped", function() {
            console.info("2 it in none describe get skipped");
        });
//What happen if we had fit in a none fdescribe block will it get run ?   yes  
       fit("3 fit in none describe get executed too eventhough it;s just describe ", function() {
            console.info("3 fit in none describe get executed too");
        }); 
      });

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