Apăsați pe aceasta: importanța instrumentelor moderne și a testării automate în dezvoltarea WordPress cu Josh Pollock

Publicat: 2022-05-12

Bun venit la Press This, podcastul comunității WordPress de la WMR. Aici gazda David Vogelpohl se așează cu invitații din întreaga comunitate pentru a vorbi despre cele mai mari probleme cu care se confruntă dezvoltatorii WordPress. Următoarea este o transcriere a înregistrării originale.

Produs de RedCircle

David Vogelpohl: Salutare tuturor și bine ați venit la Press This podcasturile comunității WordPress pe WMR. Acesta este gazda dvs., David Vogelpohl, susțin comunitatea WordPress prin rolul meu la WP Engine și îmi place să vă aduc tot ce este mai bun din comunitate să vă auziți în fiecare săptămână la presa aceasta ca un memento, mă puteți găsi pe Twitter @wpdavidv , sau vă puteți abona pentru a apăsa pe iTunes, iHeartRadio, Spotify sau puteți descărca cele mai recente episoade de pe wmr.fm. În acest episod, vom vorbi despre importanța instrumentelor moderne și a testării automate și a dezvoltării WordPress în special, desigur și ne vom alătura pentru acea conversație. Aș dori să-l prezint pe domnul Josh Pollock. Josh, bine ai venit.

Josh Pollock: Mulțumesc. Mulțumesc că m-ai primit. Ce mai faci?

DV: Bine, bine. Sunt foarte entuziasmat. să te avem în spectacole. Vorbeam cam înainte de înregistrare tu ești cel mai mult, cred că cel mai faimos WordPress Pollock dintre toți Pollocks, nu?

JP: comparativ cu Jackson Pollock, mai puțin faimos, dar da, deci nu a fost

DV: Nu pe atât de faimos WordPress ca tine. Așa că cred că l-ai avut pe Jackson acolo.

JP: nu? Da. Sunt totuși un fan al muncii lui.

DV: Ah, e bine de învățat. Pentru cei care ascultă totuși, și Josh va vorbi despre azi. Josh vine la noi din câteva domenii diferite, dar se concentrează în special pe mașina conectată. Vom vorbi puțin despre asta, dar și despre gândurile sale despre motivul pentru care instrumentele moderne de dezvoltare și testarea automată sunt foarte importante pentru dezvoltarea WordPress. Deci, dacă ești un codificator de cowboy sau cowgirl, Josh va vorbi puțin despre motivul pentru care o altă cale ar putea fi mai bună. Unele dintre instrumentele sale preferate pentru asta și cum să abordezi testarea automată cu propriile proiecte de dezvoltare WordPress. Înainte de a trece la asta, aș dori să le reamintesc oamenilor că știu că probabil ați auzit asta în episoadele anterioare. Pe 25 aprilie 2022. WP Engine va organiza conferința noastră virtuală de decodare. Îmi place să verific. Aflați mai multe despre dezvoltarea WordPress pe o varietate de subiecte. Puteți vizita evenimente la WP engine.com forward slash decode dash 2022 Bine, Josh, o să-ți pun prima întrebare pe care am pus-o tuturor oaspeților mei. Ați putea să-mi spuneți pe scurt povestea despre originea dvs. WordPress? Când ați folosit prima dată WordPress?

JP: Da, folosesc WordPress probabil pentru prima dată. Să spunem 2011 2012 pentru a scrie un blog, cum ar fi pe wordpress.com, atunci ți-a plăcut Google cum să faci ceva și au fost ca să lipiți ceva în funcții dot php. Așa că a trebuit să-mi placă să trec la WordPress găzduit singur și nu cred că am lucrat vreodată cu adevărat pe acel blog. Am fost foarte distras de partea de cod. Și asta m-a condus să mă plac comunității WordPress și să fac voluntariat cu echipa de revizuire a temei și apoi voi lucra la pods, care este un plugin care îi place Câmpuri personalizate și Tipuri de postări personalizate și are o interfață de utilizare pentru el și am primit un loc de muncă ca persoană de sprijin acolo. Cardul Scott Kingsley, dezvoltatorul principal de acolo și toți ceilalți m-au susținut cu adevărat și m-au ajutat să învăț ca dezvoltarea și m-am apucat cu adevărat de dezvoltarea plug-in de acolo. Asta e tare.

