Мазмұны:

Сіз статикалық әдістерді сынай аласыз ба?
Сіз статикалық әдістерді сынай аласыз ба?

Бейне: Сіз статикалық әдістерді сынай аласыз ба?

Бейне: Сіз статикалық әдістерді сынай аласыз ба?
Бейне: ЛЮБОВЬ С ДОСТАВКОЙ НА ДОМ (2020). Романтическая комедия. Хит 2024, Желтоқсан
Anonim

Кімге бірлік сізді сынайды кішкене бөлігін алу керек сіздің коды, оның тәуелділіктерін қайта өткізіңіз және сынақ ол оқшауланған. Бұл қиын статикалық әдістер , олар жаһандық күйге қол жеткізген жағдайда ғана емес, тіпті егер олар басқаларды шақырады статикалық әдістер.

Осыны ескере отырып, статикалық әдістерді қалай тексересіз?

Статикалық қоңырауды мазақ ететін сынақты орнатудың төрт оңай қадамы бар:

  1. PowerMock JUnit жүгіргішін пайдаланыңыз: @RunWith(PowerMockRunner.
  2. Біз мазақ ететін сынақ сыныбын жариялаңыз:
  3. PowerMock бағдарламасына статикалық әдістерді қамтитын сыныптың атын айтыңыз:
  4. PowerMock-ке статикалық әдіске шақыруды күтуді айтып, күтулерді орнатыңыз:

Сол сияқты, C# статикалық әдістерін мазақ ете аламыз ба? 4 Жауаптар. Moq (және басқа DynamicProxy негізіндегі мазақ ету жақтаулар) мүмкін емес мазақ ету виртуалды немесе дерексіз емес кез келген нәрсе әдіс . Немесе, Қолыңнан келетін еді қоңырауларды абстракциялау үшін дизайныңызды қайта өңдеңіз статикалық әдістер , және бұл абстракцияны классыңызға тәуелділік инъекциясы арқылы беріңіз.

Осыған байланысты сіз жеке әдістерді қалай тексересіз?

Бірлік сынағы тек жалпыға қолжетімді API. Жазған кезде бірлік сынақтары , SUT клиенттерінің мінез-құлқын имитациялаңыз. Болма жеке әдістерді сынау . Немесе бірлік сынағы жалпы API көмегімен жанама түрде немесе оларды бөлек сыныптарға шығарып алыңыз және сынақ орнына сол сыныптар.

Статикалық әдіс дегеніміз не?

Java тілінде, а статикалық әдіс Бұл әдіс бұл сынып данасына емес, сыныпқа жатады. The әдіс сыныптың әрбір данасына қол жетімді, бірақ әдістері данада анықталғандарға сыныптың сол мүшесі ғана қол жеткізе алады.

Ұсынылған: