国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Heim Backend-Entwicklung PHP-Tutorial Analyse eines PHP -Projekts mit Jenkins

Analyse eines PHP -Projekts mit Jenkins

Feb 19, 2025 am 11:41 AM

Jenkins: kontinuierliches Integrations- und Lieferwerkzeug für PHP -Projekte

Jenkins, ein open -Source -automatisierter Server, der eine Schlüsselrolle bei der kontinuierlichen Integration und der kontinuierlichen Abgabe von PHP -Projekten spielt, kann Fehler in Echtzeit und kontinuierlich Feedback -Code -Qualit?tsverbesserungsvorschl?gen erkennen und beheben.

Die Kraft der Jenkins -Integration mit PHP -Tools

Jenkins ist mit einer Vielzahl von PHP -Projekt -Tools kompatibel, einschlie?lich PHP -CodesNiffer, PHP MD, PHP CPD, PHP Depel, PHPLOC, PHPUnit und PHPDOX, und jedes Tool bietet eindeutige Codeanalyse -Erkenntnisse und -metriken. Der Vorteil von Jenkins besteht darin, dass es Diagramme und übersichten generieren kann, wodurch Probleme effizienter als das Abrufen von Befehlszeilen dargestellt werden, wodurch es einfacher ist, Probleme in Ihrem Code zu identifizieren und zu beheben.

Zus?tzlich zu den bereits eingerichteten Tools sammelt Jenkins zus?tzliche Informationen wie einen überblick über PHP -CodesNiffer-, PHP -MD- und PHP -CPD -Verst??e sowie einen überblick über ??nderungen“, die alle Commits zwischen jedem Build zeigen.

Interpretation der Jenkins -Ergebnisse: Projektansicht und Build View

Die Ergebnisse von Jenkins stammen aus verschiedenen Werkzeugen und werden an verschiedenen Stellen in der Jenkins -GUI platziert. Wir werden zwei verschiedene Seiten durchsuchen. Erstens ist die Projektansichtsseite, wobei der Projektname oben angezeigt wird. Auf dieser Seite erhalten Sie einen überblick über Ihr Projekt und k?nnen mehrere Builds problemlos vergleichen. Sie k?nnen auf diese Seite zugreifen, indem Sie auf das Element auf der Seite Standardübersicht klicken. Zus?tzlich zur Seite der Projektansicht haben wir auch eine Seite für Build -Ansicht. Sie k?nnen zu dieser Seite navigieren, indem Sie auf die Build -Nummer in der Seitenleiste klicken. Hier k?nnen Sie verschiedene Details zu diesem speziellen Build anzeigen.

In diesem Artikel wird jedes Tool und seinen Bericht Schritt für Schritt eingeführt. Schlie?lich werden wir uns auch einige der zus?tzlichen Details ansehen, die Jenkins für uns gesammelt hat. Da wir das gleiche Projekt mehrmals erstellen, wird in unserem Diagramm eine gerade Linie angezeigt. In den tats?chlichen Projekten schwankt das Diagramm.

PHP codesNiffer

codesNiffer ist ein Tool, um zu überprüfen, ob Ihr Code einen gemeinsamen Regelsatz oder Ihren eigenen benutzerdefinierten Regelsatz entspricht. In diesem Beispiel haben wir das Tool konfiguriert, das wir gegen PSR2 testen m?chten. Wir haben dies in der Datei "Build.xml" definiert.

<arg value="--standard=PSR2" />

Auf der übersichtsseite sehen Sie ein Diagramm namens "CheckStyle Trend". Dieses Diagramm stellt die Anzahl der PSR2 -Probleme in jedem Build dar. In unserem Code sind wir fast vollst?ndig pSR2 -konform, daher zeigt unser Diagramm nur ein Problem.

Analyzing a PHP Project with Jenkins

Es gibt auch ein Diagramm unter der Seite, in dem Daten aus 3 Tools kombiniert werden. CodesNiffer ist einer von ihnen.

Um zu sehen, wo sich das Problem befindet, k?nnen Sie im linken Menü des neuesten Builds auf "Checkstyle Warnings" klicken, oder auf einen bestimmten Build klicken und dann auf "CheckStyle Warnings" für diesen bestimmten Build klicken.

Analyzing a PHP Project with Jenkins

Auf dieser Seite k?nnen Sie die Beschreibung des Problems deutlich sehen. Beachten Sie, dass Sie mehrere Filter verwenden k?nnen. In der oberen Bar k?nnen Sie deutlich sehen, wie viele Probleme neu sind und wie viele behoben wurden. Sie k?nnen auf die Nummer klicken, um die ?nderungen klar anzuzeigen. In der Zusammenfassung k?nnen Sie schnell Fragen anzeigen, die durch Priorit?t eingestuft wurden.