DV: Când ai fost prima dată distras de codul despre care ai spus că 2011 sau 12 a fost când ai încercat să începi un blog? A fost ca la scurt timp după aceea sau?

JP: Da, da, așa că am fost ca WordPress 2.7, cred că a fost prima versiune la care am lucrat. Adică, cred că prima versiune așa cum am folosit-o și cred că prima versiune la care am contribuit a fost ca trei puncte.

DV: Deci da, 2011 ar fi fost imediat după tipul de postare personalizat. Așa că ar fi fost un moment interesant pentru a fi în WordPress. Cred că din 237 de episoade ciudate pe care le-am făcut. Ești prima poveste de origine wordpress.com. Așa că cred că s-ar putea să ai distincția dintre asta și toți oamenii pe care i-am intervievat în acești ani, dar este destul de grozav că ai început de acolo. În blogosferă. Și apoi am trecut rapid la partea de dezvoltare ca fiind cu adevărat interesantă. Am menționat mai devreme în acel an despre mașina de plugin, ne puteți spune ce face mașina de plugin și ce faceți acolo?

JP: Da, deci acesta este un produs nou pe care îl dezvolt, știi, adică este al meu, știi, este solo-ul meu. Lucru pe care îl construiesc ca și cum aș fi un dezvoltator independent acum, cum ar fi, părțile intermediare ale poveștii sunt că am întâlnit niște oameni care lucrau la un plug in numit forme de tăiere prin poduri la o companie din jurul asta pentru o vreme. Și apoi am făcut câteva locuri de muncă în spațiul WordPress și acum sunt dezvoltator independent. Și de multe ori construiesc pluginuri WordPress pentru site-uri WordPress. De parcă nu aș fi cineva la care ați merge și să fiți, trebuie să construiesc un site pentru afacerea mea. De parcă voi construi funcționalitatea cool pentru el. Altcineva ne va construi o temă sau orice altceva și, pentru asta, pentru propriile mele proiecte, am continuat să mă gândesc la ce anume încep acest plugin? Vreau să am blocuri și vreau să mă asigur că folosesc scripturi WordPress, cum ar fi noul instrument pentru compilarea codului JavaScript, inclusiv codul React și modul în care funcționează este compatibil cu WordPress. Imediat. Este standardul WordPress. Acolo a fost ca și cum ar fi bifurcat ultimul proiect la care am lucrat iar și iar.

DV: Acesta este începutul tuturor programelor grozave, nu-i așa?

JP: Da. Așa că acest fel a dus la ceea ce eu numesc acum mașină de conectare, care este un instrument care face câteva lucruri. Primul lucru este că ajută la pornirea pluginurilor, cum ar crea tot codul de care aveți nevoie cu toate convențiile de denumire corecte în dependențe, pentru a face lucruri precum folosirea compozitorului pentru încărcarea automată PHP în dependențe sau utilizarea scripturilor WordPress pentru blocurile dvs. Toate aceste tipuri diferite de lucruri. Și asta m-a făcut să am fost întotdeauna obsedat de părțile mobile ale bug-ului în dezvoltare, de testarea automată, de crearea fișierului zip potrivit care conține toate fișierele corecte pe care le doriți, dar nu de cele pe care le aveți. nu vreau. La fel ca testele dvs. pe care doriți să le instalați. Așa că înregistrez mașini, acest fel de instrument complet pentru pornirea pluginurilor, adăugarea de funcții la pluginuri, trebuie să adaug un bloc și pagina de meniu Date și apoi să creez ca versiunea finală a pachetului care poate intra pe site-ul WordPress.

DV: Și commit cadru de dezvoltare pentru pluginuri. Bănuiesc că dacă ar trebui, să folosesc doar câteva cuvinte pentru a-l descrie. Este corect?

JP: asta e grozav. O să scriu asta. Nu, nu, aceasta este motivul pentru care îmi place să merg la podcasturi ca și cum ai fi tu, ai o modalitate grozavă de a o simplifica, ca și cum ar fi un cadru de dezvoltare pentru pluginuri WordPress, ca și cum ar fi un serviciu găzduit și un CLI pe care îl folosiți pentru a avea o interfață de utilizare în care puteți face clic cum vreau să folosesc tipuri de postări personalizate și vreau să folosesc blocuri și apoi, când sunteți în pluginul dvs., puteți să știți, să tastați comenzi rapide precum plug in machine, plugin-uri, zip grants, un fișier zip din buzunarul tău.

