Tekan Ini: Pentingnya Perkakas Modern & Pengujian Otomatis dalam Pengembangan WordPress dengan Josh Pollock

Diterbitkan: 2022-05-12

Selamat datang di Press This, podcast komunitas WordPress dari WMR. Di sini, tuan rumah David Vogelpohl duduk bersama tamu dari seluruh komunitas untuk membicarakan masalah terbesar yang dihadapi pengembang WordPress. Berikut ini adalah transkripsi dari rekaman aslinya.

Didukung oleh RedCircle

David Vogelpohl: Halo semuanya dan selamat datang di Press This podcast komunitas WordPress di WMR. Ini adalah tuan rumah Anda, David Vogelpohl, saya mendukung komunitas WordPress melalui peran saya di WP Engine, dan saya senang membawa yang terbaik dari komunitas untuk Anda dengar setiap minggu di pers ini sebagai pengingat, Anda dapat menemukan saya di Twitter @wpdavidv , atau kamu bisa berlangganan tekan ini di iTunes, iHeartRadio, Spotify, atau download episode terbaru di wmr.fm. Dalam episode ini, kita akan berbicara tentang pentingnya alat modern dan pengujian otomatis dan pengembangan WordPress khususnya, tentu saja dan bergabung dengan kami untuk percakapan itu. Saya ingin menyambut untuk menekan Tuan Josh Pollock ini. Josh, selamat datang.

Josh Pollock: Terima kasih. Terima kasih sudah menerima saya. Apa kabar?

DV: Bagus, bagus. Saya sangat bersemangat. untuk memiliki Anda di acara. Kami berbicara tentang jenis sebelum rekaman Anda yang paling, saya percaya Pollock WordPress paling terkenal dari semua Pollock, kan?

JP: dibandingkan dengan Jackson Pollock kurang terkenal, tapi ya, jadi tidak

DV: Tidak setenar WordPress seperti Anda. Jadi saya pikir Anda punya Jackson di sana.

JP: benar? Ya. Padahal saya penggemar karyanya.

DV: Ah, itu bagus untuk dipelajari. Bagi mereka yang mendengarkan, dan Josh akan membicarakannya hari ini. Josh datang kepada kami dari beberapa area berbeda tetapi terutama berfokus pada mesin plug in. Kami akan berbicara sedikit tentang itu, tetapi juga seputar pemikirannya tentang mengapa alat pengembangan modern dan pengujian otomatis sangat penting untuk pengembangan WordPress. Jadi, jika Anda seorang koboi atau pembuat kode koboi, Josh akan berbicara sedikit tentang mengapa jalan lain mungkin lebih baik. Beberapa alat favoritnya untuk itu dan cara mendekati pengujian otomatis dengan proyek pengembangan WordPress Anda sendiri. Sebelum kita membahasnya, saya ingin mengingatkan orang-orang yang saya tahu Anda mungkin pernah mendengar ini di episode sebelumnya. Pada 25 April 2022. WP Engine akan mengadakan konferensi dekode virtual kami. Seperti untuk memeriksanya. Pelajari lebih lanjut tentang pengembangan WordPress pada berbagai topik. Anda dapat mengunjungi acara di WP engine.com forward slash decode dash 2022 Baiklah, Josh, saya akan mengajukan pertanyaan pertama yang saya tanyakan kepada semua tamu saya. Bisakah Anda memberi tahu saya secara singkat kisah asal WordPress Anda? Kapan pertama kali Anda menggunakan WordPress?

JP: Ya, saya menggunakan WordPress mungkin untuk pertama kalinya. Katakanlah 2011 2012 untuk menulis blog, seperti di wordpress.com di kemudian saya Anda suka Googled bagaimana melakukan sesuatu dan mereka seperti menempelkan sesuatu ke fungsi dot php. Jadi saya harus suka pindah ke WordPress yang dihosting sendiri dan saya rasa saya tidak pernah melakukan banyak pekerjaan di blog itu. Saya benar-benar terganggu oleh seperti bagian kode. Dan itu membuat saya menyukai komunitas WordPress dan menjadi sukarelawan dengan menyukai tim peninjau tema dan kemudian saya akan bekerja di pod, yang merupakan plugin yang menyukai Bidang Kustom dan Jenis Posting Kustom dan memiliki UI untuk itu dan saya mendapat pekerjaan sebagai orang pendukung di sana. Kartu Scott Kingsley, pengembang utama di sana dan semua orang lainnya sangat mendukung dan membantu saya belajar seperti pengembangan dan saya benar-benar terlibat dalam pengembangan dari sana. Itu keren.

