{"id":230222,"date":"2022-12-05T18:11:00","date_gmt":"2022-12-05T15:11:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=230222"},"modified":"2022-11-09T20:40:25","modified_gmt":"2022-11-09T17:40:25","slug":"kui-clover-coverage-ebaonnestub-ja-moeoedub-samaaegselt","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/et\/kui-clover-coverage-ebaonnestub-ja-moeoedub-samaaegselt\/","title":{"rendered":"Kui Clover Coverage eba\u00f5nnestub ja m\u00f6\u00f6dub samaaegselt"},"content":{"rendered":"\n<p><strong><a href=\"https:\/\/github.com\/phpro\/grumphp\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">GrumPHP<\/a><\/strong> kasutamise eelistest olen r\u00e4\u00e4kinud <strong><a href=\"https:\/\/tommcfarlin.com\/the-independent-wordpress-developer\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">eelmistes postitustes<\/a><\/strong>. \u00dcks t\u00f6\u00f6riist, mida oleme viimase aasta v\u00f5i enama aasta jooksul projektides kasutanud, on <strong><a href=\"https:\/\/confluence.atlassian.com\/clover\/about-code-coverage-71599496.html\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Clover<\/a><\/strong>.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-162830-61e745c1715af.jpg\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-162830-61e745c1715af.jpg\" alt=\"Kui Clover Coverage eba\u00f5nnestub ja m\u00f6\u00f6dub samaaegselt\" ><\/a><\/p>\n<p>Quentin REY foto saidil Unsplash<\/p>\n<p>M\u00f5ni aeg selle kasutamise alustamise ja selle n\u00e4dala vahel ei \u00f5nnestunud seda alati minu kohalikus masinas k\u00e4ivitada, kuid mitte masinas, kuhu me oma koodi juurutasime.<\/p>\n<p>Ja ei, see ei olnud tingitud sellest, et \u00fcksuse testides olid valed juhised v\u00f5i kommentaarid, ega see, et <strong><a href=\"https:\/\/phpunit.de\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">PHPUnit<\/a><\/strong> oli valesti konfigureeritud (see teostas k\u00f5iki teste ja teatas neist ootusp\u00e4raselt).<\/p>\n<p>Mis siis annab?<\/p>\n<h2>Kui CloverCoverage eba\u00f5nnestub<\/h2>\n<p>Selle TL;DR versioon:<\/p>\n<p>Teil peab olema <strong><a href=\"https:\/\/xdebug.org\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Xdebug<\/a><\/strong> \u00f5igesti installitud, kuna CloverCoverage vajab korrektseks k\u00e4ivitamiseks draiverit, st Xdebugi. Probleem on selles, et kui kasutate <strong><a href=\"https:\/\/brew.sh\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Homebrew&#8217;i<\/a><\/strong>, ei saa te seda installida nii, nagu me seda korraga teha saime.<\/p>\n<p>Selle postituse \u00fclej\u00e4\u00e4nud osa juhendab teid Xdebugi installimisel, selle PHP konfiguratsioonis \u00f5igesti konfigureerimisel, PHPUniti konfiguratsiooni \u00f5igesti seadistamisel ja seej\u00e4rel kontrollimisel, et k\u00f5ik on kontrollitud, nii et j\u00e4rgmisel korral, kui GrumPHP k\u00e4ivitate, peaksite saama k\u00f5ik rohelised linnukesed .<\/p>\n<p>Ja lisaboonusena peaksite j\u00e4rgmisel PHPUniti k\u00e4ivitamisel saama kena v\u00e4limusega aruande. Siin on, mida peate tegema.<\/p>\n<p>Esiteks pange t\u00e4hele, et see p\u00f5hineb ideel, et olete:<\/p>\n<ul>\n<li>kasutades Homebrew&#8217;i,<\/li>\n<li>on installitud PHPUnit,<\/li>\n<li>on installitud PHP 7.1 (kasutan selle postituse kirjutamise ajal PHP 7.1.19),<\/li>\n<li>Clover ei t\u00f6\u00f6ta korralikult.<\/li>\n<\/ul>\n<p>M\u00f5ne asja kontrollimiseks k\u00e4ivitage <strong><a href=\"https:\/\/gist.github.com\/tommcfarlin\/3961df8f30a0117a363f5e9f0271dbd6#file-00-phpunit-version-txt\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">terminalis<\/a><\/strong> j\u00e4rgmine k\u00e4sk :<\/p>\n<p>Veenduge, et teil oleks v\u00e4hemalt PHPUnit 7.1.4.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-162830-61e745c3ef638.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-162830-61e745c3ef638.png\" alt=\"Kui Clover Coverage eba\u00f5nnestub ja m\u00f6\u00f6dub samaaegselt\" ><\/a><\/p>\n<p>J\u00e4rgmisena <strong><a href=\"https:\/\/gist.github.com\/tommcfarlin\/3961df8f30a0117a363f5e9f0271dbd6#file-01-php-version-txt\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">kontrollige oma PHP versiooni<\/a><\/strong> :<\/p>\n<p>Ja veenduge, et kasutate v\u00e4hemalt PHP 7.1.19 (teie v\u00e4ljund ei n\u00e4e v\u00e4lja t\u00e4pselt nagu minu oma, eriti kui see on seotud Xdebugiga, kuid see on selle punkti m\u00f5te).<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-162830-61e745c6881a9.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-162830-61e745c6881a9.png\" alt=\"Kui Clover Coverage eba\u00f5nnestub ja m\u00f6\u00f6dub samaaegselt\" ><\/a><\/p>\n<p>Siinkohal oleme valmis installima Xdebugi ja alustama vajalike konfiguratsioonimuudatuste tegemist.<\/p>\n<h3>1 Installige Xdebug<\/h3>\n<p>P\u00f5hjus, miks peame Xdebugi installima varasemast erinevalt, on see, et Homebrew seda enam ei toeta. \u00c4rge muretsege, sest seda on <strong><a href=\"https:\/\/pecl.php.net\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Pecl<\/a><\/strong> -i kaudu sama lihtne paigaldada .<\/p>\n<p>Selle installimiseks sisestage terminali <strong><a href=\"https:\/\/gist.github.com\/tommcfarlin\/3961df8f30a0117a363f5e9f0271dbd6#file-02-install-xdebug-txt\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">j\u00e4rgmine k\u00e4sk<\/a><\/strong> :<\/p>\n<p>Seej\u00e4rel peaksite n\u00e4gema teadet, et see on installitud ja laiendus on teie PHP konfiguratsioonifaili lisatud. Minu kogemuse j\u00e4rgi ei saa Pecl viimast sammu \u00f5igesti.<\/p>\n<h3>2 Leidke kettal Xdebugi binaarfail<\/h3>\n<p>Selle lahendamiseks peame:<\/p>\n<ol>\n<li>leidke Xdebugi laienduse t\u00e4ielik tee,<\/li>\n<li>asetage laienduse t\u00e4ielik tee meie PHP konfiguratsioonifaili<\/li>\n<\/ol>\n<p>Xdebugi asukoha leidmiseks <strong><a href=\"https:\/\/gist.github.com\/tommcfarlin\/3961df8f30a0117a363f5e9f0271dbd6#file-04-find-xdebug-txt\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">kasutage j\u00e4rgmist k\u00e4sku<\/a><\/strong> :<\/p>\n<p>Teile v\u00f5idakse tagastada mitu teed (ideaalis peaksite siiski saama ainult \u00fche). Kui saate rohkem kui \u00fche, otsige Pecl kataloogi sisaldavale teele installitud \u00fcks. <strong><a href=\"https:\/\/gist.github.com\/tommcfarlin\/3961df8f30a0117a363f5e9f0271dbd6#file-05-xdebug-txt\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">T\u00f5en\u00e4oliselt n\u00e4eb see v\u00e4lja umbes selline<\/a><\/strong> :<\/p>\n<pre><code>\/usr\/local\/lib\/php\/pecl\/20160303\/xdebug.so<\/code><\/pre>\n<p>Kui olete saanud loendi k\u00f5igist kohtadest\u00a0, kus <strong>Xdebug.so<\/strong> on installitud, kopeerige faili tee, et saaksime seadistada PHP sellele viitama ja seda \u00f5igesti kasutama.<\/p>\n<h3>3 V\u00e4rskendage PHP konfiguratsiooni<\/h3>\n<p>J\u00e4rgmiseks peame v\u00e4rskendama PHP konfiguratsiooni. Seda on lihtne teha, kuna peame lihtsalt PHP.ini faili lisama \u00fche rea. Muidugi, kui teil t\u00f6\u00f6tab mitu PHP versiooni, siis selle \u00f5igesse konfiguratsioonifaili lisamise tagamine s\u00f5ltub teie kasutatavast PHP versioonist.<\/p>\n<p>Kui teie arvutis t\u00f6\u00f6tab mitu PHP versiooni, on teil PHP konfiguratsioonifaili mitu versiooni. Kui teil on installitud \u00fcks versioon, on teil \u00fcks <strong>php.ini<\/strong> fail.<\/p>\n<p>Kui kasutate PHP 7.1, asub see tavaliselt <strong>failis \/usr\/local\/etc\/php\/7.1\/<\/strong> kui <strong>php.ini\u00a0, kuid teie asukoht v\u00f5ib veidi erineda.<\/strong> Kuid j\u00e4rgmine samm j\u00e4\u00e4b samaks.<\/p>\n<p>Kui olete seda teinud, lisage kindlasti <strong>php.ini\u00a0<\/strong> faili j\u00e4rgmine rida. See v\u00f5ib tegelikult olla faili mis tahes kohas, kuid pidage meeles, et peate lisama Xdebug.so t\u00e4ieliku kvalifitseeritud tee. Seega peaks fail sisaldama <strong><a href=\"https:\/\/gist.github.com\/tommcfarlin\/3961df8f30a0117a363f5e9f0271dbd6#file-06-php-ini\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">j\u00e4rgmist rida<\/a><\/strong> :<\/p>\n<pre><code>zend_extension=\"\/usr\/local\/lib\/php\/pecl\/20160303\/xdebug.so\"<\/code><\/pre>\n<p>Sealt edasi peaks k\u00f5ik toimima. Saate seda kontrollida <strong><a href=\"https:\/\/gist.github.com\/tommcfarlin\/3961df8f30a0117a363f5e9f0271dbd6#file-07-verify-xdebug-installation-php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">, k\u00e4ivitades<\/a><\/strong> :<\/p>\n<p>Ja siis peaksite n\u00e4gema j\u00e4rgmist teadet:<\/p>\n<blockquote>\n<p>PHP 7.1.19 (cli) (ehitatud: 25. juuni 2018 10:42:21) (NTS )<br \/>\nAutori\u00f5igus (c) 1997\u20132018 PHP Group<br \/>\nZend Engine v3.1.0, autori\u00f5igus (c) 1998\u20132018 Zend Technologies<br \/>\nkoos Xdebug v2 .6.0, autori\u00f5igus (c) 2002\u20132018, autor: Derick Rethans<br \/>\nja Zend OPcache v7.1.19, autori\u00f5igus (c) 1999\u20132018, Zend Technologies<\/p>\n<\/blockquote>\n<p>Pange t\u00e4hele neljandat rida, mis sisaldab m\u00e4rkust Xdebugi kohta. Kui n\u00e4ete seda, siis olete valmis minema.<\/p>\n<h3>4 PHPUniti seadistamine<\/h3>\n<p>Siinkohal on viimane asi, mida peate tegema, et veenduda, et teie fail phpunit.xml on \u00f5igesti konfigureeritud. <strong><a href=\"https:\/\/gist.github.com\/tommcfarlin\/3961df8f30a0117a363f5e9f0271dbd6#file-08-phpunit-xml\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Siin on lihtne n\u00e4ide<\/a><\/strong> sellest, kuidas minu oma v\u00e4lja n\u00e4eb (see h\u00f5lmab ka Cloveri tuge):<\/p>\n<pre><code>&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt;\n\n&lt;!-- http:\/\/phpunit.de\/manual\/4.1\/en\/appendixes.configuration.html --&gt;\n&lt;phpunit xmlns:xsi=\"http:\/\/www.w3.org\/2001\/XMLSchema-instance\"\n         xsi:noNamespaceSchemaLocation=\"http:\/\/schema.phpunit.de\/4.1\/phpunit.xsd\"\n         bootstrap=\".\/tests\/bootstrap.php\"\n         backupGlobals=\"false\"\n         colors=\"true\"\n         convertErrorsToExceptions=\"true\"\n         convertNoticesToExceptions=\"true\"\n         convertWarningsToExceptions=\"true\"\n&gt;\n  &lt;testsuites&gt;\n    &lt;testsuite name=\"Plugin\"&gt;\n      &lt;directory&gt;.\/tests&lt;\/directory&gt;\n      &lt;exclude&gt;.\/tests\/phpunit&lt;\/exclude&gt;\n      &lt;exclude&gt;.\/src\/WordPress\/*.php&lt;\/exclude&gt;\n    &lt;\/testsuite&gt;\n  &lt;\/testsuites&gt;\n\n  &lt;logging&gt;\n    &lt;log type=\"coverage-clover\" target=\".\/coverage-report\/coverage.xml\"&gt;&lt;\/log&gt;\n    &lt;log type=\"coverage-html\" target=\"coverage-report\" lowUpperBound=\"30\" highLowerBound=\"80\"&gt;&lt;\/log&gt;\n    &lt;log type=\"coverage-text\" target=\"php:\/\/stdout\" showUncoveredFiles=\"false\"&gt;&lt;\/log&gt;\n  &lt;\/logging&gt;\n\n  &lt;filter&gt;\n    &lt;whitelist&gt;\n      &lt;directory&gt;.\/src&lt;\/directory&gt;\n    &lt;\/whitelist&gt;\n  &lt;\/filter&gt;\n&lt;\/phpunit&gt;<\/code><\/pre>\n<p>J\u00e4rgmisena saate PHPUniti k\u00e4sitsi k\u00e4ivitada ja n\u00e4ha koodi katvuse kena v\u00e4ljundit.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-162830-61e745c93ef83.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-162830-61e745c93ef83.png\" alt=\"Kui Clover Coverage eba\u00f5nnestub ja m\u00f6\u00f6dub samaaegselt\" ><\/a><\/p>\n<p>V\u00f5i v\u00f5ite k\u00e4ivitada GrumPHP, et n\u00e4ha rohelist linnukest (eeldusel, et teie testid j\u00e4\u00e4vad <strong>failis grum.yml<\/strong> m\u00e4\u00e4ratletud vahemikku ).<\/p>\n<h2>L\u00f5pptulemus<\/h2>\n<p>Kuigi see v\u00f5ib tunduda paljude sammudena (ja ma arvan, et see nii on), ei v\u00f5ta selle seadistuse \u00f5igeks k\u00e4ivitamiseks kaua aega. Loodetavasti s\u00e4\u00e4stab \u00fclaltoodud \u00fclevaade veidi aega PHP, PHPUniti ja muuga t\u00f6\u00f6tamisel, kui CloverCoverage eba\u00f5nnestub (ja \u00f5nnestub samaaegselt pideva juurutamise ajal).<\/p>\n<p>Kirjutan praegu e-raamatut (koos mitme muu esmaklassilise sisuga). Kui olete huvitatud, <a href=\"https:\/\/tommcfarlin.com\/registration-info\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">vaadake, mida saate<\/a>.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Kui CloverCoverage eba\u00f5nnestub (ja toimib pideva juurutamise ajal samaaegselt), s\u00e4\u00e4state teid natuke aega, kui t\u00f6\u00f6tate PHP, PHPUniti ja muu sellisega, et saaksite teada, mida teete, et PHPUnit ja Clover teie s\u00fcsteemis korralikult t\u00f6\u00f6taksid. .<\/p>\n","protected":false},"author":1,"featured_media":162831,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[802],"tags":[1165],"class_list":["post-230222","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php-4","tag-affiai-et"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/posts\/230222","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/comments?post=230222"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/posts\/230222\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/media\/162831"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/media?parent=230222"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/categories?post=230222"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/tags?post=230222"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}