DV: Asemenea lucruri. Așa că îmi place când software-ul, desigur, își are originea la nevoie și într-un fel obișnuit și este destul de interesant să auzi povestea originii mașinii cu pluginuri și să apreciezi că încă te ții de el, dar cum ieși și tu" Sunteți un fel de abordare autohtonă și așa cum călătoria dvs. a început cu wordpress.com, corect, ca și cum, literalmente, niciun site web de tip cod nu va intra rapid într-o dezvoltare mai avansată. Așa că ajută-mă să înțeleg publicul nostru chiar și să înțeleagă, cum ar fi atunci când vorbești despre, citați instrumente moderne cu dezvoltarea WordPress, ce înseamnă asta pentru tine și de ce este important?

JP: Da. Deci, doar pentru contextul în care sunt aprobat de cine mă abordez, spune, sunt, știi, un dezvoltator de pluginuri WordPress, vei fi dezvoltator de aplicații web, vorbesc despre construirea de pluginuri WordPress, pluginuri personalizate pentru site-ul dvs. Acesta ar putea fi un plug unic care face ceva care nu există, știți, extinde WooCommerce într-un mod unic și interesant pentru afacerea dvs. sau pluginuri pe care oamenii le dezvoltă pentru a distribui open source sau pentru a le vinde. Și atunci când faci asta, nu știi, ca atunci când am început să construiesc pluginuri, cum ar fi Bună, îndoială, este doar un fișier. Nu ai nevoie de nimic special pentru asta. Dar, pe măsură ce acestea cresc în complexitate, începeți să aveți dependențe automate, chiar dacă doriți să utilizați pachetul de scripturi WordPress, doriți să utilizați pachetul de componente WordPress pe care îl veți folosi aceleași intrări și veți selecta tipul de controale de formular așa cum știe Gutenberg. Pe măsură ce faci asta, începi să ai nevoie de ceva care să-l instaleze automat ceva de genul NPM sau yarn și apoi ai nevoie de un instrument care poate rula automat procesul de construire pentru a crea JavaScript sigure pentru browser, scripturi web. Și apoi începi să intri în ceea ce numim testare automată, în care scriem cod suplimentar care rulează codul nostru pentru a ne asigura că rulează corect. Și există multă complexitate acolo și cred că asta îngreunează pentru că înveți aceste instrumente și înveți cum să le folosești în același timp și înveți două lucruri deodată.

DV: A fost interesant pentru că să te aud descriindu-l, folosește cuvântul automatizează-l pentru fiecare punct, așa cum ai vorbit despre modern, să-ți placă, știi, să instalezi pachete și să te ocupi de dependențe și apoi să rulezi tipul tău de suită de testare. Și se pare că știi, dacă nu ai făcut aceste piese pe parcurs, trebuie să înveți atât automatizarea, cât și ce face chestia cu software-ul pe care îl creezi. Și am văzut că este, știi, o provocare uriașă pentru mulți oameni. Sunt curios, totuși, îmi place despre acea călătorie și poate cum pot oamenii să treacă peste asta. Ne vom lua prima pauză. Vom reveni imediat. Este timpul să vă conectați la o pauză publicitară. Rămâneţi aproape. Pentru mai multe, apăsați acest lucru într-un moment. Peste toată lumea, bine ați revenit să apăsați acest podcast al comunității WordPress pe W EMR. Suntem în mijlocul unei discuții cu Josh Pollack, despre importanța instrumentelor moderne și a testării automate și a dezvoltării WordPress. Josh, chiar înainte de pauză, ai cam explicat instrumentele moderne. Ați parcurs cumva o listă cu o listă de componente cheie ale acesteia. Ați continuat să subliniați automatizarea înainte ca noi să mergem și să subliniați că oamenii trebuie să învețe atât felul de abordare automatizată, cât și felul ce fac instrumentele. A fost o provocare pentru tine? Pe măsură ce ați început să adoptați acest tip de dezvoltare?