DV: Kapan Anda pertama kali terganggu oleh kode yang Anda katakan 2011 atau 12 ketika Anda mencoba untuk memulai sebuah blog? Apakah seperti segera setelah itu atau?

JP: Ya, ya, jadi saya sudah seperti WordPress 2.7, saya pikir itu adalah versi pertama yang saya kerjakan. Maksud saya, saya pikir versi pertama seperti yang saya gunakan dan saya pikir versi pertama yang saya sumbangkan seperti tiga titik.

DV: Jadi ya, 2011 ini akan tepat setelah jenis posting kustom. Jadi itu akan menjadi waktu yang menyenangkan untuk berada di WordPress. Saya pikir dari 237 beberapa episode aneh yang telah saya lakukan. Anda adalah cerita asal wordpress.com pertama. Jadi saya pikir Anda mungkin memiliki perbedaan dalam hal itu dan semua orang yang telah saya wawancarai tahun-tahun ini, tetapi itu cukup keren karena Anda mulai dari sana. Di blogosphere. Dan kemudian dengan cepat beralih ke sisi pengembangan sebagai hal yang sangat menarik. Saya sebutkan awal tahun itu dengan mesin plugin, bisakah Anda memberi tahu kami apa yang dilakukan mesin plugin dan apa yang Anda lakukan di sana?

JP: Ya jadi ini adalah produk baru yang saya kembangkan, maksud saya, ini milik saya, ini solo saya. hal yang saya bangun seperti saya adalah pengembang lepas sekarang, seperti, di antara bagian cerita adalah saya bertemu dengan beberapa orang yang sedang mengerjakan plug in yang disebut formulir pemotong melalui pod di sebuah perusahaan yang mengelilinginya untuk sementara waktu. Dan kemudian saya melakukan beberapa pekerjaan di ruang WordPress dan sekarang saya adalah pengembang lepas. Dan sering kali saya membuat plugin WordPress untuk situs WordPress. Seperti saya bukan seseorang yang akan Anda datangi dan menjadi seperti, saya perlu membangun sebuah situs untuk bisnis saya. Seperti saya akan membangun fungsionalitas keren untuk itu. Orang lain akan membuatkan kami tema atau apa pun dan untuk itu untuk proyek saya sendiri, saya terus terpaku pada apa yang bagaimana cara memulai plugin ini? Seperti saya ingin memiliki blok dan saya ingin memastikan bahwa saya menggunakan skrip WordPress, seperti alat baru untuk mengkompilasi kode JavaScript, termasuk kode React dan cara kerjanya kompatibel dengan WordPress. Segera. Ini adalah standar WordPress. Di situlah dia seperti mengerjakan proyek terakhir yang saya kerjakan berulang kali.

DV: Itu adalah awal dari semua perangkat lunak yang hebat, bukan?

JP: Ya. Jadi hal semacam itu mengarah pada apa yang sekarang saya sebut mesin plugging yang merupakan alat yang melakukan beberapa hal. Hal pertama adalah membantu memulai plugin seperti membuat semua kode yang Anda butuhkan dengan semua konvensi penamaan yang benar dalam dependensi untuk melakukan hal-hal seperti menggunakan composer untuk PHP autoloader dalam dependensi atau menggunakan skrip WordPress untuk blok Anda. Semua jenis hal yang berbeda ini. Dan ini membuat saya selalu terobsesi dengan bagian yang bergerak dari bug dalam pengembangan, pengujian otomatis, membuat file zip yang tepat yang memiliki semua file yang benar yang Anda inginkan di sana, tetapi bukan file yang tidak Anda miliki. tidak mau. Seperti tes Anda, Anda ingin menginstal. Jadi saya sedang mencatat mesin, alat lengkap semacam ini untuk memulai plugin, menambahkan fitur ke plugin, saya perlu menambahkan blok dan halaman menu Data dan kemudian membuat seperti versi paket akhir yang bisa masuk ke situs WordPress.

