{"id":2615,"date":"2017-12-11T09:33:38","date_gmt":"2017-12-11T17:33:38","guid":{"rendered":"https:\/\/www.genrocket.com\/?p=2615"},"modified":"2024-10-03T12:34:34","modified_gmt":"2024-10-03T12:34:34","slug":"work-flow-testing-simplified-with-genrocket","status":"publish","type":"post","link":"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/","title":{"rendered":"The Complexities of Work Flow Testing Simplified with GenRocket"},"content":{"rendered":"<p>Arguably, one of the most challenging tasks for a tester is the testing of complex workflows. Complex workflow testing involves testing multiple business units, interacting with each other, in a given sequence, over some period of time, while validating that certain steps between interacting business units are producing the correct results.<\/p>\n<p>By nature of all of the moving parts within a complex workflow, the steps that must be defined, the business methods that have to be tested, and the test data that needs to be generated, it\u2019s already a major challenge. But, even more challenging is not just generating any kind of test data, but generating data that can be dynamically mapped and shared amongst business units from one workflow step, to the next workflow step, and the next one after that, and so one until the entire workflow is successfully tested.<\/p>\n<p>For many testers, this can be an almost impossible task or at least one that takes hundreds of hours to implement and many more hours to maintain. Well, testing complex workflows is actually not as impossible or as challenging an experience when using the full capabilities of the GenRocket Test Data Generation platform in conjunction with the Test Data Mapping Design Pattern. With the GenRocket TDG platform, you can easily:<\/p>\n<ul>\n<li>Model, maintain and generate <a href=\"https:\/\/www.genrocket.com\/synthetic-data-generation\/\">synthetic test data<\/a> for multiple business units<\/li>\n<li>Manage organization variables that allow business units to share common values during dynamic test data generation<\/li>\n<li>Script complex workflows using the GenRocket API<\/li>\n<li>Dynamically manage related data between workflows using the Test Data Mapping Design pattern.<\/li>\n<\/ul>\n<p>Before we talk about the benefits of the GenRocket platform to successfully test complex workflows, we first need to define the Test Data Mapping Design Pattern.<\/p>\n<h2>Test Data Mapping Design Pattern<\/h2>\n<p>The design pattern for mapping a synthetically generated value as the key to some other value, is either mapped in memory or to a temporary database table with the following three columns:<\/p>\n<ul>\n<li>namespace \u2013 defines a unique identifier for a set of key\/value pairs<\/li>\n<li>key \u2013 defines a key to reference a value within the namespace<\/li>\n<li>value \u2013 defines a value to be referenced by a key within the namespace<\/li>\n<\/ul>\n<h3>Database Insertion Mapping Example<\/h3>\n<p>We are inserting new rows into a database table called, user.\u00a0 The user table is currently populated with 10000 rows of data. The user table has a key column, id, that is auto-generated by the database and the last auto-generated number was 10000.<\/p>\n<p>When the first row of synthetic user data is inserted into the database, the synthetically generated user id starts at 1. However, the number that is auto-generated as the primary key for the id is 10001. Thus, the mapping of the synthetically generated id to the auto-generated id is stored in a Test Data Map as [user, 1, 10001] where:<\/p>\n<ul>\n<li>namespace = user<\/li>\n<li>key = 1<\/li>\n<li>value = 10001<\/li>\n<\/ul>\n<p>Now that the synthetically generated id is mapped to the auto-generated id, anything that synthetically generates a key of 1, can retrieve the actual row in the user table that has the primary id of 10001.<\/p>\n<p>But, how does this translate to using synthetically generated test data with the test data mapping design pattern in order to <a href=\"https:\/\/www.genrocket.com\/software-testing-solutions\/\">automated testing<\/a> of complex workflows involving multiple business units?<\/p>\n<h2>GenRocket Platform to the Rescue<\/h2>\n<p>This is where GenRocket Projects and <a href=\"https:\/\/www.genrocket.com\/\">GenRocket Organization<\/a> Variables can be used to model test data that can represent multiple business units that share a common set of variables.<\/p>\n<p>Within a GenRocket organization, each business unit\u2019s data can and should be modeled within its own project; this allows the Domains of a business unit to be modified and versioned as it changes over time.<\/p>\n<p>The common set of generated values that are shared between business units, for relational integrity, may be defined within a set of Organization Variables and referenced by any Project Domain variable within the organization.<\/p>\n<p>For example:<\/p>\n<ul>\n<li>Organization Variable A may be referenced as a starting generation number for the customer Id in some Domain Attribute Generator parameter within Project A and mapped to a primary Id returned by some database function.<\/li>\n<li>Within Project B, a Domain Attribute Generator parameter may query for a customer Id, using the Organization Variable A, in order to retrieve the actual primary Id.<\/li>\n<li>In Project C, a Domain Attribute Generator parameter may use Organization Variable A, to generate a history record that can map back to a given customer but not contain the customer\u2019s actual primary Id.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p><a href=\"https:\/\/www.genrocket.com\/wp-content\/uploads\/2017\/12\/OrganizatioVariables.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-2616\" src=\"https:\/\/www.genrocket.com\/wp-content\/uploads\/2017\/12\/OrganizatioVariables-1024x635.png\" alt=\"Organization Variables\" width=\"660\" height=\"409\" \/><\/a><\/p>\n<p>Within GenRocket, the possibilities for modeling and managing shared data between multiple business units are flexible, easily modifiable and infinite.<\/p>\n<p>By using the GenRocket API, with your favorite scripting language, in conjunction with the Test Data Mapping Design Pattern, GenRocket Scenarios can be loaded, modified and executed, in real time, to successfully test very complex workflows.<\/p>\n<p>The sequence diagram below describes how a user may use the GenRocket API, with a scripting language, to load and execute a set of GenRocket Scenarios, execute business units that use the generated data, then map the resulting data to a mapping table to be used with the next set of Scenarios.<\/p>\n<p><a href=\"https:\/\/www.genrocket.com\/wp-content\/uploads\/2017\/12\/TestingWorkFlowSequence.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-2617\" src=\"https:\/\/www.genrocket.com\/wp-content\/uploads\/2017\/12\/TestingWorkFlowSequence-1024x770.png\" alt=\"TestingWorkFlowSequence\" width=\"660\" height=\"496\" \/><\/a><\/p>\n<h2>Conclusion<\/h2>\n<p>In summary, testing complex workflows, involving multiple business units are difficult to test because, by their nature, with all of their moving parts they are complex; that does not mean they can\u2019t be tested.<\/p>\n<p>Using GenRocket, multiple business units can be modeled and versioned within their own projects and have their data fully synthetically generated. Common generated values that allow multiple business units to share relational data can be defined within Organization Variable Sets. And by scripting testing workflows using the GenRocket API, in conjunction with the Test Data Mapping Design Pattern, complex workflows can be fully tested and fully automated while having the test data dynamically generated in real time.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Arguably, one of the most challenging tasks for a tester is the testing of complex workflows. Complex workflow testing involves testing multiple business units, interacting with each other, in a given sequence, over some period of time, while validating that [&hellip;]<\/p>\n","protected":false},"author":4,"featured_media":10380,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[347,349,350],"tags":[],"class_list":["post-2615","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-software-testing","category-test-data","category-test-data-generation"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.0 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Complexities of Work Flow Testing Simplified<\/title>\n<meta name=\"description\" content=\"Arguably, one of the most challenging tasks for a tester is the testing of complex workflows. Complex workflow testing involves testing multiple business\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Complexities of Work Flow Testing Simplified\" \/>\n<meta property=\"og:description\" content=\"Arguably, one of the most challenging tasks for a tester is the testing of complex workflows. Complex workflow testing involves testing multiple business\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/\" \/>\n<meta property=\"og:site_name\" content=\"GenRocket Blog\" \/>\n<meta property=\"article:published_time\" content=\"2017-12-11T17:33:38+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-10-03T12:34:34+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.genrocket.com\/blog\/wp-content\/uploads\/2017\/12\/OrganizatioVariables-1024x635-1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t<meta property=\"og:image:height\" content=\"635\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Hycel Taylor\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Hycel Taylor\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/\"},\"author\":{\"name\":\"Hycel Taylor\",\"@id\":\"https:\/\/www.genrocket.com\/blog\/#\/schema\/person\/7efce0dccc5685a50a0c0490d3b988f2\"},\"headline\":\"The Complexities of Work Flow Testing Simplified with GenRocket\",\"datePublished\":\"2017-12-11T17:33:38+00:00\",\"dateModified\":\"2024-10-03T12:34:34+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/\"},\"wordCount\":962,\"publisher\":{\"@id\":\"https:\/\/www.genrocket.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.genrocket.com\/blog\/wp-content\/uploads\/2017\/12\/OrganizatioVariables-1024x635-1.png\",\"articleSection\":[\"Software Testing\",\"Test Data\",\"Test Data Generation\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/\",\"url\":\"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/\",\"name\":\"Complexities of Work Flow Testing Simplified\",\"isPartOf\":{\"@id\":\"https:\/\/www.genrocket.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.genrocket.com\/blog\/wp-content\/uploads\/2017\/12\/OrganizatioVariables-1024x635-1.png\",\"datePublished\":\"2017-12-11T17:33:38+00:00\",\"dateModified\":\"2024-10-03T12:34:34+00:00\",\"description\":\"Arguably, one of the most challenging tasks for a tester is the testing of complex workflows. Complex workflow testing involves testing multiple business\",\"breadcrumb\":{\"@id\":\"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/#primaryimage\",\"url\":\"https:\/\/www.genrocket.com\/blog\/wp-content\/uploads\/2017\/12\/OrganizatioVariables-1024x635-1.png\",\"contentUrl\":\"https:\/\/www.genrocket.com\/blog\/wp-content\/uploads\/2017\/12\/OrganizatioVariables-1024x635-1.png\",\"width\":1024,\"height\":635,\"caption\":\"Test Data Management - GenRocket\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.genrocket.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"The Complexities of Work Flow Testing Simplified with GenRocket\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.genrocket.com\/blog\/#website\",\"url\":\"https:\/\/www.genrocket.com\/blog\/\",\"name\":\"GenRocket Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.genrocket.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.genrocket.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.genrocket.com\/blog\/#organization\",\"name\":\"GenRocket Blog\",\"url\":\"https:\/\/www.genrocket.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.genrocket.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.genrocket.com\/blog\/wp-content\/uploads\/2024\/03\/favicon.png\",\"contentUrl\":\"https:\/\/www.genrocket.com\/blog\/wp-content\/uploads\/2024\/03\/favicon.png\",\"width\":32,\"height\":32,\"caption\":\"GenRocket Blog\"},\"image\":{\"@id\":\"https:\/\/www.genrocket.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.genrocket.com\/blog\/#\/schema\/person\/7efce0dccc5685a50a0c0490d3b988f2\",\"name\":\"Hycel Taylor\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.genrocket.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/aac44f3a4d967dc8121a4e16a45ab2bb?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/aac44f3a4d967dc8121a4e16a45ab2bb?s=96&d=mm&r=g\",\"caption\":\"Hycel Taylor\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Complexities of Work Flow Testing Simplified","description":"Arguably, one of the most challenging tasks for a tester is the testing of complex workflows. Complex workflow testing involves testing multiple business","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/","og_locale":"en_US","og_type":"article","og_title":"Complexities of Work Flow Testing Simplified","og_description":"Arguably, one of the most challenging tasks for a tester is the testing of complex workflows. Complex workflow testing involves testing multiple business","og_url":"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/","og_site_name":"GenRocket Blog","article_published_time":"2017-12-11T17:33:38+00:00","article_modified_time":"2024-10-03T12:34:34+00:00","og_image":[{"width":1024,"height":635,"url":"https:\/\/www.genrocket.com\/blog\/wp-content\/uploads\/2017\/12\/OrganizatioVariables-1024x635-1.png","type":"image\/png"}],"author":"Hycel Taylor","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Hycel Taylor","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/#article","isPartOf":{"@id":"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/"},"author":{"name":"Hycel Taylor","@id":"https:\/\/www.genrocket.com\/blog\/#\/schema\/person\/7efce0dccc5685a50a0c0490d3b988f2"},"headline":"The Complexities of Work Flow Testing Simplified with GenRocket","datePublished":"2017-12-11T17:33:38+00:00","dateModified":"2024-10-03T12:34:34+00:00","mainEntityOfPage":{"@id":"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/"},"wordCount":962,"publisher":{"@id":"https:\/\/www.genrocket.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/#primaryimage"},"thumbnailUrl":"https:\/\/www.genrocket.com\/blog\/wp-content\/uploads\/2017\/12\/OrganizatioVariables-1024x635-1.png","articleSection":["Software Testing","Test Data","Test Data Generation"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/","url":"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/","name":"Complexities of Work Flow Testing Simplified","isPartOf":{"@id":"https:\/\/www.genrocket.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/#primaryimage"},"image":{"@id":"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/#primaryimage"},"thumbnailUrl":"https:\/\/www.genrocket.com\/blog\/wp-content\/uploads\/2017\/12\/OrganizatioVariables-1024x635-1.png","datePublished":"2017-12-11T17:33:38+00:00","dateModified":"2024-10-03T12:34:34+00:00","description":"Arguably, one of the most challenging tasks for a tester is the testing of complex workflows. Complex workflow testing involves testing multiple business","breadcrumb":{"@id":"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/#primaryimage","url":"https:\/\/www.genrocket.com\/blog\/wp-content\/uploads\/2017\/12\/OrganizatioVariables-1024x635-1.png","contentUrl":"https:\/\/www.genrocket.com\/blog\/wp-content\/uploads\/2017\/12\/OrganizatioVariables-1024x635-1.png","width":1024,"height":635,"caption":"Test Data Management - GenRocket"},{"@type":"BreadcrumbList","@id":"https:\/\/www.genrocket.com\/blog\/work-flow-testing-simplified-with-genrocket\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.genrocket.com\/blog\/"},{"@type":"ListItem","position":2,"name":"The Complexities of Work Flow Testing Simplified with GenRocket"}]},{"@type":"WebSite","@id":"https:\/\/www.genrocket.com\/blog\/#website","url":"https:\/\/www.genrocket.com\/blog\/","name":"GenRocket Blog","description":"","publisher":{"@id":"https:\/\/www.genrocket.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.genrocket.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.genrocket.com\/blog\/#organization","name":"GenRocket Blog","url":"https:\/\/www.genrocket.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.genrocket.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.genrocket.com\/blog\/wp-content\/uploads\/2024\/03\/favicon.png","contentUrl":"https:\/\/www.genrocket.com\/blog\/wp-content\/uploads\/2024\/03\/favicon.png","width":32,"height":32,"caption":"GenRocket Blog"},"image":{"@id":"https:\/\/www.genrocket.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.genrocket.com\/blog\/#\/schema\/person\/7efce0dccc5685a50a0c0490d3b988f2","name":"Hycel Taylor","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.genrocket.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/aac44f3a4d967dc8121a4e16a45ab2bb?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/aac44f3a4d967dc8121a4e16a45ab2bb?s=96&d=mm&r=g","caption":"Hycel Taylor"}}]}},"_links":{"self":[{"href":"https:\/\/www.genrocket.com\/blog\/wp-json\/wp\/v2\/posts\/2615","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.genrocket.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.genrocket.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.genrocket.com\/blog\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.genrocket.com\/blog\/wp-json\/wp\/v2\/comments?post=2615"}],"version-history":[{"count":5,"href":"https:\/\/www.genrocket.com\/blog\/wp-json\/wp\/v2\/posts\/2615\/revisions"}],"predecessor-version":[{"id":11170,"href":"https:\/\/www.genrocket.com\/blog\/wp-json\/wp\/v2\/posts\/2615\/revisions\/11170"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.genrocket.com\/blog\/wp-json\/wp\/v2\/media\/10380"}],"wp:attachment":[{"href":"https:\/\/www.genrocket.com\/blog\/wp-json\/wp\/v2\/media?parent=2615"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.genrocket.com\/blog\/wp-json\/wp\/v2\/categories?post=2615"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.genrocket.com\/blog\/wp-json\/wp\/v2\/tags?post=2615"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}