JP: Ei bine, da, în totalitate. Sunt un tocilar pentru oameni. Urăsc partea aceea din ea. Îmi place. Dar când încerc să scriu o caracteristică, chiar atunci când creierul meu este în spațiul de, am vorbit cu un client și are nevoie de chestia asta să arate așa și să meargă aici. Îmi place să scriu cod PHP și JavaScript. Nu vreau să scriu o, știi, o configurare automată de testare sau să configurez NPM, chiar dacă sunt un tocilar pentru chestiile astea. Nu vreau să am de-a face cu asta când sunt în spațiul creierului de a face ca și munca propriu-zisă. Sunt, așa că asta a fost întotdeauna provocarea pentru mine, pentru că am fost interesat de ambele, dar este ca toată lumea, este greu de făcut deodată. Deci, ceea ce face mașina de plugin pentru mine și pentru mine, și pentru alți oameni ca mine, este să dau clic pe câteva butoane și am configurat toate piesele de acolo pentru a fi automatizate. Și când spun automat, mă refer la lucruri de genul că pot avea o singură comandă și readme-ul care configurează mediul de dezvoltare local și îmi permite să-l văd în browser și să rulez teste că am acțiuni GitHub pe care de fiecare dată când se face o modificare rulează testele în diferite medii cu diferite versiuni de WordPress, diferite versiuni PHP. pentru a verifica automat dacă codul meu este compatibil încrucișat cu toate aceste lucruri diferite. Pentru că aceasta este o provocare în WordPress. Și eu, în calitate de dezvoltator, nu trebuie să mă gândesc atât de mult la asta, deoarece sunt câteva clicuri pe buton pentru a fi configurat și apoi te uiți în readme tăiați și lipiți această comandă care face o grămadă de lucruri. Acest om face multe lucruri care vă permit să vedeți de ce

DV: De parcă ar fi o mulțime de pași în plus, o mulțime de lucruri în plus pentru a vă învăța. Este grozav să folosești un fel de cadre amânate de pe raft pentru a te apropia. Dar de ce de ce să treci prin toate aceste probleme pentru a integra unelte moderne citate în procesul tău de dezvoltare.

JP: Deci, pentru unele lucruri, este practic o cerință. Ca dacă doriți să utilizați React în WordPress pentru ceva de genul blocării, construind ca o pagină de administrare grozavă pentru pluginul dvs., având un element interactiv frontal, va trebui să utilizați instrumentele WordPress corecte pentru a compila într-un mod care nu va cauza probleme de compatibilitate cu alte componente bazate pe reacții din site-ul WordPress. Deci ești, cu cât devine din ce în ce mai mult o cerință, așa cum ai putea dori, s-ar putea să ai un plugin care există de ceva vreme și trebuie să faci unele modificări, dar nu vrei rupe lucrurile care trăsături care există deja. Cel mai bun mod de a rezolva asta este să scrieți teste automate care să descrie modul în care funcționează acum și, dacă faceți o modificare care face ca unul dintre acele teste să eșueze, opriți-vă, știți, remediați acea eroare în loc să o expediați la dvs. utilizatorii. Acesta este un alt caz în care este ca și ta, nevoia ta de a-ți face clienții fericiți și de a avea un produs stabil devine nevoia.

DV: Bine, deci acest lucru nu este chiar interesant, deoarece recent s-au discutat multe despre asta în WordPress, adică, așa cum Rob Stinson, unul dintre colegii mei aici la WP Engine, subliniază că lucrurile simple în WordPress devin mai ușoare. , cum ar fi editorul de blocuri și lucrurile grele devin din ce în ce mai dificile, cum ar fi crearea unui plugin și aveți un fel de observații acolo, știți, un fel de abordări de dezvoltare mai avansate decât în ​​trecut, în raport cu chiar și încorporarea, reacționează puțin, cum ar fi folosirea lui ca un cadru. Deci asta chiar sună adevărat. Și se pare că, deși beneficiul este timpul tău până la capăt, în special cu lucruri precum testarea automată de a trebui să-ți placă să recodezi lucrurile pe care le-ai expediat care s-au stricat și bănuiesc că, de asemenea, ca să-ți păstrezi locul de muncă dacă ești sau clienții tăi dacă expediezi. , o mulțime de schimbări de ultimă oră și presupunerea că acesta este, de asemenea, un beneficiu, ca și cum ar fi un beneficiu monetar.