DV: Dan komit kerangka kerja pengembangan untuk plugin. Saya kira jika saya harus, seperti hanya menggunakan beberapa kata untuk menggambarkannya. Apakah itu adil?

JP: itu bagus. Aku akan menuliskannya. Tidak, tidak, inilah bagian dari mengapa saya suka membuat podcast seperti Anda, Anda, Anda memiliki cara yang bagus untuk menyederhanakannya seperti ini adalah kerangka kerja pengembangan untuk plugin WordPress, seperti layanan yang dihosting dan CLI yang Anda gunakan untuk memiliki UI di mana Anda dapat mengklik seperti Saya ingin menggunakan jenis posting khusus dan saya ingin menggunakan blok dan kemudian ketika Anda berada di plugin Anda, Anda bisa tahu, ketik perintah cepat seperti mesin plug in, plugin, hibah zip, file zip dari saku Anda.

DV: Hal-hal semacam itu. Jadi saya suka ketika perangkat lunak tentu saja berasal dari kebutuhan dan jenis cara yang biasa dan agak menarik untuk mendengar cerita asal mesin plugin menghargai Anda masih agak berpegang pada itu tetapi agak keluar dan Anda' semacam pendekatan homegrown dan seperti perjalanan Anda dimulai dengan wordpress.com, benar, seperti secara harfiah tidak ada situs web jenis kode yang akan dengan cepat masuk ke jenis pengembangan yang lebih maju. Jadi bantu saya memahami audiens kami bahkan mengerti seperti ketika Anda berbicara tentang, mengutip perkakas modern dengan pengembangan WordPress, apa artinya itu bagi Anda dan mengapa itu penting?

JP: Ya. Jadi hanya untuk konteks bagaimana saya disetujui dari siapa yang saya dekati mengatakan, saya, Anda tahu, pengembang plugin WordPress, Anda akan menjadi pengembang aplikasi web, saya sedang berbicara tentang membangun plugin WordPress, plugin khusus untuk situs Anda. Itu mungkin plug in unik yang melakukan sesuatu yang tidak ada, Anda tahu, itu memperluas WooCommerce dengan cara yang unik dan menarik untuk bisnis Anda, atau plugin yang dikembangkan orang untuk mendistribusikan open source atau untuk dijual. Jadi ketika Anda melakukan itu, Anda tidak tahu, seperti ketika saya mulai membuat plugin, seperti Halo, ragu, itu hanya satu file. Anda tidak benar-benar membutuhkan sesuatu yang istimewa untuk itu. Tetapi karena kompleksitasnya bertambah, Anda mulai memiliki dependensi otomatis, benar Anda ingin menggunakan pembuat skrip WordPress, Anda ingin menggunakan paket komponen WordPress yang akan Anda gunakan input yang sama dan pilih jenis kontrol formulir seperti yang diketahui Gutenberg. Saat Anda melakukannya, Anda mulai membutuhkan sesuatu yang dapat menginstalnya secara otomatis seperti NPM atau benang dan kemudian Anda memerlukan alat yang dapat secara otomatis menjalankan proses pembuatan untuk membuat JavaScript yang aman untuk browser, skrip web. Dan kemudian Anda mulai masuk ke apa yang kami sebut pengujian otomatis, di mana kami menulis kode tambahan yang menjalankan kode kami untuk memastikan kode itu berjalan dengan benar. Dan ada banyak kerumitan di sana dan saya pikir itu membuatnya sulit karena Anda mempelajari alat-alat ini, dan Anda belajar cara menggunakannya pada saat yang sama dan mempelajari dua hal sekaligus

