{"id":1428,"date":"2026-04-09T07:36:53","date_gmt":"2026-04-09T07:36:53","guid":{"rendered":"https:\/\/razvanvancea.ro\/blog\/?p=1428"},"modified":"2026-04-09T07:44:28","modified_gmt":"2026-04-09T07:44:28","slug":"configuring-testidattribute-in-playwright","status":"publish","type":"post","link":"https:\/\/razvanvancea.ro\/blog\/2026\/04\/09\/configuring-testidattribute-in-playwright\/","title":{"rendered":"Configuring testIdAttribute in Playwright"},"content":{"rendered":"<div id=\"bsf_rt_marker\"><\/div>\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"1428\" class=\"elementor elementor-1428\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-07e4c2e elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"07e4c2e\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-4e6de1b\" data-id=\"4e6de1b\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-be01fa4 elementor-widget elementor-widget-text-editor\" data-id=\"be01fa4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>When writing end-to-end tests with Playwright, selectors play a very important role in making your tests stable and maintainable. One common approach\u00a0is using test IDs &#8211; explicit attributes added to your DOM purely for testing purposes.<\/p><p>By default, Playwright uses the <strong>data-testid<\/strong> attribute with <strong>page.getByTestId()<\/strong>. But what if your project uses a <strong>different<\/strong> <strong>naming<\/strong> <strong>convention<\/strong>? That is where testIdAttribute comes in.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-0e00000 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"0e00000\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-8ea840d\" data-id=\"8ea840d\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-bd41b55 elementor-widget elementor-widget-heading\" data-id=\"bd41b55\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Why customize testIdAttribute?<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-3c06f68 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"3c06f68\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-14fac72\" data-id=\"14fac72\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-c5d7c7f elementor-widget elementor-widget-text-editor\" data-id=\"c5d7c7f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>In real projects, teams often adopt their own attribute naming standards. For example:<br \/>&#8211; data-test<br \/>&#8211; id-test-data<br \/>&#8211; test-id<br \/><br \/>Instead of rewriting selectors or avoiding getByTestId(), Playwright allows you to globally configure which attribute to use.<br \/><br \/>This keeps your tests:<br \/><strong>&#8211; more readable<\/strong><br \/><strong>&#8211; easier to refactor<\/strong><br \/><strong>&#8211; consistent with your codebase conventions<\/strong><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-7d68b1d elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"7d68b1d\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-f3ca5ec\" data-id=\"f3ca5ec\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-9c2f19d elementor-widget elementor-widget-heading\" data-id=\"9c2f19d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">How to configure it?<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-ea0e41a elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"ea0e41a\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-ae2a4e8\" data-id=\"ae2a4e8\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-19b1de9 elementor-widget elementor-widget-text-editor\" data-id=\"19b1de9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Playwright introduced the testIdAttribute option in v1.27, making customization straightforward.<br \/><br \/>Here is how you can set it up:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-50ac957 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"50ac957\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-c2cbda4\" data-id=\"c2cbda4\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-de0801f elementor-widget elementor-widget-image\" data-id=\"de0801f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"438\" height=\"168\" src=\"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2026\/04\/Screenshot-2026-04-09-at-10.41.04.png\" class=\"attachment-large size-large wp-image-1430\" alt=\"pw-data-test-id\" srcset=\"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2026\/04\/Screenshot-2026-04-09-at-10.41.04.png 438w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2026\/04\/Screenshot-2026-04-09-at-10.41.04-300x115.png 300w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2026\/04\/Screenshot-2026-04-09-at-10.41.04-24x9.png 24w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2026\/04\/Screenshot-2026-04-09-at-10.41.04-36x14.png 36w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2026\/04\/Screenshot-2026-04-09-at-10.41.04-48x18.png 48w\" sizes=\"(max-width: 438px) 100vw, 438px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-563ac04 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"563ac04\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-21a3af6\" data-id=\"21a3af6\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-b985ce8 elementor-widget elementor-widget-text-editor\" data-id=\"b985ce8\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Once configured, this line:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-4e4d290 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"4e4d290\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-f2368df\" data-id=\"f2368df\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-5a9c103 elementor-widget elementor-widget-image\" data-id=\"5a9c103\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"390\" height=\"31\" src=\"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2026\/04\/Screenshot-2026-04-09-at-10.41.50.png\" class=\"attachment-large size-large wp-image-1431\" alt=\"\" srcset=\"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2026\/04\/Screenshot-2026-04-09-at-10.41.50.png 390w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2026\/04\/Screenshot-2026-04-09-at-10.41.50-300x24.png 300w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2026\/04\/Screenshot-2026-04-09-at-10.41.50-24x2.png 24w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2026\/04\/Screenshot-2026-04-09-at-10.41.50-36x3.png 36w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2026\/04\/Screenshot-2026-04-09-at-10.41.50-48x4.png 48w\" sizes=\"(max-width: 390px) 100vw, 390px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-c3069c4 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"c3069c4\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-33a318e\" data-id=\"33a318e\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-4898d69 elementor-widget elementor-widget-text-editor\" data-id=\"4898d69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>will now target:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-472d67c elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"472d67c\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-8a41243\" data-id=\"8a41243\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-53cd5ca elementor-widget elementor-widget-image\" data-id=\"53cd5ca\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"461\" height=\"57\" src=\"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2026\/04\/Screenshot-2026-04-09-at-10.42.30.png\" class=\"attachment-large size-large wp-image-1432\" alt=\"data-test-id-html\" srcset=\"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2026\/04\/Screenshot-2026-04-09-at-10.42.30.png 461w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2026\/04\/Screenshot-2026-04-09-at-10.42.30-300x37.png 300w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2026\/04\/Screenshot-2026-04-09-at-10.42.30-24x3.png 24w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2026\/04\/Screenshot-2026-04-09-at-10.42.30-36x4.png 36w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2026\/04\/Screenshot-2026-04-09-at-10.42.30-48x6.png 48w\" sizes=\"(max-width: 461px) 100vw, 461px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-98a64d7 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"98a64d7\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-f261a3d\" data-id=\"f261a3d\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-9ad7e9a elementor-widget elementor-widget-heading\" data-id=\"9ad7e9a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Conclusion<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-936503a elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"936503a\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-ef69acb\" data-id=\"ef69acb\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-8891946 elementor-widget elementor-widget-text-editor\" data-id=\"8891946\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>The <strong>testIdAttribute<\/strong> option is a small but powerful feature in Playwright. It allows your testing strategy to align with your application&#8217;s structure without sacrificing clarity or maintainability.<\/p><p>If your team values consistency and clean test code, this is a configuration worth setting early on.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-98dc0d1 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"98dc0d1\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-fbc9f6e\" data-id=\"fbc9f6e\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-ad9af2f elementor-widget elementor-widget-spacer\" data-id=\"ad9af2f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-ec196aa elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"ec196aa\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-e445e92\" data-id=\"e445e92\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-ecf1d18 elementor-widget elementor-widget-text-editor\" data-id=\"ecf1d18\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Enjoyed this article?<br \/>I share more practical automation tips on\u00a0<a href=\"https:\/\/www.youtube.com\/c\/LearnwithRV\/videos\" target=\"_blank\" rel=\"noopener\"><strong>YouTube<\/strong><\/a>\u00a0and\u00a0<a href=\"https:\/\/www.linkedin.com\/in\/razvanvancea\/\" target=\"_blank\" rel=\"noopener\"><strong>LinkedIn<\/strong><\/a>.<\/p><p><strong>Need structured guidance instead of learning alone?<\/strong><br \/>I offer\u00a0<strong>1-on-1 mentoring<\/strong>\u00a0&#8211; learn more \u2192\u00a0<strong><a href=\"https:\/\/razvanvancea.ro\/1on1.html\" target=\"_blank\" rel=\"noopener\">HERE<\/a><\/strong><\/p><p>Or email me at\u00a0<strong>iamqarv [at] gmail [dot] com<\/strong><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>When writing end-to-end tests with Playwright, selectors play a very important role in making your&#8230;<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[1],"tags":[],"class_list":["post-1428","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"When writing end-to-end tests with Playwright, selectors play a very important role in making your tests stable and maintainable. One common approach is using test IDs \u2013 explicit attributes added to your DOM purely for testing purposes.By default, Playwright uses the data-testid attribute with page.getByTestId(). But what if your project uses a different naming convention? That\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Razvan Vancea\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/razvanvancea.ro\/blog\/2026\/04\/09\/configuring-testidattribute-in-playwright\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Learn with RV - Tech Blog - #testautomation #qa #programming #linux #devops\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Configuring testIdAttribute in Playwright - Learn with RV - Tech Blog\" \/>\n\t\t<meta property=\"og:description\" content=\"When writing end-to-end tests with Playwright, selectors play a very important role in making your tests stable and maintainable. One common approach is using test IDs \u2013 explicit attributes added to your DOM purely for testing purposes.By default, Playwright uses the data-testid attribute with page.getByTestId(). But what if your project uses a different naming convention? That\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/razvanvancea.ro\/blog\/2026\/04\/09\/configuring-testidattribute-in-playwright\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-04-09T07:36:53+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-04-09T07:44:28+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/razvanvancea\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:site\" content=\"@RazvanVancea\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Configuring testIdAttribute in Playwright - Learn with RV - Tech Blog\" \/>\n\t\t<meta name=\"twitter:description\" content=\"When writing end-to-end tests with Playwright, selectors play a very important role in making your tests stable and maintainable. One common approach is using test IDs \u2013 explicit attributes added to your DOM purely for testing purposes.By default, Playwright uses the data-testid attribute with page.getByTestId(). But what if your project uses a different naming convention? That\" \/>\n\t\t<meta name=\"twitter:creator\" content=\"@RazvanVancea\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2026\\\/04\\\/09\\\/configuring-testidattribute-in-playwright\\\/#blogposting\",\"name\":\"Configuring testIdAttribute in Playwright - Learn with RV - Tech Blog\",\"headline\":\"Configuring testIdAttribute in Playwright\",\"author\":{\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/author\\\/iamrv\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/#person\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/Screenshot-2026-04-09-at-10.41.04.png\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2026\\\/04\\\/09\\\/configuring-testidattribute-in-playwright\\\/#articleImage\",\"width\":438,\"height\":168,\"caption\":\"pw-data-test-id\"},\"datePublished\":\"2026-04-09T07:36:53+00:00\",\"dateModified\":\"2026-04-09T07:44:28+00:00\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2026\\\/04\\\/09\\\/configuring-testidattribute-in-playwright\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2026\\\/04\\\/09\\\/configuring-testidattribute-in-playwright\\\/#webpage\"},\"articleSection\":\"Uncategorized\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2026\\\/04\\\/09\\\/configuring-testidattribute-in-playwright\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/category\\\/uncategorized\\\/#listItem\",\"name\":\"Uncategorized\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/category\\\/uncategorized\\\/#listItem\",\"position\":2,\"name\":\"Uncategorized\",\"item\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/category\\\/uncategorized\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2026\\\/04\\\/09\\\/configuring-testidattribute-in-playwright\\\/#listItem\",\"name\":\"Configuring testIdAttribute in Playwright\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2026\\\/04\\\/09\\\/configuring-testidattribute-in-playwright\\\/#listItem\",\"position\":3,\"name\":\"Configuring testIdAttribute in Playwright\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/category\\\/uncategorized\\\/#listItem\",\"name\":\"Uncategorized\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/#person\",\"name\":\"RV\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2026\\\/04\\\/09\\\/configuring-testidattribute-in-playwright\\\/#personImage\",\"url\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/wp-content\\\/litespeed\\\/avatar\\\/91ce41471f9ba5f15b3ef99e7deed87c.jpg?ver=1790847588\",\"width\":96,\"height\":96,\"caption\":\"RV\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/razvanvancea\\\/\",\"https:\\\/\\\/twitter.com\\\/RazvanVancea\",\"https:\\\/\\\/www.youtube.com\\\/@LearnwithRV\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/razvanvancea\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/author\\\/iamrv\\\/#author\",\"url\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/author\\\/iamrv\\\/\",\"name\":\"Razvan Vancea\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2026\\\/04\\\/09\\\/configuring-testidattribute-in-playwright\\\/#authorImage\",\"url\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/wp-content\\\/litespeed\\\/avatar\\\/356548feb901191539c03dd4a0498f58.jpg?ver=1790847589\",\"width\":96,\"height\":96,\"caption\":\"Razvan Vancea\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2026\\\/04\\\/09\\\/configuring-testidattribute-in-playwright\\\/#webpage\",\"url\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2026\\\/04\\\/09\\\/configuring-testidattribute-in-playwright\\\/\",\"name\":\"Configuring testIdAttribute in Playwright - Learn with RV - Tech Blog\",\"description\":\"When writing end-to-end tests with Playwright, selectors play a very important role in making your tests stable and maintainable. One common approach is using test IDs \\u2013 explicit attributes added to your DOM purely for testing purposes.By default, Playwright uses the data-testid attribute with page.getByTestId(). But what if your project uses a different naming convention? That\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2026\\\/04\\\/09\\\/configuring-testidattribute-in-playwright\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/author\\\/iamrv\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/author\\\/iamrv\\\/#author\"},\"datePublished\":\"2026-04-09T07:36:53+00:00\",\"dateModified\":\"2026-04-09T07:44:28+00:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/\",\"name\":\"Learn with RV - Tech Blog\",\"description\":\"#testautomation #qa #programming #linux #devops\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/#person\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Configuring testIdAttribute in Playwright - Learn with RV - Tech Blog","description":"When writing end-to-end tests with Playwright, selectors play a very important role in making your tests stable and maintainable. One common approach is using test IDs \u2013 explicit attributes added to your DOM purely for testing purposes.By default, Playwright uses the data-testid attribute with page.getByTestId(). But what if your project uses a different naming convention? That","canonical_url":"https:\/\/razvanvancea.ro\/blog\/2026\/04\/09\/configuring-testidattribute-in-playwright\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/razvanvancea.ro\/blog\/2026\/04\/09\/configuring-testidattribute-in-playwright\/#blogposting","name":"Configuring testIdAttribute in Playwright - Learn with RV - Tech Blog","headline":"Configuring testIdAttribute in Playwright","author":{"@id":"https:\/\/razvanvancea.ro\/blog\/author\/iamrv\/#author"},"publisher":{"@id":"https:\/\/razvanvancea.ro\/blog\/#person"},"image":{"@type":"ImageObject","url":"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2026\/04\/Screenshot-2026-04-09-at-10.41.04.png","@id":"https:\/\/razvanvancea.ro\/blog\/2026\/04\/09\/configuring-testidattribute-in-playwright\/#articleImage","width":438,"height":168,"caption":"pw-data-test-id"},"datePublished":"2026-04-09T07:36:53+00:00","dateModified":"2026-04-09T07:44:28+00:00","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/razvanvancea.ro\/blog\/2026\/04\/09\/configuring-testidattribute-in-playwright\/#webpage"},"isPartOf":{"@id":"https:\/\/razvanvancea.ro\/blog\/2026\/04\/09\/configuring-testidattribute-in-playwright\/#webpage"},"articleSection":"Uncategorized"},{"@type":"BreadcrumbList","@id":"https:\/\/razvanvancea.ro\/blog\/2026\/04\/09\/configuring-testidattribute-in-playwright\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/razvanvancea.ro\/blog\/#listItem","position":1,"name":"Home","item":"https:\/\/razvanvancea.ro\/blog\/","nextItem":{"@type":"ListItem","@id":"https:\/\/razvanvancea.ro\/blog\/category\/uncategorized\/#listItem","name":"Uncategorized"}},{"@type":"ListItem","@id":"https:\/\/razvanvancea.ro\/blog\/category\/uncategorized\/#listItem","position":2,"name":"Uncategorized","item":"https:\/\/razvanvancea.ro\/blog\/category\/uncategorized\/","nextItem":{"@type":"ListItem","@id":"https:\/\/razvanvancea.ro\/blog\/2026\/04\/09\/configuring-testidattribute-in-playwright\/#listItem","name":"Configuring testIdAttribute in Playwright"},"previousItem":{"@type":"ListItem","@id":"https:\/\/razvanvancea.ro\/blog\/#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/razvanvancea.ro\/blog\/2026\/04\/09\/configuring-testidattribute-in-playwright\/#listItem","position":3,"name":"Configuring testIdAttribute in Playwright","previousItem":{"@type":"ListItem","@id":"https:\/\/razvanvancea.ro\/blog\/category\/uncategorized\/#listItem","name":"Uncategorized"}}]},{"@type":"Person","@id":"https:\/\/razvanvancea.ro\/blog\/#person","name":"RV","image":{"@type":"ImageObject","@id":"https:\/\/razvanvancea.ro\/blog\/2026\/04\/09\/configuring-testidattribute-in-playwright\/#personImage","url":"https:\/\/razvanvancea.ro\/blog\/wp-content\/litespeed\/avatar\/91ce41471f9ba5f15b3ef99e7deed87c.jpg?ver=1790847588","width":96,"height":96,"caption":"RV"},"sameAs":["https:\/\/www.facebook.com\/razvanvancea\/","https:\/\/twitter.com\/RazvanVancea","https:\/\/www.youtube.com\/@LearnwithRV","https:\/\/www.linkedin.com\/in\/razvanvancea"]},{"@type":"Person","@id":"https:\/\/razvanvancea.ro\/blog\/author\/iamrv\/#author","url":"https:\/\/razvanvancea.ro\/blog\/author\/iamrv\/","name":"Razvan Vancea","image":{"@type":"ImageObject","@id":"https:\/\/razvanvancea.ro\/blog\/2026\/04\/09\/configuring-testidattribute-in-playwright\/#authorImage","url":"https:\/\/razvanvancea.ro\/blog\/wp-content\/litespeed\/avatar\/356548feb901191539c03dd4a0498f58.jpg?ver=1790847589","width":96,"height":96,"caption":"Razvan Vancea"}},{"@type":"WebPage","@id":"https:\/\/razvanvancea.ro\/blog\/2026\/04\/09\/configuring-testidattribute-in-playwright\/#webpage","url":"https:\/\/razvanvancea.ro\/blog\/2026\/04\/09\/configuring-testidattribute-in-playwright\/","name":"Configuring testIdAttribute in Playwright - Learn with RV - Tech Blog","description":"When writing end-to-end tests with Playwright, selectors play a very important role in making your tests stable and maintainable. One common approach is using test IDs \u2013 explicit attributes added to your DOM purely for testing purposes.By default, Playwright uses the data-testid attribute with page.getByTestId(). But what if your project uses a different naming convention? That","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/razvanvancea.ro\/blog\/#website"},"breadcrumb":{"@id":"https:\/\/razvanvancea.ro\/blog\/2026\/04\/09\/configuring-testidattribute-in-playwright\/#breadcrumblist"},"author":{"@id":"https:\/\/razvanvancea.ro\/blog\/author\/iamrv\/#author"},"creator":{"@id":"https:\/\/razvanvancea.ro\/blog\/author\/iamrv\/#author"},"datePublished":"2026-04-09T07:36:53+00:00","dateModified":"2026-04-09T07:44:28+00:00"},{"@type":"WebSite","@id":"https:\/\/razvanvancea.ro\/blog\/#website","url":"https:\/\/razvanvancea.ro\/blog\/","name":"Learn with RV - Tech Blog","description":"#testautomation #qa #programming #linux #devops","inLanguage":"en-US","publisher":{"@id":"https:\/\/razvanvancea.ro\/blog\/#person"}}]},"og:locale":"en_US","og:site_name":"Learn with RV - Tech Blog - #testautomation #qa #programming #linux #devops","og:type":"article","og:title":"Configuring testIdAttribute in Playwright - Learn with RV - Tech Blog","og:description":"When writing end-to-end tests with Playwright, selectors play a very important role in making your tests stable and maintainable. One common approach is using test IDs \u2013 explicit attributes added to your DOM purely for testing purposes.By default, Playwright uses the data-testid attribute with page.getByTestId(). But what if your project uses a different naming convention? That","og:url":"https:\/\/razvanvancea.ro\/blog\/2026\/04\/09\/configuring-testidattribute-in-playwright\/","article:published_time":"2026-04-09T07:36:53+00:00","article:modified_time":"2026-04-09T07:44:28+00:00","article:publisher":"https:\/\/www.facebook.com\/razvanvancea","twitter:card":"summary_large_image","twitter:site":"@RazvanVancea","twitter:title":"Configuring testIdAttribute in Playwright - Learn with RV - Tech Blog","twitter:description":"When writing end-to-end tests with Playwright, selectors play a very important role in making your tests stable and maintainable. One common approach is using test IDs \u2013 explicit attributes added to your DOM purely for testing purposes.By default, Playwright uses the data-testid attribute with page.getByTestId(). But what if your project uses a different naming convention? That","twitter:creator":"@RazvanVancea"},"aioseo_meta_data":{"post_id":"1428","title":null,"description":null,"keywords":null,"keyphrases":{"focus":[],"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"BlogPosting","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":{"faqs":[],"keyPoints":[],"titles":[],"descriptions":[],"socialPosts":{"email":[],"linkedin":[],"twitter":[],"facebook":[],"instagram":[]}},"created":"2026-04-09 07:36:53","updated":"2026-09-04 08:26:33","seo_analyzer_scan_date":null,"focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/razvanvancea.ro\/blog\/\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/razvanvancea.ro\/blog\/category\/uncategorized\/\" title=\"Uncategorized\">Uncategorized<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tConfiguring testIdAttribute in Playwright\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/razvanvancea.ro\/blog\/"},{"label":"Uncategorized","link":"https:\/\/razvanvancea.ro\/blog\/category\/uncategorized\/"},{"label":"Configuring testIdAttribute in Playwright","link":"https:\/\/razvanvancea.ro\/blog\/2026\/04\/09\/configuring-testidattribute-in-playwright\/"}],"jetpack-related-posts":[],"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/razvanvancea.ro\/blog\/wp-json\/wp\/v2\/posts\/1428","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/razvanvancea.ro\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/razvanvancea.ro\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/razvanvancea.ro\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/razvanvancea.ro\/blog\/wp-json\/wp\/v2\/comments?post=1428"}],"version-history":[{"count":4,"href":"https:\/\/razvanvancea.ro\/blog\/wp-json\/wp\/v2\/posts\/1428\/revisions"}],"predecessor-version":[{"id":1435,"href":"https:\/\/razvanvancea.ro\/blog\/wp-json\/wp\/v2\/posts\/1428\/revisions\/1435"}],"wp:attachment":[{"href":"https:\/\/razvanvancea.ro\/blog\/wp-json\/wp\/v2\/media?parent=1428"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/razvanvancea.ro\/blog\/wp-json\/wp\/v2\/categories?post=1428"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/razvanvancea.ro\/blog\/wp-json\/wp\/v2\/tags?post=1428"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}