Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 31285|Απάντηση: 3

[Πηγή] .net/c# χρησιμοποιεί δοκιμές μονάδων xunit

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 22/1/2019 2:58:26 μ.μ. | | | |
Αυτή τη στιγμή σε. Τα εργαλεία δοκιμών στο πλαίσιο Net περιλαμβάνουν κυρίως το Nunit, το ενσωματωμένο MSTest και το Xunit και αυτό το άρθρο θα παρουσιάσει εν συντομία τον τρόπο χρήσης του XUnit, ενός ανερχόμενου αστεριού στο VS.

Ο ελάχιστος χρόνος εκτέλεσης που υποστηρίζεται από το xunit είναι . ΝΕΤ 4.5.2, τα περισσότερα από τα οποία είναι υψηλότερα. Ακόμα κι αν μπορείτε να δημιουργήσετε μια βιβλιοθήκη κλάσης 4.0, θα εξακολουθεί να λειτουργεί σε τουλάχιστον .NET 4.5.2. Αναλυτικοί σύνδεσμοι:https://github.com/xunit/xunit/issues/1817


Αρχικά, δημιούργησα ένα νέο έργο κονσόλας .NET 4.5.2 με το όνομα: itsvse-test και η τελευταία έκδοση του xunit είναι: 2.4.1, επομένως η εντολή nuget είναι η εξής:

Κάθε πακέτο σας έχει άδεια χρήσης από τον κάτοχό του. Η NuGet δεν είναι υπεύθυνη για πακέτα τρίτων και δεν τα αδειοδοτεί. Ορισμένα πακέτα μπορεί να περιλαμβάνουν εξαρτήσεις που υπόκεινται σε άλλες άδειες χρήσης. Κάντε κλικ στη διεύθυνση URL προέλευσης (πηγής) του πακέτου για να προσδιορίσετε τυχόν εξαρτήσεις.

Έκδοση κεντρικού υπολογιστή κονσόλας Package Manager 4.7.0.5212

Πληκτρολογήστε "get-help NuGet" για να δείτε όλες τις διαθέσιμες εντολές NuGet.

PM> Install-Package xunit -Έκδοση 2.4.1


Γίνονται προσπάθειες συλλογής και στοχοποίησης». NETFramework, Version=v4.5.2" του έργου "itsvse-test" σχετικά με το πακέτο "xunit.2.4.1"
Χρειάζονται 2,1 δευτερόλεπτα για τη συλλογή πληροφοριών εξάρτησης
Προσπαθώντας να επιλύσετε την εξάρτηση του πακέτου "xunit.2.4.1" με το DependencyBehavior ως "Χαμηλότερο"
Η ανάλυση πληροφοριών εξάρτησης διαρκεί 0 ms
Λειτουργία ανάλυσης για την εγκατάσταση του πακέτου "xunit.2.4.1"
Επιλύθηκε η λειτουργία για την εγκατάσταση του πακέτου "xunit.2.4.1"
Ανάκτηση πακέτου "xunit 2.4.1" από το "cnblogs"
Ανάκτηση πακέτου "xunit.abstractions 2.0.3" από το "cnblogs"
Ανάκτηση πακέτου "xunit.analyzers 0.10.0" από το "cnblogs"
Ανάκτηση πακέτου "xunit.assert 2.4.1" από το "cnblogs"
Ανάκτηση πακέτου "xunit.core 2.4.1" από το "cnblogs"
Ανάκτηση πακέτου "xunit.extensibility.core 2.4.1" από το "cnblogs"
Ανάκτηση πακέτου "xunit.extensibility.execution 2.4.1" από το "cnblogs"
  ΑΠΟΚΤΗΣΤΕhttps://api.nuget.org/v3-flatcon ... 1/xunit.2.4.1.nupkg
  ΑΠΟΚΤΗΣΤΕhttps://api.nuget.org/v3-flatcon ... actions.2.0.3.nupkg
  ΑΠΟΚΤΗΣΤΕhttps://api.nuget.org/v3-flatcon ... it.core.2.4.1.nupkg
  ΑΠΟΚΤΗΣΤΕhttps://api.nuget.org/v3-flatcon ... .assert.2.4.1.nupkg
  ΑΠΟΚΤΗΣΤΕhttps://api.nuget.org/v3-flatcon ... ty.core.2.4.1.nupkg
  ΑΠΟΚΤΗΣΤΕhttps://api.nuget.org/v3-flatcon ... ecution.2.4.1.nupkg
  ΑΠΟΚΤΗΣΤΕ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
Εγκατάσταση xunit.abstractions 2.0.3.
Εγκατάσταση του xunit 2.4.1.
  OKhttps://api.nuget.org/v3-flatcon ... it.core.2.4.1.nupkg151 ms
Εγκατάσταση του xunit.core 2.4.1.
  OKhttps://api.nuget.org/v3-flatcon ... .assert.2.4.1.nupkg167 ms
Εγκατάσταση του xunit.assert 2.4.1.
  OKhttps://api.nuget.org/v3-flatcon ... ty.core.2.4.1.nupkg221 ms