DV: Itu menarik karena mendengar Anda menjelaskannya, gunakan kata otomatisasi itu untuk setiap peluru ketika Anda berbicara tentang modern untuk menyukai dari, Anda tahu, menginstal paket dan menangani dependensi dan kemudian menjalankan jenis suite pengujian Anda. Dan sepertinya Anda tahu, jika Anda belum melakukan bagian ini, Anda harus mempelajari otomatisasi dan apa yang dilakukan pada perangkat lunak yang Anda buat. Dan saya bisa melihat hal itu, Anda tahu, tantangan besar bagi banyak orang. Saya ingin tahu, seperti tentang perjalanan itu, dan mungkin bagaimana orang bisa mengatasinya. Kami akan istirahat dulu. Kami akan segera kembali. Saatnya masuk ke jeda iklan. Tetap disini. Untuk lebih lanjut, tekan ini sebentar lagi. Semua orang, selamat datang kembali untuk menekan podcast komunitas WordPress ini di W EMR. Kami sedang berbicara dengan Josh Pollack, tentang pentingnya perkakas modern dan pengujian otomatis serta pengembangan WordPress. Josh, tepat sebelum jeda, Anda menjelaskan tentang perkakas modern. Anda agak telah melalui daftar daftar jenis komponen kunci itu. Anda terus menekankan otomatisasi sebelum kami pergi dan menekankan bahwa orang harus mempelajari kedua jenis pendekatan otomatis tetapi juga jenis apa yang dilakukan alat tersebut. Apakah itu tantangan bagi Anda? Saat Anda mulai mengadopsi jenis pengembangan ini?

JP: Yah, ya, sama sekali. Dalam saya seorang kutu buku untuk seperti, orang-orang. Aku benci bagian itu. Saya menikmatinya. Tetapi ketika saya mencoba untuk menulis sebuah fitur, tepat ketika otak saya berada di ruang, saya telah berbicara dengan klien dan mereka membutuhkan hal ini untuk terlihat seperti ini dan pergi ke sini. Saya ingin suka menulis kode PHP dan JavaScript. Saya tidak ingin menulis, Anda tahu, pengaturan pengujian otomatis atau mengkonfigurasi NPM meskipun saya seorang kutu buku untuk hal itu. Saya tidak ingin menghadapinya ketika saya berada di ruang otak melakukan seperti melakukan pekerjaan yang sebenarnya. Saya ikut jadi itu selalu menjadi tantangan bagi saya karena saya tertarik pada keduanya, tapi itu seperti semua orang, sulit untuk melakukannya sekaligus. Jadi apa yang dilakukan mesin plugin untuk saya dan saya, dan untuk orang lain seperti saya, adalah saya mengklik beberapa tombol dan saya mendapatkan semua pengaturan bagian di sana semua diatur untuk otomatis. Dan ketika saya mengatakan otomatis, maksud saya hal-hal seperti saya dapat memiliki satu perintah dan readme yang mengatur lingkungan pengembangan lokal dan memungkinkan saya untuk melihatnya di browser dan menjalankan tes bahwa saya memiliki tindakan GitHub yang setiap kali dilakukan perubahan dijalankan tes di lingkungan yang berbeda dengan versi WordPress yang berbeda, versi PHP yang berbeda. untuk secara otomatis memeriksa apakah kode saya kompatibel dengan semua hal yang berbeda ini. Karena itulah tantangan di WordPress. Dan saya, sebagai pengembang, tidak perlu berpikir terlalu keras tentang hal itu karena hanya dengan beberapa klik tombol untuk menyiapkan dan kemudian Anda melihat di readme, potong dan tempel perintah ini yang melakukan banyak hal. Pria ini melakukan banyak hal yang memungkinkan Anda untuk melihat alasannya

DV: Seperti banyak langkah ekstra, banyak hal ekstra untuk Anda pikirkan. Sangat bagus untuk menggunakan semacam kerangka kerja rak untuk membuat Anda lebih dekat. Tapi seperti apa mengapa seperti mengapa melalui semua masalah ini untuk mengintegrasikan kutipan perkakas modern ke dalam proses pengembangan Anda.

