Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 31285|Odpoveď: 3

[Zdroj] .net/c# používa jednotkové testy xunit

[Kopírovať odkaz]
Zverejnené 22. 1. 2019 14:58:26 | | | |
Momentálne v práci. Testovacie nástroje v rámci Net frameworku zahŕňajú najmä Nunit, zabudovaný MSTest a Xunit, pričom tento článok stručne predstaví, ako používať XUnit, vychádzajúcu hviezdu vo VS.

Minimálny čas behu podporovaný xunitom je . NET 4.5.2, z ktorých väčšina je vyššia. Aj keď dokážete vytvoriť knižnicu tried 4.0, stále bude fungovať aspoň na .NET 4.5.2. Podrobné odkazy:https://github.com/xunit/xunit/issues/1817


Najprv som vytvoril nový .NET 4.5.2 konzolový projekt s názvom: itsvse-test a najnovšia verzia xunit je: 2.4.1, takže príkaz nuget je nasledovný:

Každý balík je licencovaný vaším majiteľom. NuGet nezodpovedá za balíky tretích strán a nelicencuje ich. Niektoré balíky môžu obsahovať závislosti, ktoré podliehajú iným licenciám. Kliknite na URL zdrojového kódu balíka, aby ste zistili prípadné závislosti.

Package Manager konzolový hostiteľ verzia 4.7.0.5212

Zadajte "get-help NuGet" a zobrazí sa všetky dostupné príkazy NuGet.

PM> Install-Package xunit -Version 2.4.1


Robia sa pokusy o zber a cielenie". NETFramework, Version=v4.5.2" projektu "itsvse-test" o balíku "xunit.2.4.1"
Zber informácií o závislosti trvá 2,1 sekundy
Snažím sa vyriešiť závislosť balíka "xunit.2.4.1" s DependencyBehavior ako "Najnižšie"
Parsovanie informácií o závislosti trvá 0 ms
Operácia parsovania na inštaláciu balíka "xunit.2.4.1"
Vyriešená operácia inštalácie balíka "xunit.2.4.1"
Získať balík "xunit 2.4.1" z "cnblogs"
Získajte balík "xunit.abstractions 2.0.3" z "cnblogs"
Stiahnuť balík "xunit.analyzers 0.10.0" z "cnblogs"
Retrieve package "xunit.assert 2.4.1" z "cnblogs"
Získanie balíka "xunit.core 2.4.1" z "cnblogs"
Získanie balíka "xunit.extensibility.core 2.4.1" z "cnblogs"
Získanie balíka "xunit.extensibility.execution 2.4.1" z "cnblogs"
  DOSTAŤhttps://api.nuget.org/v3-flatcon ... 1/xunit.2.4.1.nupkg
  DOSTAŤhttps://api.nuget.org/v3-flatcon ... actions.2.0.3.nupkg
  DOSTAŤhttps://api.nuget.org/v3-flatcon ... it.core.2.4.1.nupkg
  DOSTAŤhttps://api.nuget.org/v3-flatcon ... .assert.2.4.1.nupkg
  DOSTAŤhttps://api.nuget.org/v3-flatcon ... ty.core.2.4.1.nupkg
  DOSTAŤhttps://api.nuget.org/v3-flatcon ... ecution.2.4.1.nupkg
  DOSTAŤhttps://api.nuget.org/v3-flatcon ... lyzers.0.10.0.nupkg
  OKhttps://api.nuget.org/v3-flatcon ... actions.2.0.3.nupkg116 ms
  OKhttps://api.nuget.org/v3-flatcon ... 1/xunit.2.4.1.nupkg117 ms
Inštalácia xunit.abstractions 2.0.3.
Inštalujem xunit 2.4.1.
  OKhttps://api.nuget.org/v3-flatcon ... it.core.2.4.1.nupkg151 ms
Inštalujem xunit.core 2.4.1.
  OKhttps://api.nuget.org/v3-flatcon ... .assert.2.4.1.nupkg167 ms
Inštalujem xunit.assert 2.4.1.
  OKhttps://api.nuget.org/v3-flatcon ... ty.core.2.4.1.nupkg221 ms
Inštalácia xunit.extensibility.core 2.4.1.
  OKhttps://api.nuget.org/v3-flatcon ... lyzers.0.10.0.nupkg200 ms
Inštalácia xunit.analyzers 0.10.0.
  OKhttps://api.nuget.org/v3-flatcon ... ecution.2.4.1.nupkg306 ms
