✅ WEB ja WordPressi uudised, teemad, pistikprogrammid. Siin jagame näpunäiteid ja parimaid veebisaidi lahendusi.

Kui Clover Coverage ebaõnnestub ja möödub samaaegselt

14

GrumPHP kasutamise eelistest olen rääkinud eelmistes postitustes. Üks tööriist, mida oleme viimase aasta või enama aasta jooksul projektides kasutanud, on Clover.

Kui Clover Coverage ebaõnnestub ja möödub samaaegselt

Quentin REY foto saidil Unsplash

Mõni aeg selle kasutamise alustamise ja selle nädala vahel ei õnnestunud seda alati minu kohalikus masinas käivitada, kuid mitte masinas, kuhu me oma koodi juurutasime.

Ja ei, see ei olnud tingitud sellest, et üksuse testides olid valed juhised või kommentaarid, ega see, et PHPUnit oli valesti konfigureeritud (see teostas kõiki teste ja teatas neist ootuspäraselt).

Mis siis annab?

Kui CloverCoverage ebaõnnestub

Selle TL;DR versioon:

Teil peab olema Xdebug õigesti installitud, kuna CloverCoverage vajab korrektseks käivitamiseks draiverit, st Xdebugi. Probleem on selles, et kui kasutate Homebrew’i, ei saa te seda installida nii, nagu me seda korraga teha saime.

Selle postituse ülejäänud osa juhendab teid Xdebugi installimisel, selle PHP konfiguratsioonis õigesti konfigureerimisel, PHPUniti konfiguratsiooni õigesti seadistamisel ja seejärel kontrollimisel, et kõik on kontrollitud, nii et järgmisel korral, kui GrumPHP käivitate, peaksite saama kõik rohelised linnukesed .

Ja lisaboonusena peaksite järgmisel PHPUniti käivitamisel saama kena välimusega aruande. Siin on, mida peate tegema.

Esiteks pange tähele, et see põhineb ideel, et olete:

  • kasutades Homebrew’i,
  • on installitud PHPUnit,
  • on installitud PHP 7.1 (kasutan selle postituse kirjutamise ajal PHP 7.1.19),
  • Clover ei tööta korralikult.

Mõne asja kontrollimiseks käivitage terminalis järgmine käsk :

Veenduge, et teil oleks vähemalt PHPUnit 7.1.4.

Kui Clover Coverage ebaõnnestub ja möödub samaaegselt

Järgmisena kontrollige oma PHP versiooni :

Ja veenduge, et kasutate vähemalt PHP 7.1.19 (teie väljund ei näe välja täpselt nagu minu oma, eriti kui see on seotud Xdebugiga, kuid see on selle punkti mõte).

Kui Clover Coverage ebaõnnestub ja möödub samaaegselt

Siinkohal oleme valmis installima Xdebugi ja alustama vajalike konfiguratsioonimuudatuste tegemist.

1 Installige Xdebug

Põhjus, miks peame Xdebugi installima varasemast erinevalt, on see, et Homebrew seda enam ei toeta. Ärge muretsege, sest seda on Pecl -i kaudu sama lihtne paigaldada .

Selle installimiseks sisestage terminali järgmine käsk :

Seejärel peaksite nägema teadet, et see on installitud ja laiendus on teie PHP konfiguratsioonifaili lisatud. Minu kogemuse järgi ei saa Pecl viimast sammu õigesti.

2 Leidke kettal Xdebugi binaarfail

Selle lahendamiseks peame:

  1. leidke Xdebugi laienduse täielik tee,
  2. asetage laienduse täielik tee meie PHP konfiguratsioonifaili

Xdebugi asukoha leidmiseks kasutage järgmist käsku :

Teile võidakse tagastada mitu teed (ideaalis peaksite siiski saama ainult ühe). Kui saate rohkem kui ühe, otsige Pecl kataloogi sisaldavale teele installitud üks. Tõenäoliselt näeb see välja umbes selline :

/usr/local/lib/php/pecl/20160303/xdebug.so

Kui olete saanud loendi kõigist kohtadest , kus Xdebug.so on installitud, kopeerige faili tee, et saaksime seadistada PHP sellele viitama ja seda õigesti kasutama.

3 Värskendage PHP konfiguratsiooni