JP: Jadi untuk beberapa hal, itu pada dasarnya merupakan persyaratan. Seperti jika Anda ingin menggunakan Bereaksi di dalam WordPress untuk sesuatu seperti blok, membangun seperti halaman admin yang keren untuk plugin Anda, memiliki elemen interaktif ujung depan, Anda akan perlu menggunakan alat WordPress yang benar untuk dikompilasi sedemikian rupa tidak akan menyebabkan masalah kompatibilitas dengan komponen berbasis reaksi lainnya di situs WordPress. Jadi Anda, semakin Ini menjadi seperti persyaratan yang efektif seperti yang Anda inginkan, Anda mungkin memiliki plugin yang sudah ada untuk sementara waktu, dan Anda perlu membuat beberapa perubahan, tetapi Anda tidak ingin melakukannya memecahkan hal-hal yang fitur yang sudah ada. Cara terbaik untuk mengatasinya adalah dengan menulis pengujian otomatis yang menjelaskan cara kerjanya sekarang dan jika Anda membuat perubahan yang menyebabkan salah satu pengujian tersebut gagal, hentikan pencadangan, Anda tahu, perbaiki kesalahan itu alih-alih mengirimkannya ke pengguna. Itu kasus lain di mana itu seperti Anda, kebutuhan Anda untuk membuat pelanggan Anda senang dan memiliki produk yang stabil menjadi kebutuhan.

DV: Oke, jadi ini tidak terlalu menarik karena ada banyak diskusi tentang ini baru-baru ini di WordPress, yaitu, seperti yang ditunjukkan oleh Rob Stinson, salah satu rekan kerja saya di WP Engine, hal-hal mudah di WordPress semakin mudah , seperti editor blok dan hal-hal sulit semakin sulit, seperti membuat plugin dan Anda semacam pengamatan di sana, Anda tahu, jenis pendekatan pengembangan yang lebih maju daripada yang lalu relatif bahkan menggabungkan sedikit reaksi seperti menggunakannya sebagai kerangka. Jadi itu benar. Dan sepertinya manfaatnya adalah waktu Anda untuk menyelesaikannya terutama dengan hal-hal seperti pengujian otomatis karena harus menyukai recode hal-hal yang Anda kirim yang rusak dan saya kira juga seperti mempertahankan pekerjaan Anda jika Anda atau klien Anda jika Anda mengirim , banyak melanggar perubahan dan menebak itu juga manfaat seperti ada manfaat moneter.

JP: Ya, seperti saya orang di mesin itu. Atau ini semacam lelucon di balik mesin plug in. Seperti aku nama langsung. Saya tidak pandai melakukan hal yang sama berulang-ulang. Sama persis dengan cara yang sama. Benar. Itu sebabnya kami menggunakan komputer. Seperti kita hanya seperti, Hei, saya akan memberitahu Anda bagaimana melakukannya dengan dia. Kami menyebutnya kode itu. Dan kemudian kami menjalankannya berulang kali dengan memercayai komputer untuk melakukan hal yang sama. Berkali-kali, dengan cara yang sama jadi Ini bagi saya adalah saya tidak ingin kecemasan tentang bagaimana jika perubahan yang saya buat rusak sehingga saya dapat mengujinya secara manual dengan cara yang persis sama setiap saat dan seperti yang saya katakan waktu itu benar dan itu kesalahan manusia atau saya hanya memiliki program yang berjalan 48 Dan lebih dari itu saya pikir kami mempermudah pengembang plugin dan tema WordPress untuk melakukan pengujian otomatis tanpa seperti, Oh, saya ingin tetapi saya tidak punya waktu untuk mengetahui cara mengaturnya. Saya lebih bahwa hal-hal mudah yang mudah bagi pengguna akhir akan stabil, kan? Karena bukan hanya itu kami ingin UI lebih mudah digunakan atau lebih mudah dipelajari. Kami tidak ingin orang-orang seperti ini mengeluh tentang WordPress. Anda menjalankan situs Anda dan kemudian Anda memperbarui plugin Anda. Benar. Seperti ini adalah hal yang setiap orang memiliki masalah sebagai tingkat pengguna. Ini bukan sesuatu yang bisa kami selesaikan untuk pengguna secara langsung. Ini adalah sesuatu yang harus kami pecahkan dengan cara kami membuat plugin WordPress dari cara kami mengujinya