Php MD

MD steht für Messdetektor. Dieses Tool versucht mehrere Probleme im Code anzugeben. Dies kann ein potenzieller Fehler, ein nicht verwendeter Code oder ein komplizierter Ansatz sein. Für eine vollst?ndige Liste der verfügbaren überprüfungen k?nnen Sie diese Seite anzeigen. Bitte beachten Sie, dass wir nicht jede Regel überprüfen. Sie k?nnen die Regeln definieren, um die Datei phpmd.xml zu überprüfen.

Wie PHP -CodesNiffere sehen wir ein Diagramm auf der Projektansichtsseite, das angibt, wie unsere Verwirrungserkennung im Laufe der Zeit fortschreitet.

Analyzing a PHP Project with Jenkins

Um herauszufinden, was das Problem ist, k?nnen Sie im Menü links auf "PMD -Warnungen" klicken, um zum neuesten Build zu gehen. Wenn Sie einen anderen Build sehen m?chten, klicken Sie auf einen Build und w?hlen Sie PMD -Warnungen. Sie kommen auf einer Seite an, die der Seite PHP -CodesNiffer ?hnelt.

Analyzing a PHP Project with Jenkins

An der Spitze k?nnen Sie wieder sehen, wie viele Probleme neu sind und wie viele Probleme behoben sind. Abgesehen davon k?nnen Sie die Priorit?t jeder Frage sehen.

Auf der Seite Details finden Sie weitere Informationen darüber, wo Sie das Problem finden k?nnen. Es gibt viele Registerkarten, mit denen dieselben Informationen auf unterschiedliche Weise bereitgestellt werden k?nnen. Sie k?nnen beispielsweise auf "Typen" klicken, um mehr über jeden Typ zu erfahren.

Analyzing a PHP Project with Jenkins

Wie Sie sehen k?nnen, ist "nicht verwendetes formalParameter" unser gr??tes Problem. Wenn Sie darauf klicken, werden wir erneut sehen, welche Dateien nicht verwendete Parameter haben.

php cpd

CPD steht für Kopierpaste -Detektor. Dieses Tool analysiert alle Code und sucht nach mehreren doppelten Zeilen. Wenn Sie viele doppelte Linien haben, kann dies bedeuten, dass Sie bestimmte Teile neu schreiben sollten, damit die Logik zwischen mehreren Klassen geteilt wird. Auf der Projektansichtsseite werden wir den Gesamtfortschritt in allen Builds erneut sehen.

Analyzing a PHP Project with Jenkins

Im Menü links k?nnen wir auf "Doppelte Code" klicken, um einen überblick über die gefundenen Probleme zu erhalten. Klicken Sie nach wie vor auf Build, um weitere Informationen zu diesem Build zu erhalten. Sie werden feststellen, dass die übersicht ?hnlich der vorherigen Seite aussieht. Klicken Sie auf die Registerkarte "Details", um weitere Informationen zu erhalten.

Analyzing a PHP Project with Jenkins

Wie Sie sehen, gibt es 58 Zeilen in der FirmaFilter -Klasse, die sich auch in den Klassen UserFilter und TimEcategoryFilter befinden. Basierend auf diesen Daten k?nnen Sie entscheiden, dass Sie eine Art BaseFilter- oder Implementierungsdienst ben?tigen, der die meisten aller drei Klassen abwickelt. Die L?sung h?ngt von Ihrer Situation ab. PHP CPD sagt Ihnen nur, wo das Problem gefunden wurde.

php abh?ngig

PHP Depel ist wahrscheinlich die schwierigste Metrik zu verstehen. PHP Depel führt eine statische Codeanalyse in Ihrer Codebasis durch. Es generiert 2 Bilder und eine übersichtsseite. Sie k?nnen feststellen, dass es oben auf der Seite der Projektansicht einige HTML gibt, die das Bild anzeigen sollten.

Die Tatsache, dass das Bild nicht angezeigt wird, bedeutet, dass Sie den Schalter in der Jenkins -Konfiguration umschalten müssen. Gehen Sie zu "Verwalten von Jenkins" und gehen Sie zu "Konfigurieren von Global Security". Es gibt ein Auswahlfeld, mit dem Sie "Markup -Formatierer" konfigurieren k?nnen. Stellen Sie es auf "sichere HTML" ein und speichern Sie Ihre Einstellungen. Wenn Sie jetzt zur Seite zur Projektansicht zurückkehren, werden Sie feststellen, dass die HTML in zwei Bilder konvertiert wurde.