JP: Da, ca și cum aș fi o persoană pe acea mașină. Sau aceasta este un fel de glumă din spatele mașinii de conectare. Ca și cum aș fi numele instantaneu. Nu mă pricep să fac același lucru iar și iar. Exact la fel. Dreapta. De aceea folosim computere. De parcă am fi exact ca, Hei, îți voi spune cum să faci cu el. Numim acest cod. Și apoi pur și simplu îl rulăm din nou și din nou, având încredere în computere să facă același lucru. Din nou și din nou, în același mod, așa că pentru mine nu vreau să fiu anxietă dacă schimbarea pe care am făcut-o a intervenit, astfel încât să o pot testa manual exact în același mod de fiecare dată și așa cum am spus la momentul potrivit. și asta este o eroare umană sau doar am un program care rulează 48 Și cu atât mai mult cred că le facem mai ușor pentru dezvoltatorii de pluginuri și teme WordPress să aibă testare automată fără ca, Oh, mi-ar plăcea, dar nu am timp să-ți dai seama cum să-l configurezi. Sunt cu atât mai mult că acele lucruri ușoare care sunt ușoare pentru utilizatorul final vor fi stabile, nu? Pentru că nu doar că vrem ca UI să fie mai ușor de utilizat sau mai ușor de învățat. Nu vrem oameni ca aceasta este plângerea despre WordPress. Îți pornești site-ul și apoi îți actualizezi pluginurile. Dreapta. Ca și cum acesta este lucrul cu care toată lumea are probleme ca nivel de utilizator. Nu este ceva ce putem rezolva direct pentru utilizatori. Este ceva pe care trebuie să-l rezolvăm în modul în care construim plug-in WordPress din modul în care testăm asta

DV: deci ca termenele limită sunt întotdeauna ca așteptările tale. Când vrei asta mâine? Dreapta? Nu cred că cineva nu mi-a spus vreodată asta cum ar fi, o, avem nevoie de el în șase luni. Nicio problemă, corect. Toată lumea vrea totul a doua zi. Și așa, echipele sunt sub această presiune. Sunt doar curios cum te gândești la scrierea de teste sau suite de teste, știi, în a oferi oamenilor un fel de târâș, alergare pe jos, există anumite domenii cheie sau îți place să începi și să încerci să scrii ceea ce îți place simțiți-vă ca o suită completă de teste sau încercați să o alegeți în anumite părți, deoarece oamenii învață cum ar fi, cum ați recomanda? să o abordezi ca și cum ai alege suita completă de teste? Scoate o bucată și apoi înveți așa? Sau cum crezi despre acea parte?

JP: Aceasta este o întrebare grozavă. Fac acest tip de consultanță cu oameni uneori în care îmi place să mă uit la codul lor și nu doar să configurez teste automate, ci îmi place să lucrez cu ei pentru a-i instrui cu privire la ceea ce ar trebui să testeze. Și de multe ori acesta este unul dintre lucrurile care îi rețin pe oameni este că se simt oarecum vinovați că nu au niciun test și apoi nu pot avea o acoperire completă a testelor. Dreapta. Și cred că este un mod ciudat de a aborda asta pentru că e ca și cum nu ai făcut nimic încă. Bineînțeles că nu aveți lucrul ca rezultat al lucrului. Și nu ai scris testul, știi, test, dar testele sunt utile, chiar dacă nu acoperă totul. Cred că asta este cu adevărat anxietatea pe care o au oamenii este că nu voi obține o acoperire completă a testului. Dacă scriu doar câteva teste. Parcă, da, dar ai avut un pas mai aproape de asta. Ai început cu asta. Ai avut ocazia să înveți cum Tesco, așa că, de exemplu, am un plugin pe care l-am scris pentru un client care adaugă o comandă rapidă. Parcă asta e tot ce face. Și așa că i-am scris și are, știți, dacă nu sunteți autentificat, vă arată un mesaj despre autentificare. Așa că am scris două teste, ambele apelează doar funcția care redă codul scurt în make sigur că nu aruncă o eroare. Acestea sunt cele mai detaliate teste din lume. Dar când le-am comis prima dată după aceea, prima mea trecere de scriere a pluginului de testare și am avut o grămadă de erori, doar de la rularea acelor teste, ca și cum tocmai în procesul de generare a codului scurt, am generat o mulțime de erori PHP și am putut să lucrez și să le fac să dispară. Și apoi asta mi-a dat încrederea în viitor că, dacă ceva este așa, una dintre cele trei sau patru părți diferite ale acelui cod scurt se sparge. Știi, asta va pisa testul.