DV: jadi seperti tenggat waktu selalu seperti harapan Anda. Seperti kapan kamu mau ini besok? Benar? Saya tidak berpikir ada orang yang pernah mengatakan itu kepada saya seperti, oh, kami membutuhkannya dalam enam bulan. Tidak ada masalah, kan. Semua orang menginginkan segalanya pada hari berikutnya. Jadi, tim berada di bawah tekanan ini. Saya hanya ingin tahu bagaimana pendapat Anda tentang menulis tes atau rangkaian tes, Anda tahu, dalam memberi orang semacam merangkak, berjalan, berlari, apakah ada beberapa area utama atau apakah Anda ingin memulai dan menyukainya, coba tulis apa yang Anda merasa sebagai rangkaian tes yang lengkap atau Anda mencoba mengambilnya di bagian-bagian tertentu saat orang-orang sedang belajar, bagaimana Anda merekomendasikannya? mengatasinya seperti pergi untuk test suite lengkap? Lepaskan sepotong dan kemudian belajar seperti itu? Atau bagaimana menurut Anda tentang bagian itu?

JP: Ini adalah pertanyaan yang bagus. Saya melakukan konsultasi semacam ini dengan orang-orang kadang-kadang di mana saya suka melihat kode mereka dan tidak hanya mengatur tes otomatis, tetapi suka bekerja dengan mereka untuk melatih mereka tentang apa yang harus mereka uji. Dan sering kali ini adalah salah satu hal yang menahan orang adalah mereka merasa bersalah karena mereka tidak menjalani tes apa pun dan kemudian mereka tidak dapat memiliki cakupan tes yang lengkap. Benar. Dan saya pikir itu cara yang aneh untuk mendekatinya karena seperti, Anda belum melakukan apa-apa. Tentu saja Anda tidak memiliki sesuatu sebagai akibat dari sesuatu itu. Dan Anda belum menulis tes, Anda tahu, tes tetapi tes itu berguna, bahkan jika itu tidak mencakup semuanya. Saya pikir itulah yang sebenarnya, kecemasan yang dimiliki orang-orang adalah saya tidak akan mendapatkan cakupan tes penuh. Jika saya hanya menulis beberapa tes. Ini seperti, ya, tetapi Anda sendiri selangkah lebih dekat dengan itu. Anda memulainya. Anda mendapat kesempatan untuk mempelajari cara Tesco jadi misalnya, saya memiliki plugin yang saya tulis untuk klien yang menambahkan pintasan. Seperti itu saja. Jadi saya menulis ke dan Anda tahu, jika Anda tidak masuk, itu menunjukkan pesan kepada Anda tentang masuk. Jadi saya menulis dua tes, keduanya hanya memanggil fungsi yang membuat kode pendek di make yakin bahwa itu tidak menimbulkan kesalahan. Itu adalah tes paling detail di dunia. Tetapi ketika saya pertama kali melakukan mereka setelah itu, saya pertama kali menulis plugin pengujian dan saya memiliki banyak kesalahan, hanya dari menjalankan tes itu, seperti baru saja dalam proses menghasilkan kode pendek, saya telah menghasilkan banyak kesalahan PHP dan saya dapat mengatasi dan menghilangkannya. Dan kemudian itu memberi saya keyakinan di masa depan bahwa jika sesuatu jadi salah satu dari tiga atau empat bagian yang berbeda dari apa yang masuk ke kode pendek itu. Anda tahu, itu akan gagal dalam ujian.

DV: Kedengarannya seperti Anda memikirkannya dalam hal seperti fungsionalitas utama dari perangkat lunak yang Anda buat, mengidentifikasi fungsi-fungsi utama tersebut dan kemudian jenis tes penulisan. di sekitar mereka untuk memulai untuk mengisolasi di mana masalah perangkat lunak Anda mungkin timbul. Apakah itu cara yang adil untuk membawa mereka?

