{"id":2138,"date":"2019-08-02T09:00:27","date_gmt":"2019-08-02T07:00:27","guid":{"rendered":"https:\/\/voxxeddays.com\/microservices\/?p=2138"},"modified":"2019-08-01T15:33:31","modified_gmt":"2019-08-01T13:33:31","slug":"phil-hardwick-on-pact-tests-how-we-split-up-the-monolithic-deploy","status":"publish","type":"post","link":"https:\/\/voxxeddays.com\/microservices\/2019\/08\/02\/phil-hardwick-on-pact-tests-how-we-split-up-the-monolithic-deploy\/","title":{"rendered":"Phil Hardwick on \u201cPact tests: how we split up the monolithic deploy\u201d"},"content":{"rendered":"<p><b>Hi Phil, tell us who you are and what lead you into microservices?<\/b><\/p>\n<p><span style=\"font-weight: 400\">I\u2019m Phil, I\u2019m a software engineer with Mettle: a company providing current accounts to small businesses. I\u2019ve been working in software engineering for 7 years across a variety of projects, mostly in the public sector but some in the private sector as I am now. In every subsequent project the move to microservices has been more pronounced. The reason I keep seeking opportunities to build better microservice systems is that it presents huge challenges with unequalled rewards &#8211; no other current system design can give equivalent throughout, scale or reliability. The challenges of increased complexity and distributed communication draws me, and I believe many others, to seek better and better solutions and implementations.<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400\">\u00a0<\/span><b>What will you be talking about at Voxxed Days Microservices?\u00a0<\/b><\/p>\n<p><span style=\"font-weight: 400\">I will be offering a look into how we at Mettle used consumer driven contracts to enable us to do continuous delivery into production. We wanted to deploy little and often into production but to do that we needed to make sure our services were compatible with the versions of other services in all environments. I\u2019ll also take a look at how to implement it in your services and your CI &#8211; again with tips for what to do and what to avoid from our own experience of moving from a monolithic deployment to independent micro deployments.<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><b>When building an API it\u2019s usually the provider\u2019s job to test its APIs. Consumer-Driven Contract tests go the other way round. Could you explain the interactions between the API consumer and the API provider in CDD tests ?\u00a0<\/b><\/p>\n<p><span style=\"font-weight: 400\">The responsibility for testing the functionality of the API still lies with the provider. The difference is the consumer defines the format of the interactions (typically the requests and responses). The provider then, in addition to its functional tests, tests that it meets the contract (provides responses in the required format). This fosters more personal interactions between provider and consumer engineers as they decide the contract and work to make sure it\u2019s met. By doing this we\u2019ve divided testing into testing functionality and testing interactions: a key distinction in the world of microservices.<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><b>Good, see you soon then\u00a0<\/b><\/p>\n<p><span style=\"font-weight: 400\">Looking forward to it!<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400\">#microservicetesting #continuousdeliveryenabled #pact<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><b>My contact information<\/b><\/p>\n<p><span style=\"font-weight: 400\">Blog: <\/span><a href=\"https:\/\/blog.wick.technology\/\"><span style=\"font-weight: 400\">https:\/\/blog.wick.technology<\/span><\/a><span style=\"font-weight: 400\">\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400\">LinkedIn: <\/span><a href=\"http:\/\/linkedin.com\/in\/philiphardwick\"><span style=\"font-weight: 400\">http:\/\/linkedin.com\/in\/philiphardwick<\/span><\/a><span style=\"font-weight: 400\">\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400\">GitHub: <\/span><a href=\"https:\/\/github.com\/philhardwick\"><span style=\"font-weight: 400\">https:\/\/github.com\/philhardwick<\/span><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hi Phil, tell us who you are and what lead you into microservices? I\u2019m Phil, I\u2019m a software engineer with Mettle: a company providing current accounts to small businesses. I\u2019ve been working in software engineering for 7 years across a variety of projects, mostly in the public sector but some in the private sector as [&hellip;]<\/p>\n","protected":false},"author":1301,"featured_media":2164,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[12],"tags":[],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v15.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Phil Hardwick on \u201cPact tests: how we split up the monolithic deploy\u201d : Voxxed Days Microservices 2019<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/voxxeddays.com\/microservices\/2019\/08\/02\/phil-hardwick-on-pact-tests-how-we-split-up-the-monolithic-deploy\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Phil Hardwick on \u201cPact tests: how we split up the monolithic deploy\u201d : Voxxed Days Microservices 2019\" \/>\n<meta property=\"og:description\" content=\"Hi Phil, tell us who you are and what lead you into microservices? I\u2019m Phil, I\u2019m a software engineer with Mettle: a company providing current accounts to small businesses. I\u2019ve been working in software engineering for 7 years across a variety of projects, mostly in the public sector but some in the private sector as [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/voxxeddays.com\/microservices\/2019\/08\/02\/phil-hardwick-on-pact-tests-how-we-split-up-the-monolithic-deploy\/\" \/>\n<meta property=\"og:site_name\" content=\"Voxxed Days Microservices 2019\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/vxdmicroservice\/\" \/>\n<meta property=\"article:published_time\" content=\"2019-08-02T07:00:27+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-08-01T13:33:31+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/voxxeddays.com\/microservices\/wp-content\/uploads\/sites\/54\/2019\/08\/Bannie\u0300re-Phil-Hardwick_Plan-de-travail-1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"2134\" \/>\n\t<meta property=\"og:image:height\" content=\"1067\" \/>\n<meta property=\"fb:app_id\" content=\"vxdmicroservice\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@agoncal\" \/>\n<meta name=\"twitter:site\" content=\"@vxdmicroservice\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\">\n\t<meta name=\"twitter:data1\" content=\"Antonio Goncalves\">\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\">\n\t<meta name=\"twitter:data2\" content=\"2 minutes\">\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https:\/\/voxxeddays.com\/microservices\/#organization\",\"name\":\"Voxxed Days Microservices\",\"url\":\"https:\/\/voxxeddays.com\/microservices\/\",\"sameAs\":[\"https:\/\/www.facebook.com\/vxdmicroservice\/\",\"https:\/\/www.instagram.com\/voxxeddaysmicroservices\",\"https:\/\/www.linkedin.com\/in\/voxxed-days-microservices-906115164\/\",\"https:\/\/www.youtube.com\/playlist?list=PLRsbF2sD7JVrhlYIKTI--IU6xcfUjdNt2\",\"https:\/\/twitter.com\/vxdmicroservice\"],\"logo\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/voxxeddays.com\/microservices\/#logo\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/voxxeddays.com\/microservices\/wp-content\/uploads\/sites\/54\/2019\/06\/large-Voxxed_Days_Microservices_date_2019-01-2.png\",\"width\":1000,\"height\":387,\"caption\":\"Voxxed Days Microservices\"},\"image\":{\"@id\":\"https:\/\/voxxeddays.com\/microservices\/#logo\"}},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/voxxeddays.com\/microservices\/#website\",\"url\":\"https:\/\/voxxeddays.com\/microservices\/\",\"name\":\"Voxxed Days Microservices 2019, Conference & workshops\",\"description\":\"A Developer Conference on Microservices\",\"publisher\":{\"@id\":\"https:\/\/voxxeddays.com\/microservices\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":\"https:\/\/voxxeddays.com\/microservices\/?s={search_term_string}\",\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/voxxeddays.com\/microservices\/2019\/08\/02\/phil-hardwick-on-pact-tests-how-we-split-up-the-monolithic-deploy\/#primaryimage\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/voxxeddays.com\/microservices\/wp-content\/uploads\/sites\/54\/2019\/08\/Bannie\\u0300re-Phil-Hardwick_Plan-de-travail-1.png\",\"width\":2134,\"height\":1067,\"caption\":\"Phil Hardwick\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/voxxeddays.com\/microservices\/2019\/08\/02\/phil-hardwick-on-pact-tests-how-we-split-up-the-monolithic-deploy\/#webpage\",\"url\":\"https:\/\/voxxeddays.com\/microservices\/2019\/08\/02\/phil-hardwick-on-pact-tests-how-we-split-up-the-monolithic-deploy\/\",\"name\":\"Phil Hardwick on \\u201cPact tests: how we split up the monolithic deploy\\u201d : Voxxed Days Microservices 2019\",\"isPartOf\":{\"@id\":\"https:\/\/voxxeddays.com\/microservices\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/voxxeddays.com\/microservices\/2019\/08\/02\/phil-hardwick-on-pact-tests-how-we-split-up-the-monolithic-deploy\/#primaryimage\"},\"datePublished\":\"2019-08-02T07:00:27+00:00\",\"dateModified\":\"2019-08-01T13:33:31+00:00\",\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/voxxeddays.com\/microservices\/2019\/08\/02\/phil-hardwick-on-pact-tests-how-we-split-up-the-monolithic-deploy\/\"]}]},{\"@type\":\"Article\",\"@id\":\"https:\/\/voxxeddays.com\/microservices\/2019\/08\/02\/phil-hardwick-on-pact-tests-how-we-split-up-the-monolithic-deploy\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/voxxeddays.com\/microservices\/2019\/08\/02\/phil-hardwick-on-pact-tests-how-we-split-up-the-monolithic-deploy\/#webpage\"},\"author\":{\"@id\":\"https:\/\/voxxeddays.com\/microservices\/#\/schema\/person\/871a4bfea3b1bf117a77bc3fbfeb5f14\"},\"headline\":\"Phil Hardwick on \\u201cPact tests: how we split up the monolithic deploy\\u201d\",\"datePublished\":\"2019-08-02T07:00:27+00:00\",\"dateModified\":\"2019-08-01T13:33:31+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/voxxeddays.com\/microservices\/2019\/08\/02\/phil-hardwick-on-pact-tests-how-we-split-up-the-monolithic-deploy\/#webpage\"},\"publisher\":{\"@id\":\"https:\/\/voxxeddays.com\/microservices\/#organization\"},\"image\":{\"@id\":\"https:\/\/voxxeddays.com\/microservices\/2019\/08\/02\/phil-hardwick-on-pact-tests-how-we-split-up-the-monolithic-deploy\/#primaryimage\"},\"articleSection\":\"all\",\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/voxxeddays.com\/microservices\/#\/schema\/person\/871a4bfea3b1bf117a77bc3fbfeb5f14\",\"name\":\"Antonio Goncalves\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/voxxeddays.com\/microservices\/#personlogo\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/1fc6aa04011b2f0f9721df913b0fd415?s=96&d=mm&r=g\",\"caption\":\"Antonio Goncalves\"},\"description\":\"I am a senior software architect living in Paris. I work as a consultant in helping customers to set up their software architecture. My specialities are Java \/ Java EE and Open Source frameworks that evolve around it. As a former BEA consultant I have a great expertise in application servers (Weblogic, JBoss and GlassFish). So I decided to write a few books about it, create the Paris JUG and Devoxx France.\",\"sameAs\":[\"https:\/\/plus.google.com\/101641663893160877351\",\"https:\/\/twitter.com\/agoncal\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","_links":{"self":[{"href":"https:\/\/voxxeddays.com\/microservices\/wp-json\/wp\/v2\/posts\/2138"}],"collection":[{"href":"https:\/\/voxxeddays.com\/microservices\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/voxxeddays.com\/microservices\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/voxxeddays.com\/microservices\/wp-json\/wp\/v2\/users\/1301"}],"replies":[{"embeddable":true,"href":"https:\/\/voxxeddays.com\/microservices\/wp-json\/wp\/v2\/comments?post=2138"}],"version-history":[{"count":0,"href":"https:\/\/voxxeddays.com\/microservices\/wp-json\/wp\/v2\/posts\/2138\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/voxxeddays.com\/microservices\/wp-json\/wp\/v2\/media\/2164"}],"wp:attachment":[{"href":"https:\/\/voxxeddays.com\/microservices\/wp-json\/wp\/v2\/media?parent=2138"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/voxxeddays.com\/microservices\/wp-json\/wp\/v2\/categories?post=2138"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/voxxeddays.com\/microservices\/wp-json\/wp\/v2\/tags?post=2138"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}