DV: Se pare că te gândești la asta în termeni de funcționalitate cheie a software-ului pe care l-ai creat, identificând acele funcții cheie și apoi scriind teste. în jurul acestora să înceapă pentru a izola unde ar putea apărea problemele software-ului dvs. Acesta este un mod corect de a le aduce?

JP: Aș spune pentru că, da, pentru că asta începe cu două teste care spun că ceva s-a stricat, cum ar fi o acoperire foarte bună a testelor. Ați dori un test pentru fiecare parte individuală. a programului. Și deci este ca și cum un test eșuează și ești ca, bine, asta îmi spune exact unde trebuie să merg în baza de cod pentru a rezolva. Poate vei ajunge acolo, poate asta este o modalitate de a dezvolta un nou plugin de produs. Dar dacă aveți un test care are, știți, codul scurt, vă asigurați că blogul dvs. îl poate adăuga în editorul de postări. Asigurați-vă că formularul dvs. poate fi trimis și că nu face erori. Acestea acoperă atât de multe în viitor, când se sparg, știi, eșuează dintr-un motiv anume. Apoi al doilea tip de lucru care îmi place, așa că este ca prima fază. A doua fază este data viitoare când există un test de corectare a erorilor care eșuează din cauza acelui bug, apoi poate trece odată ce remediați eroarea, deoarece acum aveți un pic mai detaliat în testarea dvs. și aveți dovada că ați remediat eroarea și că au protecție împotriva apariției din nou în viitor.

DV: Îmi place să văd că folosiți genți viitoare, deoarece acestea apar ca o modalitate de a adăuga mai multă acoperire de testare și, desigur, zonele care aveau cel mai mult nevoie să corecteze lucrurile care se strică. Este o modalitate inteligentă de a genera asta ca o sugestie grozavă. Vreau să aprofundez puțin aici și să vorbesc despre această cultură a codării Wild West și WordPress. Ne vom lua ultima pauză și ne vom întoarce imediat. Este timpul să vă conectați la o pauză publicitară. Rămâneți pe fază pentru mai multe apăsări într-un moment. Toți sunt bineveniți să apăsați acest podcast al comunității WordPress pe WMR. Vorbim despre instrumente moderne pentru dezvoltatorii WordPress cu Josh Pollock. Chiar înainte de pauză, vorbeam puțin despre felul în care Josh crede că, oricum, vă abordează, vă scrieți un fel de suite de testare, concentrându-vă mai întâi pe cele mai importante funcții. Mi-a plăcut foarte mult sugestia ta, Josh, despre utilizarea unor tipuri de bug-uri în acest moment pentru a-ți îmbunătăți suita de teste. Am crezut că a fost foarte inteligent. Știi, WordPress are o cultură a codării cowboy-cowgirl, dacă vrei Wild West, să-ți ia pula, numită și Vezi o cultură a testării automate care începe să prindă rădăcini este această noțiune ca citatul ca lucrurile să devină mai dificile, cum ar fi realizarea de instrumente moderne . Ați spus și o cerință dar și această noțiune de testare automată. Simți că asta se înrădăcinează în WordPress sau mai simți că este ca și cum știi, site-ul web de cinci minute și 10 minute?