Analyzing a PHP Project with Jenkins

Ich empfehle Ihnen, die offizielle Dokumentation dieses Tools zu lesen, um diese beiden Diagramme vollst?ndig zu verstehen. Weitere Informationen zur Pyramide erhalten Sie von diesem Link. Weitere Informationen zu abstrakten Instabilit?tsdiagrammen finden Sie in diesem Link.

Sie k?nnen weitere Details erhalten, indem Sie auf einen bestimmten Build klicken und "jdepend" im Menü links ausw?hlen. Sie erhalten den folgenden überblick.

Analyzing a PHP Project with Jenkins

Die Erkl?rung dieser Seite ist auch ziemlich gro? und komplex, daher habe ich Sie auf die offizielle Dokumentation gerichtet, in der alles erkl?rt wird.

phploc

PHPLOC ist ein Werkzeug, um die Gr??e eines Elements schnell zu messen. Es zeigt Ihnen die Gesamtzahl der Zeilen des Codes, die Gesamtzahl der statischen Methoden usw. Im Menü links klicken Sie auf ?Diagramme“, um die Ergebnisse für dieses Tool zu erhalten. Sie k?nnen 11 Diagramme verwenden, um diese Informationen zu finden. Im Folgenden sehen Sie einen Screenshot eines Diagramms, in dem die Gesamtzahl der Code- und Kommentarezeilen sowie die Gesamtzahl der Methoden, Klassen, Eigenschaften und Funktionen angegeben ist.

Analyzing a PHP Project with Jenkins

Analyzing a PHP Project with Jenkins

phpunit

Die gro?e Menge an Statistiken in Jenkins wird durch Phpunit erzeugt. Nur in der übersicht sehen Sie 3 Diagramme, die von Phpunit -Daten generiert werden.

Analyzing a PHP Project with Jenkins

Das erste Diagramm gibt an, wie viel Code vom Test abgedeckt wird. In diesem Fall sind es 71,1%. Um diese Berichterstattung zu erzeugen, verwendet der Hintergrund XDEBUG.

Das zweite Diagramm gibt Ihren Mistniveau an. Mist steht für ?nderungsrisikoanalyse und -prognose. Mist wird berechnet, indem die Komplexit?t des Codes und die Menge der auf dem Code durchgeführten Tests geprüft werden. Wenn Sie die PHP -MD -Regeln durchsuchen, haben Sie m?glicherweise festgestellt, dass PHP -MD auch die Komplexit?t des Codes überprüfen kann, aber keine Einheiten -Tests berücksichtigt. Bitte lesen Sie hier, um zu erfahren, wie PHP MD Ihre Komplexit?t berechnet.

Das endgültige Diagramm zeigt, wie viele Tests erfolgreich waren und wie viele gescheitert sind. In diesem Fall gelang es ihnen allen.

In unserem linken Seitenleistenmenü haben wir zwei Projekte von Phpunit generiert. Der erste ist Mist. Auf dieser Seite sehen Sie einen überblick über mehrere Diagramme, in denen Sie angeben, wie hoch Ihr aktuelles Mistniveau ist. Unten sehen Sie tats?chlich, welche Methoden als Mist gekennzeichnet sind. Sie werden eine Spalte bemerken, die die Abdeckung und Komplexit?t anzeigt.

Der zweite Menüelement ist "Clover HTML -Bericht". Auf dieser Seite k?nnen Sie das Verzeichnis skizzieren, wie viel Inhalt durch Ihre Unit -Tests überschrieben wird.

Analyzing a PHP Project with Jenkins

Sie k?nnen auf das Verzeichnis klicken, um Einblick in Ihren Quellcode zu erhalten. Wenn Sie zu einer Datei ankommen, k?nnen Sie sie ?ffnen und Zeile nach Zeile sehen, wie viel Inhalt überschrieben wird. Verwenden Sie die Farbe, die angibt, welche Teile getestet werden und welche Teile nicht getestet werden. Wenn Sie über eine Linie schweben, wird angeben, wie oft Ihr Unit -Test die Linie bezeichnet hat.

Analyzing a PHP Project with Jenkins

In diesem Beispiel k?nnen wir deutlich erkennen, dass der Teil der IF -Anweisung durch den Unit -Test nicht aufgerufen wird. Dies ist in diesem Fall richtig. Diese Methode führt nur GET -Anforderungen aus, nicht nach Anfragen. Wenn wir eine Postanforderung in Unit -Tests implementieren, wird diese Anweisung grün gekennzeichnet. Auf diese Weise k?nnen Sie leicht fehlende Teile Ihrer Einheiten -Tests entdecken.