Järgmiseks peame värskendama PHP konfiguratsiooni. Seda on lihtne teha, kuna peame lihtsalt PHP.ini faili lisama ühe rea. Muidugi, kui teil töötab mitu PHP versiooni, siis selle õigesse konfiguratsioonifaili lisamise tagamine sõltub teie kasutatavast PHP versioonist.

Kui teie arvutis töötab mitu PHP versiooni, on teil PHP konfiguratsioonifaili mitu versiooni. Kui teil on installitud üks versioon, on teil üks php.ini fail.

Kui kasutate PHP 7.1, asub see tavaliselt failis /usr/local/etc/php/7.1/ kui php.ini , kuid teie asukoht võib veidi erineda. Kuid järgmine samm jääb samaks.

Kui olete seda teinud, lisage kindlasti php.ini  faili järgmine rida. See võib tegelikult olla faili mis tahes kohas, kuid pidage meeles, et peate lisama Xdebug.so täieliku kvalifitseeritud tee. Seega peaks fail sisaldama järgmist rida :

zend_extension="/usr/local/lib/php/pecl/20160303/xdebug.so"

Sealt edasi peaks kõik toimima. Saate seda kontrollida , käivitades :

Ja siis peaksite nägema järgmist teadet:

PHP 7.1.19 (cli) (ehitatud: 25. juuni 2018 10:42:21) (NTS )
Autoriõigus (c) 1997–2018 PHP Group
Zend Engine v3.1.0, autoriõigus (c) 1998–2018 Zend Technologies
koos Xdebug v2 .6.0, autoriõigus (c) 2002–2018, autor: Derick Rethans
ja Zend OPcache v7.1.19, autoriõigus (c) 1999–2018, Zend Technologies

Pange tähele neljandat rida, mis sisaldab märkust Xdebugi kohta. Kui näete seda, siis olete valmis minema.

4 PHPUniti seadistamine

Siinkohal on viimane asi, mida peate tegema, et veenduda, et teie fail phpunit.xml on õigesti konfigureeritud. Siin on lihtne näide sellest, kuidas minu oma välja näeb (see hõlmab ka Cloveri tuge):

<?xml version="1.0" encoding="UTF-8"?>

<!-- http://phpunit.de/manual/4.1/en/appendixes.configuration.html -->
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:noNamespaceSchemaLocation="http://schema.phpunit.de/4.1/phpunit.xsd"
         bootstrap="./tests/bootstrap.php"
         backupGlobals="false"
         colors="true"
         convertErrorsToExceptions="true"
         convertNoticesToExceptions="true"
         convertWarningsToExceptions="true"
>
  <testsuites>
    <testsuite name="Plugin">
      <directory>./tests</directory>
      <exclude>./tests/phpunit</exclude>
      <exclude>./src/WordPress/*.php</exclude>
    </testsuite>
  </testsuites>

  <logging>
    <log type="coverage-clover" target="./coverage-report/coverage.xml"></log>
    <log type="coverage-html" target="coverage-report" lowUpperBound="30" highLowerBound="80"></log>
    <log type="coverage-text" target="php://stdout" showUncoveredFiles="false"></log>
  </logging>

  <filter>
    <whitelist>
      <directory>./src</directory>
    </whitelist>
  </filter>
</phpunit>

Järgmisena saate PHPUniti käsitsi käivitada ja näha koodi katvuse kena väljundit.

Kui Clover Coverage ebaõnnestub ja möödub samaaegselt

Või võite käivitada GrumPHP, et näha rohelist linnukest (eeldusel, et teie testid jäävad failis grum.yml määratletud vahemikku ).

Lõpptulemus

Kuigi see võib tunduda paljude sammudena (ja ma arvan, et see nii on), ei võta selle seadistuse õigeks käivitamiseks kaua aega. Loodetavasti säästab ülaltoodud ülevaade veidi aega PHP, PHPUniti ja muuga töötamisel, kui CloverCoverage ebaõnnestub (ja õnnestub samaaegselt pideva juurutamise ajal).

Kirjutan praegu e-raamatut (koos mitme muu esmaklassilise sisuga). Kui olete huvitatud, vaadake, mida saate.

See veebisait kasutab teie kasutuskogemuse parandamiseks küpsiseid. Eeldame, et olete sellega rahul, kuid saate soovi korral loobuda. Nõustu Loe rohkem