Inštalácia xunit.extensibility.execution 2.4.1.
Pridaním balíka "xunit.abstractions.2.0.3" do priečinka "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Balík "xunit.abstractions.2.0.3" bol pridaný do priečinka "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Pridaný balík "xunit.abstractions.2.0.3" do "packages.config"
Úspešne som nainštaloval "xunit.abstractions 2.0.3" do itsvse-test
Pridanie balíka len toolsetu "xunit.analyzers.0.10.0" do "itsvse-test"
Pridanie balíka "xunit.analyzers.0.10.0" do priečinka "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Do priečinka "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages" bol pridaný balík "xunit.analyzers.0.10.0"
Pridaný balík "xunit.analyzers.0.10.0" do "packages.config"
Skriptový súbor "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages\xunit.analyzers.0.10.0\tools\install.ps1"
"xunit.analyzers 0.10.0" bol úspešne nainštalovaný na itsvse-test
Pridanie balíka "xunit.assert.2.4.1" do priečinka "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Balík "xunit.assert.2.4.1" bol pridaný do priečinka "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Pridaný balík "xunit.assert.2.4.1" do "packages.config"
"xunit.assert 2.4.1" bol úspešne nainštalovaný do itsvse-test
Pridanie balíka "xunit.extensibility.core.2.4.1" do priečinka "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Balík "xunit.extensibility.core.2.4.1" bol pridaný do priečinka "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Pridaný balík "xunit.extensibility.core.2.4.1" do "packages.config"
"xunit.extensibility.core 2.4.1" bol úspešne nainštalovaný na ITSVSE-Test
Pridanie balíka "xunit.extensibility.execution.2.4.1" do priečinka "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Balík "xunit.extensibility.execution.2.4.1" bol pridaný do priečinka "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Pridaný balík "xunit.extensibility.execution.2.4.1" do "packages.config"
"xunit.extensibility.execution 2.4.1" bol úspešne nainštalovaný na itsvse-test
Pridanie balíka "xunit.core.2.4.1" do priečinka "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Balík "xunit.core.2.4.1" bol pridaný do priečinka "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Pridaný balík "xunit.core.2.4.1" do "packages.config"
"xunit.core 2.4.1" bol úspešne nainštalovaný na itsvse-test
Pridanie balíka "xunit.2.4.1" s iba závislosťami na projekciu "itsvse-test".
Balík "xunit.2.4.1" sa pridáva do priečinka "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Balík "xunit.2.4.1" bol pridaný do priečinka "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Balík "xunit.2.4.1" bol pridaný do "packages.config"
"Xunit 2.4.1" bol úspešne nainštalovaný na ITSVSE-Test
Nuget potreboval 5,51 sekundy na vykonanie
Uplynulý čas: 00:00:07.7781544
PM>
Nainštalujte si doplnkové balíky: xunit.runner.console (vynechané v tomto článku) a xunit.runner.visualstudio

kde xUnit je rámec,A xunit.runner.visualstudio je balík pluginov pre VS, aby sme mohli jednoducho ladiť vo VS.Inštalácia xunit.runner.console sa dá tiež ladiť pod CMDAle ak by to bolo podporované, verím, že tento framework nebude používať veľa ľudí, napokon, spôsob písania príkazov výrazne znižuje hodnotenie Visual Studia, takže to tu nebudem vysvetľovať.

Tu len inštalujeme plugin balík xunit.runner.visualstudio, pravým tlačidlom klikneme na projekt v Prieskumníku riešení a vyberieme Spravovať balíky NuGet. Vyhľadajte (a nainštalujte) balík s názvom xunit.runner.visualstudio:



Uistite sa, že je testovací prehliadač viditeľný (choďte do okna Test > > Test Explorer). Pri každom vybudovaní projektu runner objaví jednotkové testy v projekte. Po určitom období objavovania by ste mali vidieť zoznam objavených testov:



Upravte súbor programu a zmeňte nasledujúci kód:

Kliknite na odkaz v okne Spustiť všetko a mali by ste vidieť aktualizáciu výsledku v okne Prieskumníka testov pri spustení testu:



Môžete kliknúť na neúspešný test, aby ste si pozreli správu o zlyhaní a stack trace. Môžeš kliknúť na riadok stack trace a ísť priamo na zlyhaný riadok kódu.

(Koniec)





Predchádzajúci:Sleep Your Sister Alarm Clock v4.6.1 Profesionálna platená prémiová čínska verzia
Budúci:Dnešné poznámky k štúdiu C#
 Prenajímateľ| Zverejnené 22. 1. 2019 15:19:24 |
Xunit nemusí označovať testovacie triedy

xUnit podporuje vlastnosti [Fakt] aj [Teória]. Ako vidíte z kódu, [Fact] je podobný skutočnému volacieho kódu, ktorý píšeme, zatiaľ čo [Theory] s InlineData môže testovať viacero sád parametrov priamo v jednej metóde.

 Prenajímateľ| Zverejnené 22. 1. 2019 15:31:55 |
Testovanie anomálií

Xunit neoznačuje zachytenia výnimiek pomocou atribútov, ale priamo používa funkciu Assert.Throws na overenie výnimiek.

    verejná trieda TestTrieda1
    {
        [Fakt]
        test verejnej neplatnostiVýnimka()
        {
            Assert.Throws<InvalidOperationException>(() => operácia());
        }

        void operation()
        {
            throw new InvalidOperationException();
        }
    }



Zmeňte názov testovacieho prípadu:

     [Fact(DisplayName = "Max Function Test")]



Preskočte testovacie prípady:

     [fact(skip="refaktoring incomplete")]



Zoskupenie:

     [Vlastnosť ("Skupina", "Kategória")]
 Prenajímateľ| Zverejnené 22. 1. 2019 15:37:28 |
V mnohých prípadoch nechceme, aby jednotkové testy ovplyvňovali obsah databázy, a niekedy sú naše jednotkové testy veľmi pomalé kvôli vplyvu databázy, takže často chceme izolovať časť perzistencie a pri jednotkových testoch dáta naozaj neuchovávame. Tento druh izolácie Zvyčajne používame abstrakciu, teda používame rozhrania alebo abstraktné triedy na izoláciu perzistentnej vrstvy a potom používame mocky na simuláciu príslušných rozhraní alebo abstraktných tried na dokončenie príslušných perzistenčných tried. MoQ je jedným z týchto Mock frameworkov, MoQ používa C# 3.0, ktorý je jednoduchší na používanie ako NMock, je to silne typovaný spôsob, pričom zdrojový kód aj dll sú dostupnéPrihlásenie na hypertextový odkaz je viditeľné.Stiahnuť. Najnovšie vydanie MoQ je teraz verzia 3.1 a 4.0 je stále v beta verzii.
https://www.cnblogs.com/catcher1994/p/5498530.html
Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com