{"id":1980,"date":"2025-03-19T21:50:05","date_gmt":"2025-03-19T21:50:05","guid":{"rendered":"https:\/\/lisboa.wordcamp.org\/2025\/?post_type=wcb_session&#038;p=1980"},"modified":"2025-05-19T14:41:32","modified_gmt":"2025-05-19T13:41:32","slug":"test-plugin-get-hands-on-experience","status":"publish","type":"wcb_session","link":"https:\/\/lisboa.wordcamp.org\/2025\/session\/test-plugin-get-hands-on-experience\/","title":{"rendered":"Test plugin: Get hands on experience"},"content":{"rendered":"\n<p>Working on a plugin for a long time and maintaining the quality is a complex topic.<br>Automated tests are a great way to achieve this objective.<br>However, even if effective testing is a way more effective than integral manual testing, no test is better than bad automated tests.<\/p>\n\n\n\n<p>In this workshop, we&#8217;re gonna create a simple workflow to start developing with tests and keep you out of the beginner traps while testing.<\/p>\n\n\n\n<p>For that, we will learn:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>how to quickly create a development environment using wordpress env.<\/li>\n\n\n\n<li>how to track expectations about your plugin.<\/li>\n\n\n\n<li>how to implement these expectations using integration testing.<\/li>\n<\/ul>\n\n\n\n<p>All of this to test together a small plugin using some common use cases you will face for sure during your WordPress developer life.<\/p>\n\n\n\n<p>So if you want your first experience with automating tests to be a good one feel free to attempt this workshop.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Prerequisites:<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Computer with docker installed<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Setup<\/h2>\n\n\n\n<p>Follow install instructions on: <a href=\"https:\/\/github.com\/CrochetFeve0251\/workshop\">https:\/\/github.com\/CrochetFeve0251\/workshop<\/a><\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Working on a plugin for a long time and maintaining the quality is a complex topic.Automated tests are a great way to achieve this objective.However, even if effective testing is a way more effective than integral manual testing, no test is better than bad automated tests. In this workshop, we&#8217;re gonna create a simple workflow [&hellip;]<\/p>\n","protected":false},"author":18097748,"featured_media":0,"template":"","meta":{"jetpack_post_was_ever_published":false,"_wcpt_session_time":1747470600,"_wcpt_session_duration":5400,"_wcpt_session_type":"session","_wcpt_session_slides":"https:\/\/lisboa.wordcamp.org\/2025\/files\/2025\/05\/Cyrille.pdf","_wcpt_session_video":"","_wcpt_speaker_id":[1977],"footnotes":""},"session_track":[46],"session_category":[54,51],"class_list":["post-1980","wcb_session","type-wcb_session","status-publish","hentry","wcb_track-workshop","wcb_session_category-1h30min","wcb_session_category-en"],"jetpack_sharing_enabled":true,"session_date_time":{"date":"Maio 17, 2025","time":"9:30"},"session_speakers":[{"id":"1977","slug":"cyrille-coquard","name":"Cyrille Coquard","link":"https:\/\/lisboa.wordcamp.org\/2025\/speaker\/cyrille-coquard\/"}],"session_cats_rendered":"1h30min, Talk in English","_links":{"self":[{"href":"https:\/\/lisboa.wordcamp.org\/2025\/wp-json\/wp\/v2\/sessions\/1980","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lisboa.wordcamp.org\/2025\/wp-json\/wp\/v2\/sessions"}],"about":[{"href":"https:\/\/lisboa.wordcamp.org\/2025\/wp-json\/wp\/v2\/types\/wcb_session"}],"version-history":[{"count":3,"href":"https:\/\/lisboa.wordcamp.org\/2025\/wp-json\/wp\/v2\/sessions\/1980\/revisions"}],"predecessor-version":[{"id":3155,"href":"https:\/\/lisboa.wordcamp.org\/2025\/wp-json\/wp\/v2\/sessions\/1980\/revisions\/3155"}],"speakers":[{"embeddable":true,"href":"https:\/\/lisboa.wordcamp.org\/2025\/wp-json\/wp\/v2\/speakers\/1977"}],"author":[{"embeddable":true,"href":"https:\/\/lisboa.wordcamp.org\/2025\/wp-json\/wporg\/v1\/users\/coquardcyr"}],"wp:attachment":[{"href":"https:\/\/lisboa.wordcamp.org\/2025\/wp-json\/wp\/v2\/media?parent=1980"}],"wp:term":[{"taxonomy":"wcb_track","embeddable":true,"href":"https:\/\/lisboa.wordcamp.org\/2025\/wp-json\/wp\/v2\/session_track?post=1980"},{"taxonomy":"wcb_session_category","embeddable":true,"href":"https:\/\/lisboa.wordcamp.org\/2025\/wp-json\/wp\/v2\/session_category?post=1980"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}