JP: Saya akan mengatakan karena, ya, karena itu dimulai dengan dua tes yang mengatakan ada yang rusak, seperti cakupan tes yang sangat bagus. Anda ingin satu tes untuk setiap bagian individu. dari program. Jadi itu seperti satu tes gagal dan Anda seperti, oke, itu memberi tahu saya dengan tepat ke mana saya harus pergi dalam basis kode saya untuk menyelesaikannya. Mungkin Anda akan sampai di sana mungkin itu cara untuk mengembangkan plugin produk baru. Tetapi jika Anda memiliki satu tes yang melakukannya, Anda tahu, kode pendek Anda itu memastikan bahwa blog Anda dapat menambahkannya di editor posting. Pastikan formulir Anda dapat dikirimkan dan tidak membuat kesalahan. Itu menutupi begitu banyak di masa depan ketika itu rusak, Anda tahu, mereka gagal karena alasan tertentu. Kemudian jenis hal kedua yang saya suka jadi itu seperti tahap pertama. Fase kedua adalah lain kali ada tes bug yang tepat yang gagal karena bug itu kemudian dapat lulus setelah Anda memperbaiki bug karena sekarang Anda memiliki sedikit lebih detail dalam pengujian Anda, dan Anda memiliki bukti bahwa Anda memperbaiki bug dan Anda memiliki perlindungan agar tidak terjadi lagi di masa depan.

DV: Saya suka melihat Anda menggunakan tas masa depan yang muncul sebagai cara untuk menambahkan lebih banyak cakupan pengujian dan, tentu saja, area yang paling membutuhkan hal-hal yang rusak. Ini adalah cara cerdas untuk menjadikan itu sebagai saran yang bagus. Saya ingin menggali lebih dalam di sini dan berbicara tentang budaya pengkodean Wild West dan WordPress ini. Kami akan mengambil istirahat terakhir kami dan kami akan segera kembali. Saatnya masuk ke jeda iklan. Menantikan untuk lebih menekan ini hanya dalam beberapa saat. Semuanya dipersilakan kembali untuk menekan podcast komunitas WordPress ini di WMR. Kita berbicara tentang alat modern untuk pengembang WordPress dengan Josh Pollock. Tepat sebelum istirahat, kami berbicara sedikit tentang bagaimana Josh berpikir tentang pendekatan Anda seperti menulis suite pengujian Anda dengan fokus pada fungsi yang paling penting terlebih dahulu. Saya sangat menyukai saran Anda Josh tentang menggunakan jenis bug saat ini untuk meningkatkan rangkaian pengujian Anda. Saya pikir itu benar-benar pintar. Anda tahu, WordPress memiliki budaya pengkodean koboi koboi, jika Anda ingin Wild West mendapatkan penis Anda juga disebut Apakah Anda melihat budaya pengujian otomatis mulai berakar adalah gagasan seperti kutipan hal-hal sulit semakin sulit, seperti membuat perkakas modern . Anda juga mengatakan persyaratan tetapi juga gagasan pengujian otomatis ini. Apakah Anda merasa seperti itu berakar di WordPress atau apakah Anda masih merasa seperti Anda tahu, instalasi lima menit dan situs web 10 menit?

JP: Ya tergantung proyeknya ya? Seperti ada sesuatu yang salah seperti itu hebat ketika Anda dapat melakukannya seperti plug in machine.com Seperti satu situs web dengan WordPress yang benar-benar membangun sendiri sekarang. Saya tidak memiliki semua itu di bawah kontrol versi. Tidak ada pelanggan seperti ada sedikit kode khusus seperti itu. Saya suka dimodifikasi menjadi Hello Dolly. Benar. Ini seperti barang dari rak. Tapi berpikir seperti saya dulu bekerja di sebuah agensi. Mereka semua penyebaran itu otomatis, kan? Semuanya diperiksa ke kontrol versi, menggunakan alur kerja permintaan tarik. Dan kemudian ketika Anda bergabung ke satu cabang secara otomatis menyebarkan situs. Itu menjadi lebih mudah, ada lebih banyak alat untuk itu. Ada lebih banyak host yang, Anda tahu, mendukungnya dan memiliki, Anda tahu, cara terdokumentasi untuk melakukan itu dan mendapatkan penerapan otomatis seperti, jika Anda membangun seluruh situs. Saya pikir itu langkah pertama yang bagus karena itu adalah kesempatan untuk menstandardisasi bagian itu. Dan kemudian Anda tahu, di jalur itu, mulailah menambahkan tes ke dalamnya. Saya pikir semakin banyak orang yang melakukan itu. Dan, Anda tahu, saya menggunakan klien FTP untuk menyeret, Anda tahu, file ke server pagi ini, karena terkadang itu satu-satunya cara untuk melakukannya. Um, dan saya pikir, ya, saya pikir itu menjadi lebih baik tetapi, Anda tahu, itu tidak cukup mudah bagi orang-orang. Seperti tidak, saya kira, karena like composer bukanlah konsep asli atau korps pers yang mempersulit atau NPM. Saya pikir ada lebih banyak pekerjaan yang harus dilakukan di ruang itu. Dan seperti saya benar-benar saya sangat tertarik dengan cara itu. Jika saya punya lebih banyak waktu saya akan mempertimbangkan masalah ketenangan tidak. Bekerja dengan WordPress. Timbal bukanlah alat yang hebat. Ini berfungsi untuk seluruh proyek, tetapi seperti itu tidak dapat menginstal dependensi secara rekursif masalah semacam itu