Εγκατάσταση του xunit.extensibility.core 2.4.1.
  OKhttps://api.nuget.org/v3-flatcon ... lyzers.0.10.0.nupkg200 ms
Εγκατάσταση xunit.analyzers 0.10.0.
  OKhttps://api.nuget.org/v3-flatcon ... ecution.2.4.1.nupkg306 ms
Εγκατάσταση του xunit.extensibility.execution 2.4.1.
Προσθήκη πακέτου "xunit.abstractions.2.0.3" στο φάκελο "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Το πακέτο "xunit.abstractions.2.0.3" έχει προστεθεί στο φάκελο "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Προστέθηκε το πακέτο "xunit.abstractions.2.0.3" στο "packages.config"
Εγκαταστάθηκε με επιτυχία το "xunit.abstractions 2.0.3" στο itsvse-test
Προσθήκη μόνο του πακέτου εργαλείων "xunit.analyzers.0.10.0" στο "itsvse-test"
Προσθήκη πακέτου "xunit.analyzers.0.10.0" στο φάκελο "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Το πακέτο "xunit.analyzers.0.10.0" έχει προστεθεί στο φάκελο "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Προστέθηκε το πακέτο "xunit.analyzers.0.10.0" στο "packages.config"
Αρχείο δέσμης ενεργειών "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages\xunit.analyzers.0.10.0\tools\install.ps1"
Το "xunit.analyzers 0.10.0" εγκαταστάθηκε με επιτυχία στο itsvse-test
Προσθήκη πακέτου "xunit.assert.2.4.1" στο φάκελο "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Το πακέτο "xunit.assert.2.4.1" έχει προστεθεί στο φάκελο "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Προστέθηκε το πακέτο "xunit.assert.2.4.1" στο "packages.config"
Το "xunit.assert 2.4.1" εγκαταστάθηκε με επιτυχία στο itsvse-test
Προσθήκη πακέτου "xunit.extensibility.core.2.4.1" στο φάκελο "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Το πακέτο "xunit.extensibility.core.2.4.1" έχει προστεθεί στο φάκελο "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Προστέθηκε το πακέτο "xunit.extensibility.core.2.4.1" στο "packages.config"
Το "xunit.extensibility.core 2.4.1" εγκαταστάθηκε με επιτυχία στο itsvse-test
Προσθήκη πακέτου "xunit.extensibility.execution.2.4.1" στο φάκελο "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Το πακέτο "xunit.extensibility.execution.2.4.1" έχει προστεθεί στο φάκελο "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Προστέθηκε το πακέτο "xunit.extensibility.execution.2.4.1" στο "packages.config"
Το "xunit.extensibility.execution 2.4.1" εγκαταστάθηκε με επιτυχία στο itsvse-test
Προσθήκη πακέτου "xunit.core.2.4.1" στο φάκελο "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Το πακέτο "xunit.core.2.4.1" έχει προστεθεί στο φάκελο "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Προστέθηκε το πακέτο "xunit.core.2.4.1" στο "packages.config"
Το "xunit.core 2.4.1" εγκαταστάθηκε με επιτυχία στο itsvse-test
Προσθήκη πακέτου "xunit.2.4.1" με μόνο εξαρτήσεις από το έργο "itsvse-test".
Το πακέτο "xunit.2.4.1" προστίθεται στο φάκελο "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Το πακέτο "xunit.2.4.1" έχει προστεθεί στο φάκελο "C:\Users\itsvse_pc\Source\Repos\itsvse-test\packages"
Το πακέτο "xunit.2.4.1" έχει προστεθεί στο "packages.config"
Το "xUnit 2.4.1" εγκαταστάθηκε με επιτυχία στο ITSVSE-Test
Ο Nuget χρειάστηκε 5.51 δευτερόλεπτα για να εκτελεστεί
Χρόνος που πέρασε: 00:00:07.7781544
ΠΜ>
Εγκαταστήστε τα πακέτα επεκτάσεων: xunit.runner.console (παραλείπεται σε αυτό το άρθρο) και xunit.runner.visualstudio

όπου xUnit είναι το πλαίσιο,Και το xunit.runner.visualstudio είναι το πακέτο προσθηκών VS, ώστε να μπορούμε εύκολα να κάνουμε εντοπισμό σφαλμάτων στο VS.Η εγκατάσταση του xunit.runner.console μπορεί επίσης να διορθωθεί στο CMDΑλλά αν υποστηρίζεται μόνο αυτό, πιστεύω ότι δεν θα χρησιμοποιήσουν πολλοί άνθρωποι αυτό το πλαίσιο, τελικά, ο τρόπος πληκτρολόγησης εντολών μειώνει σοβαρά τον βαθμό του Visual Studio, οπότε δεν θα το εξηγήσω εδώ.

Εδώ, εγκαθιστούμε μόνο το πακέτο προσθήκης xunit.runner.visualstudio, κάνουμε δεξί κλικ στο έργο στην Εξερεύνηση λύσεων και επιλέγουμε Διαχείριση πακέτων NuGet. Αναζητήστε (και εγκαταστήστε) ένα πακέτο με το όνομα xunit.runner.visualstudio:



Βεβαιωθείτε ότι το δοκιμαστικό πρόγραμμα περιήγησης είναι ορατό (μεταβείτε στο παράθυρο Test > > Test Explorer). Κάθε φορά που κατασκευάζεται ένα έργο, ο δρομέας ανακαλύπτει δοκιμές μονάδων στο έργο. Μετά από μια περίοδο ανακάλυψης, θα πρέπει να δείτε μια λίστα με τα τεστ που ανακαλύφθηκαν:



Επεξεργαστείτε το αρχείο προγράμματος και αλλάξτε τον ακόλουθο κώδικα:

Κάντε κλικ στον σύνδεσμο στο παράθυρο Εκτέλεση όλων και θα πρέπει να δείτε την ενημέρωση του αποτελέσματος στο παράθυρο Test Explorer όταν εκτελείτε τη δοκιμή:



Μπορείτε να κάνετε κλικ στην αποτυχημένη δοκιμή για να δείτε το μήνυμα αποτυχίας και το ίχνος στοίβας. Μπορείτε να κάνετε κλικ στη γραμμή ίχνους στοίβας για να μεταβείτε απευθείας στην αποτυχημένη γραμμή κώδικα.

(Τέλος)





Προηγούμενος:Ξυπνητήρι Sleep Your Sister v4.6.1 Επαγγελματική πληρωμένη premium κινεζική έκδοση
Επόμενος:Οι σημερινές σημειώσεις μελέτης C#
 Σπιτονοικοκύρης| Δημοσιεύτηκε στις 22/1/2019 3:19:24 μ.μ. |
Το Xunit δεν χρειάζεται να επισημάνει τις δοκιμαστικές

Το xUnit υποστηρίζει ιδιότητες [Fact] και [Theory]. Όπως μπορείτε να δείτε από τον κώδικα, το [Fact] είναι παρόμοιο με τον πραγματικό κωδικό κλήσης που γράφουμε, ενώ το [Theory] με το InlineData μπορεί να δοκιμάσει πολλαπλά σύνολα παραμέτρων απευθείας σε μία μέθοδο.

 Σπιτονοικοκύρης| Δημοσιεύτηκε στις 22/1/2019 3:31:55 μ.μ. |
Έλεγχος ανωμαλιών

Το Xunit δεν επισημαίνει τα αλιεύματα εξαιρέσεων μέσω των Χαρακτηριστικών, αλλά χρησιμοποιεί απευθείας τη συνάρτηση διεκδίκησης Assert.Throws για την επικύρωση εξαιρέσεων.

    δημόσια τάξη TestClass1
    {
        [Γεγονός]
        public void testException()
        {
            Assert.Throws<InvalidOperationException>(() => operation());
        }

        void λειτουργία()
        {
            ρίξε νέα InvalidOperationException();
        }
    }



Αλλάξτε το όνομα της δοκιμαστικής περίπτωσης:

     [Fact(DisplayName = "Δοκιμή μέγιστης λειτουργίας")]



Παράλειψη δοκιμαστικών περιπτώσεων:

     [fact(skip="Η ανακατασκευή δεν έχει ολοκληρωθεί")]



Ομαδοποίηση:

     [Χαρακτηριστικό("Ομάδα", "Κατηγορία")]
 Σπιτονοικοκύρης| Δημοσιεύτηκε στις 22/1/2019 3:37:28 μ.μ. |
Σε πολλές περιπτώσεις, δεν θέλουμε οι δοκιμές μονάδας να επηρεάζουν το περιεχόμενο της βάσης δεδομένων και μερικές φορές οι δοκιμές μονάδας μας θα είναι πολύ αργές λόγω του αντίκτυπου της βάσης δεδομένων, επομένως συχνά θέλουμε να απομονώσουμε το τμήμα επιμονής και να μην επιμένουμε πραγματικά τα δεδομένα όταν κάνουμε δοκιμές μονάδας. Αυτό το είδος απομόνωσης Γενικά χρησιμοποιούμε αφαίρεση, δηλαδή χρησιμοποιούμε διεπαφές ή αφηρημένες για να απομονώσουμε το επίπεδο επιμονής και, στη συνέχεια, χρησιμοποιούμε κοροϊδίες για να προσομοιώσουμε τις αντίστοιχες διεπαφές ή αφηρημένες για να ολοκληρώσουμε τις αντίστοιχες επιμονής. Το MoQ είναι ένα από αυτά τα Mock frameworks, το MoQ χρησιμοποιεί C# 3.0, το οποίο είναι πιο απλό στη χρήση από το NMock, και είναι ένας έντονα πληκτρολογημένος τρόπος και ο πηγαίος κώδικας και το dll μπορούν να προσεγγιστούνΗ σύνδεση με υπερσύνδεσμο είναι ορατή.Κατεβάστε. Η τελευταία έκδοση του MoQ είναι τώρα η έκδοση 3.1 και η 4.0 είναι ακόμα σε beta.
https://www.cnblogs.com/catcher1994/p/5498530.html
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com