phpdox

Es gibt viele Tools, um Dokumentationen basierend auf Ihrem Code und Kommentaren zu generieren. PHPDOX ist nur ein weiteres Tool, das diese Aufgabe für Sie ausführen kann. Im Menü links k?nnen Sie auf "API -Dokumentation" klicken, um zu Ihrem Dokument zu gehen. Der Vorteil von PHPDOX besteht darin, dass es auch die Ergebnisse aller anderen Tools enth?lt.

Analyzing a PHP Project with Jenkins

Mit der Navigation oben k?nnen Sie einen überblick über alle Klassen erhalten, aber Sie k?nnen auch in eine Klasse eintauchen und einen überblick über alle Methoden und Beschreibungen erhalten. Sie k?nnen auch den Dateiverlauf und den Quellcode anzeigen.

Analyzing a PHP Project with Jenkins

Andere Seiten

Zus?tzlich zu den Tools, die wir in früheren Artikeln eingerichtet haben, sammelt Jenkins zus?tzliche Informationen für Sie. Das von uns installierte Versto? -Plugin erstellt eine zus?tzliche Seite, auf der ein überblick über PHP -CodesNiffer, PHP MD und PHP CPD angezeigt wird.

Sie k?nnen auch auf einen bestimmten Build klicken und im Menü links einen Menüelement mit dem Namen "?nderungen" suchen. Wenn Sie zu dieser Seite gehen, sehen Sie einen überblick über alle Commits zwischen dem vorherigen Build und diesem Build. Wenn keine ?nderungen vorgenommen werden, ist die Seite leer.

Analyzing a PHP Project with Jenkins

Schlussfolgerung

In diesem Artikel untersuchen wir sorgf?ltig die Arten von Indikatoren, die aus allen Tools erhalten wurden. Alle Informationen, die Sie abrufen, k?nnen auch in der Befehlszeile abgerufen werden. Der Vorteil von Jenkins besteht darin, dass Sie Diagramme und übersichten erstellen k?nnen, die bessere Probleme darstellen.

Im letzten Teil werden wir einige Werkzeuge ersetzen und einige zus?tzliche Metriken hinzufügen. Wir werden uns auch ansehen, wie Sie unseren CSS-, JavaScript- und HTML -Code analysieren.

(Der FAQ -Teil wird hier weggelassen, da der Inhalt des FAQ -Teils mit dem Hauptinhalt des Artikels sehr wiederholt ist und l?nger ist, um eine Doppelarbeit zu vermeiden, wird er hier weggelassen.)

Das obige ist der detaillierte Inhalt vonAnalyse eines PHP -Projekts mit Jenkins. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erkl?rung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Hei?e KI -Werkzeuge

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?e Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie implementiere ich Authentifizierung und Autorisierung in PHP? Wie implementiere ich Authentifizierung und Autorisierung in PHP? Jun 20, 2025 am 01:03 AM

TosecurelyHandleAuthenticationAuthorizationInphp, folge theSteps: 1.Alwayshashpasswordswithpassword_hash () und password_verify (), usePreeParedStatementStopreventsQlinjapitca und StoreuserDatain $ _SessionArtelogin.2.ImplementscaChescescesc

Wie k?nnen Sie Dateien -Uploads in PHP sicher verarbeiten? Wie k?nnen Sie Dateien -Uploads in PHP sicher verarbeiten? Jun 19, 2025 am 01:05 AM

Um Datei -Uploads in PHP sicher zu verarbeiten, besteht der Kern darin, Dateitypen zu überprüfen, Dateien umzubenennen und die Berechtigungen zu beschr?nken. 1. Verwenden Sie Finfo_File (), um den realen MIME -Typ zu überprüfen, und nur bestimmte Typen wie Bild/JPEG sind zul?ssig. 2. Verwenden Sie Uniqid (), um zuf?llige Dateinamen zu generieren und sie im Root-Verzeichnis ohne Web zu speichern. 3.. Begrenzen Sie die Dateigr??e durch Php.ini- und HTML -Formulare und setzen Sie die Verzeichnisberechtigungen auf 0755; 4. Verwenden Sie Clamav, um Malware zu scannen, um die Sicherheit zu verbessern. Diese Schritte verhindern effektiv Sicherheitslücken und stellen sicher, dass der Upload -Prozess des Datei -Uploads sicher und zuverl?ssig ist.

Was sind die Unterschiede zwischen == (loser Vergleich) und === (strenger Vergleich) in PHP? Was sind die Unterschiede zwischen == (loser Vergleich) und === (strenger Vergleich) in PHP? Jun 19, 2025 am 01:07 AM