DV: Tapi bagaimana dengan tes Anda? Pengujian Anda yang Anda gunakan seperti orang-orang IT di sini karena saya merasa itu adalah penghalang besar bagi banyak orang yang mencoba mengadopsi pengembangan modern seperti, Anda tahu, apa, suite pengujian yang dapat saya gunakan? Alat pengujian apa yang dapat saya gunakan? Saya hanya ingin tahu, seperti, jika Anda memiliki rekomendasi untuk orang-orang yang mendengarkan pengujian dan alat otomatis atau rangkaian pengujian atau kerangka kerja untuk WordPress yang dapat mereka pertimbangkan

JP: baik, jadi untuk pengembang WordPress Anda melakukan seperti plugin. Anda tidak saya hanya menggunakan unit PHP yang merupakan standar untuk WordPress plug di dalamnya untuk pengujian PHP. Dan kemudian ada beberapa alat yang telah dikembangkan oleh Yoast yang bersifat open source dan sebagai bagian dari itu memudahkan pengujian dengan unit PHP dan semuanya akan diatur secara otomatis di mesin Anda. Dan kemudian untuk lelucon JavaScript, yang seperti Bereaksi. Maksudku, itu bagian dari skrip WP. Itu adalah hal-hal yang saya gunakan tetapi saya juga untuk orang-orang yang mungkin melakukan pengembangan situs, Anda dapat melakukan pengujian otomatis, dengan alat seperti go student spectre atau Checkley, di mana Anda dapat memprogram pengujian dengan suka, Anda memiliki ekstensi browser. Kemudian Anda masuk ke browser, Anda mengklik rekam dan Anda melakukan hal-hal seperti masuk ke situs web Anda dan menambahkan posting atau menambahkan blok atau hal semacam itu kemudian mereka dapat berjalan di situs web Anda, setiap kali Anda tahu, sekali sehari atau seminggu sekali. Dan itulah cara untuk melakukan pengujian otomatis tanpa kode, yang Anda tahu, orang-orang yang memiliki situs web dan Anda tahu, itu sangat besar ketika klien Anda mengirimi Anda pesan dan berkata, Hei, halaman ini rusak. Itu seperti bukan cara yang bagus untuk memulai interaksi dengan klien Anda. Jauh lebih baik untuk mengatakan hai, pemberitahuan pemeriksaan otomatis kami bahwa pembaruan terakhir merusak bagian tersebut dan kami telah memperbaikinya.

DV: Saya pikir dari semua episode alur kerja modern yang telah saya lakukan selama bertahun-tahun ini. Saya tidak berpikir satu orang pernah memperkenalkan konsep itu. Itu benar-benar pintar. Ini luar biasa. Josh, terima kasih banyak telah bergabung dengan kami hari ini.

JP: Sama -sama. Terima kasih telah memilikiku.

DV: Jika Anda ingin mempelajari lebih lanjut tentang apa yang Josh lakukan mungkin memperluas perjalanan pengembang WordPress modern Anda sendiri, periksa pluginmachine.com Terima kasih semuanya telah mendengarkan podcast komunitas WordPress dan WMR ini. Ini telah menjadi tuan rumah Anda David Vogelpohl. Saya mendukung komunitas WordPress melalui peran saya di WP Engine. Dan saya senang membawa yang terbaik dari komunitas kepada Anda di sini setiap minggu di Press This.