JP: Ei bine, depinde de proiect, nu? Ca și cum ar fi ceva în neregulă, așa cum ar fi grozav când poți să faci ca conectarea machine.com Ca și cum site-ul web cu WordPress chiar mă construiește chiar acum. Nu am nimic din toate acestea sub controlul versiunilor. Nu există clienți ca să existe un pic de cod personalizat ca acesta. Îmi place modificat în Hello Dolly. Dreapta. Este exact ca lucruri de la raft. Dar un gând ca și când lucram la o agenție. Toate implementările au fost automatizate, nu? Totul a fost verificat în controlul versiunilor, folosind un flux de lucru cu cerere de extragere. Și apoi, când vă îmbinați într-o ramură, site-ul va fi implementat automat. A devenit mai ușor, există mult mai multe instrumente pentru asta. Există mult mai multe gazde care, știi, susțin asta și au, știi, modalități documentate de a face acest lucru și de a obține implementări automate, de exemplu, dacă construiești un întreg site. Cred că acesta este un prim pas grozav pentru că este o oportunitate de a standardiza acea parte. Și apoi, știți, în acea conductă, începeți să adăugați teste la asta. Cred că tot mai mulți oameni fac asta. Și, știi, folosesc un client FTP pentru a trage, știi, fișiere pe un server mai devreme în această dimineață, pentru că uneori este singura modalitate de a face asta. Hm, și cred că da, cred că este din ce în ce mai bine, dar, știi, nu este destul de ușor pentru oameni. De parcă nu este, cred, pentru că asemenea compozitor nu este un concept nativ sau un corp de presă care o face mai dificilă sau NPM. Cred că mai e mult de făcut în acel spațiu. Și ca și cum sunt cu adevărat, sunt foarte interesat de acest fel. Dacă aș avea mai mult timp, aș considera că problema calmului nu este. Funcționează cu WordPress. Plumbul nu este un instrument grozav. Funcționează pentru întregul proiect, dar de parcă nu poate instala recursiv dependențe astfel de probleme

DV: Dar cum rămâne cu testul tău? Testarea pe care o folosiți la fel ca oamenii din IT de aici, deoarece cred că este un blocant mare pentru mulți oameni care încearcă să adopte dezvoltarea modernă a fost ca, știți, ce, pot folosi suite de testare? Ce instrumente de testare pot folosi? Sunt doar curios, cum ar fi, dacă aveți recomandări pentru cei care ascultă în jurul testării automate și a instrumentelor sau a suitelor sau cadrelor de testare pentru WordPress pe care le-ar putea lua în considerare

JP: Ei bine, deci pentru dezvoltatorii WordPress faci ca plugin-uri. Nu folosesc doar unitatea PHP, care este standardul pentru pluginul WordPress pentru testarea PHP. Și apoi există unele instrumente care au fost dezvoltate de Yoast, care sunt open source și ca parte a acestui lucru facilitează testarea cu unitatea PHP și toate acestea sunt configurate automat pe mașina dvs. Și apoi pentru gluma JavaScript, care este ca React. Adică, asta face parte din scripturile WP. Acestea sunt lucrurile pe care le folosesc, dar și pentru cei care ar putea dezvolta site-uri puteți face testare automată, cu instrumente precum go Students Specter sau Checkley, unde puteți programa testul așa cum aveți o extensie de browser. Apoi intri în browser, dai clic pe înregistrare și faci lucruri cum ar fi să te conectezi la site-ul tău web și să adaugi o postare sau să adaugi un bloc sau așa ceva, apoi pot rula pe site-ul tău web, din câte știi, o dată pe zi sau o dată pe săptămână. Și acesta este o modalitate de a nu face testare automată a codului, că știți, oameni care dețin site-uri web și sunt, știți, este foarte mare când clientul dvs. vă trimite un mesaj și spune: Hei, această pagină este stricata. Nu este o modalitate grozavă de a începe o interacțiune cu clientul tău. Este mult mai bine să spunem hei, verificarea noastră automată observă că ultima actualizare a spart secțiunea și deja am remediat-o.

DV: Cred că din toate episoadele moderne de flux de lucru pe care le-am făcut în acești ani. Nu cred că unei persoane i s-a introdus vreodată acest concept. Asta e chiar inteligent. Acest lucru a fost minunat. Josh, îți mulțumesc foarte mult că ni ești alături astăzi.

JP: Cu plăcere. Mulțumesc că m-ai primit.

DV: Dacă doriți să aflați mai multe despre ce face Josh, poate vă extindeți propria călătorie modernă a dezvoltatorului WordPress, consultați pluginmachine.com. Mulțumim tuturor pentru că ascultați deprimați acest podcast și WMR ale comunității WordPress. Acesta a fost gazda dumneavoastră David Vogelpohl. Sprijin comunitatea WordPress prin rolul meu la WP Engine. Și îmi place să vă aduc tot ce este mai bun din comunitate aici în fiecare săptămână pe Press This.