In PHP ist der Hauptunterschied zwischen == und == die Strenge der Typprüfung. == Die Konvertierung des Typs wird vor dem Vergleich durchgeführt, beispielsweise 5 == "5" gibt true zurück und === fordert an, dass der Wert und der Typ gleich sind, bevor True zurückgegeben wird, z. B. 5 === "5" gibt false zurück. In den Nutzungsszenarien ist === sicherer und sollte zuerst verwendet werden, und == wird nur verwendet, wenn die Typumwandlung erforderlich ist.

Wie führe ich arithmetische Operationen in PHP (, -, *, /, %) aus? Wie führe ich arithmetische Operationen in PHP (, -, *, /, %) aus? Jun 19, 2025 pm 05:13 PM

Die Methoden zur Verwendung grundlegender mathematischer Operationen in PHP sind wie folgt: 1. Additionszeichen unterstützen Ganzfaktoren und Floating-Punkt-Zahlen und k?nnen auch für Variablen verwendet werden. String -Nummern werden automatisch konvertiert, aber nicht für Abh?ngigkeiten empfohlen. 2. Subtraktionszeichen verwenden - Zeichen, Variablen sind gleich, und die Typumwandlung ist ebenfalls anwendbar. 3. Multiplikationszeichen verwenden * Zeichen, die für Zahlen und ?hnliche Zeichenfolgen geeignet sind; 4. Division verwendet / Zeichen, die vermeiden müssen, durch Null zu dividieren, und beachten Sie, dass das Ergebnis m?glicherweise schwimmende Punktzahlen sein kann. 5. Die Modulzeichen k?nnen verwendet werden, um ungerade und sogar Zahlen zu beurteilen, und wenn negative Zahlen verarbeitet werden, stimmen die Restzeichen mit der Dividende überein. Der Schlüssel zur korrekten Verwendung dieser Operatoren liegt darin, sicherzustellen, dass die Datentypen klar sind und die Grenzsituation gut behandelt wird.

Wie k?nnen Sie mit NoSQL -Datenbanken (z. B. MongoDB, Redis) von PHP interagieren? Wie k?nnen Sie mit NoSQL -Datenbanken (z. B. MongoDB, Redis) von PHP interagieren? Jun 19, 2025 am 01:07 AM

Ja, PHP kann mit NoSQL -Datenbanken wie MongoDB und Redis durch bestimmte Erweiterungen oder Bibliotheken interagieren. Verwenden Sie zun?chst den MongoDBPHP -Treiber (installiert über PECL oder Composer), um Client -Instanzen zu erstellen und Datenbanken und Sammlungen zu betreiben, wobei Sie Insertion, Abfrage, Aggregation und andere Vorg?nge unterstützen. Zweitens verwenden Sie die Predis Library oder PHPREDIS-Erweiterung, um eine Verbindung zu Redis herzustellen, Schlüsselwerteinstellungen und -akquisitionen durchzuführen und PHPREDIS für Hochleistungsszenarien zu empfehlen, w?hrend Predis für die schnelle Bereitstellung bequem ist. Beide sind für Produktionsumgebungen geeignet und gut dokumentiert.

Wie bleibe ich mit den neuesten PHP-Entwicklungen und Best Practices auf dem neuesten Stand? Wie bleibe ich mit den neuesten PHP-Entwicklungen und Best Practices auf dem neuesten Stand? Jun 23, 2025 am 12:56 AM

TostaycurrentwithPHPdevelopmentsandbestpractices,followkeynewssourceslikePHP.netandPHPWeekly,engagewithcommunitiesonforumsandconferences,keeptoolingupdatedandgraduallyadoptnewfeatures,andreadorcontributetoopensourceprojects.First,followreliablesource

Was ist PHP und warum wird es für die Webentwicklung verwendet? Was ist PHP und warum wird es für die Webentwicklung verwendet? Jun 23, 2025 am 12:55 AM

PHPBECAMEPOPULARFORWebDevelopmentDuetoitSeaseoflearning, Seamlessintegrationwithhtml, weit verbreitete Hostingsupport, andalargeecosystemincludingFrameWorkelaravelandcmsplatformen -?hnliche WordPress.itexcelsinformlingsformen, Managingusesersions, Interacti

Wie setzen Sie die PHP -Zeitzone? Wie setzen Sie die PHP -Zeitzone? Jun 25, 2025 am 01:00 AM

Tosettherighttimezoneinphp, usedate_default_timezone_set () functionAtthestartofyourScriptWithAvalididentifiersuchas'america/new_york'.1.usedate_default_timezone_set () beeanydate/timeFununtions.2.Alternativ, konfigurieren

See all articles