{"id":1758,"date":"2025-04-09T08:31:06","date_gmt":"2025-04-09T07:31:06","guid":{"rendered":"https:\/\/marketaylor.synology.me\/?p=1758"},"modified":"2025-07-29T09:03:07","modified_gmt":"2025-07-29T08:03:07","slug":"mq-testcontainers-for-spring","status":"publish","type":"post","link":"https:\/\/marketaylor.synology.me\/?p=1758","title":{"rendered":"Enabling Testcontainers for testing MQ Spring applications"},"content":{"rendered":"\n<p>UPDATE 2025\/06\/19: This project has now been released properly to Maven Central. <\/p>\n\n\n\n<p>UPDATE 2025\/07\/29: The IBM MQ module now appears in the <a href=\"https:\/\/testcontainers.com\/modules\/\" target=\"_blank\" rel=\"noreferrer noopener\">Testcontainers catalog <\/a><\/p>\n\n\n\n<p>I have just published a &#8220;Tech Preview&#8221; of some components needed to simplify testing of Spring Boot applications that use MQ.&nbsp; It uses the <strong>Testcontainers<\/strong> framework that many may have heard of, and is intended to make it easy to build temporary resources such as queue managers as part of the test cycle<\/p>\n\n\n\n<p>If you&#8217;re interested in looking further, see <a href=\"https:\/\/github.com\/ibm-messaging\/mq-jms-spring\/blob\/testcont\/README_TESTCONTAINERS.md\" target=\"_blank\" rel=\"noreferrer noopener\">here<\/a>. Please leave any comments as issues on the <a href=\"https:\/\/github.com\/ibm-messaging\/mq-jms-spring\/issues\" target=\"_blank\" rel=\"noreferrer noopener\">GitHub repository<\/a>.<\/p>\n\n\n\n<p>This preview is build-it-yourself for now, with the aim being to get feedback before finalising the overall shape and publishing new jars to Maven. It&#8217;s also not on the main branch of the <em>ibm-messaging\/mq-jms-spring<\/em> repository, just to keep that clean for now.<\/p>\n\n\n\n<p>Article also published <a href=\"https:\/\/community.ibm.com\/community\/user\/blogs\/mark-taylor\/2025\/04\/09\/enabling-testcontainers-for-testing-mq-spring-appl\" target=\"_blank\" rel=\"noreferrer noopener\">here<\/a>.<\/p>\n<p class=\"last-modified\" style=\"border:1px solid;padding: 10px;\">This post was last updated on July 29th, 2025 at 09:03 am<\/p>","protected":false},"excerpt":{"rendered":"<p>UPDATE 2025\/06\/19: This project has now been released properly to Maven Central. UPDATE 2025\/07\/29: The IBM MQ module now appears in the Testcontainers catalog I have just published a &#8220;Tech Preview&#8221; of some components needed to simplify testing of Spring Boot applications that use MQ.&nbsp; It uses the Testcontainers framework that many may have heard &hellip; <a href=\"https:\/\/marketaylor.synology.me\/?p=1758\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Enabling Testcontainers for testing MQ Spring applications&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[5],"tags":[35,20,51,142,143],"class_list":["post-1758","post","type-post","status-publish","format-standard","hentry","category-mq","tag-ibmmq","tag-mqseries","tag-spring","tag-springboot","tag-testcontainers"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Enabling Testcontainers for testing MQ Spring applications - Mark Taylor&#039;s Blog<\/title>\n<meta name=\"description\" content=\"A tech preview of a new capability that enables integration of the testcontainers package with MQ to simplify testing Spring applications.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/marketaylor.synology.me\/?p=1758\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Enabling Testcontainers for testing MQ Spring applications - Mark Taylor&#039;s Blog\" \/>\n<meta property=\"og:description\" content=\"A tech preview of a new capability that enables integration of the testcontainers package with MQ to simplify testing Spring applications.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/marketaylor.synology.me\/?p=1758\" \/>\n<meta property=\"og:site_name\" content=\"Mark Taylor&#039;s Blog\" \/>\n<meta property=\"article:published_time\" content=\"2025-04-09T07:31:06+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-07-29T08:03:07+00:00\" \/>\n<meta name=\"author\" content=\"Mark\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@marketaylor\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Mark\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/?p=1758#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/?p=1758\"},\"author\":{\"name\":\"Mark\",\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/#\\\/schema\\\/person\\\/2d6f4113ff54187023e20c20186bbb3c\"},\"headline\":\"Enabling Testcontainers for testing MQ Spring applications\",\"datePublished\":\"2025-04-09T07:31:06+00:00\",\"dateModified\":\"2025-07-29T08:03:07+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/?p=1758\"},\"wordCount\":150,\"commentCount\":0,\"keywords\":[\"ibmmq\",\"mqseries\",\"spring\",\"springboot\",\"testcontainers\"],\"articleSection\":[\"IBM MQ\"],\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/marketaylor.synology.me\\\/?p=1758#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/?p=1758\",\"url\":\"https:\\\/\\\/marketaylor.synology.me\\\/?p=1758\",\"name\":\"Enabling Testcontainers for testing MQ Spring applications - Mark Taylor&#039;s Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/#website\"},\"datePublished\":\"2025-04-09T07:31:06+00:00\",\"dateModified\":\"2025-07-29T08:03:07+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/#\\\/schema\\\/person\\\/2d6f4113ff54187023e20c20186bbb3c\"},\"description\":\"A tech preview of a new capability that enables integration of the testcontainers package with MQ to simplify testing Spring applications.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/?p=1758#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/marketaylor.synology.me\\\/?p=1758\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/?p=1758#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/marketaylor.synology.me\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Enabling Testcontainers for testing MQ Spring applications\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/#website\",\"url\":\"https:\\\/\\\/marketaylor.synology.me\\\/\",\"name\":\"Mark Taylor&#039;s Blog\",\"description\":\"Messaging, Music and Moving Around\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/marketaylor.synology.me\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-GB\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/#\\\/schema\\\/person\\\/2d6f4113ff54187023e20c20186bbb3c\",\"name\":\"Mark\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/9a5ae091c43730194cba7cabb5d65c1dc3f48d05caaddec6ff2319a1ce66376f?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/9a5ae091c43730194cba7cabb5d65c1dc3f48d05caaddec6ff2319a1ce66376f?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/9a5ae091c43730194cba7cabb5d65c1dc3f48d05caaddec6ff2319a1ce66376f?s=96&d=mm&r=g\",\"caption\":\"Mark\"},\"sameAs\":[\"https:\\\/\\\/x.com\\\/marketaylor\"],\"url\":\"https:\\\/\\\/marketaylor.synology.me\\\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Enabling Testcontainers for testing MQ Spring applications - Mark Taylor&#039;s Blog","description":"A tech preview of a new capability that enables integration of the testcontainers package with MQ to simplify testing Spring applications.","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:\/\/marketaylor.synology.me\/?p=1758","og_locale":"en_GB","og_type":"article","og_title":"Enabling Testcontainers for testing MQ Spring applications - Mark Taylor&#039;s Blog","og_description":"A tech preview of a new capability that enables integration of the testcontainers package with MQ to simplify testing Spring applications.","og_url":"https:\/\/marketaylor.synology.me\/?p=1758","og_site_name":"Mark Taylor&#039;s Blog","article_published_time":"2025-04-09T07:31:06+00:00","article_modified_time":"2025-07-29T08:03:07+00:00","author":"Mark","twitter_card":"summary_large_image","twitter_creator":"@marketaylor","twitter_misc":{"Written by":"Mark","Estimated reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/marketaylor.synology.me\/?p=1758#article","isPartOf":{"@id":"https:\/\/marketaylor.synology.me\/?p=1758"},"author":{"name":"Mark","@id":"https:\/\/marketaylor.synology.me\/#\/schema\/person\/2d6f4113ff54187023e20c20186bbb3c"},"headline":"Enabling Testcontainers for testing MQ Spring applications","datePublished":"2025-04-09T07:31:06+00:00","dateModified":"2025-07-29T08:03:07+00:00","mainEntityOfPage":{"@id":"https:\/\/marketaylor.synology.me\/?p=1758"},"wordCount":150,"commentCount":0,"keywords":["ibmmq","mqseries","spring","springboot","testcontainers"],"articleSection":["IBM MQ"],"inLanguage":"en-GB","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/marketaylor.synology.me\/?p=1758#respond"]}]},{"@type":"WebPage","@id":"https:\/\/marketaylor.synology.me\/?p=1758","url":"https:\/\/marketaylor.synology.me\/?p=1758","name":"Enabling Testcontainers for testing MQ Spring applications - Mark Taylor&#039;s Blog","isPartOf":{"@id":"https:\/\/marketaylor.synology.me\/#website"},"datePublished":"2025-04-09T07:31:06+00:00","dateModified":"2025-07-29T08:03:07+00:00","author":{"@id":"https:\/\/marketaylor.synology.me\/#\/schema\/person\/2d6f4113ff54187023e20c20186bbb3c"},"description":"A tech preview of a new capability that enables integration of the testcontainers package with MQ to simplify testing Spring applications.","breadcrumb":{"@id":"https:\/\/marketaylor.synology.me\/?p=1758#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/marketaylor.synology.me\/?p=1758"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/marketaylor.synology.me\/?p=1758#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/marketaylor.synology.me\/"},{"@type":"ListItem","position":2,"name":"Enabling Testcontainers for testing MQ Spring applications"}]},{"@type":"WebSite","@id":"https:\/\/marketaylor.synology.me\/#website","url":"https:\/\/marketaylor.synology.me\/","name":"Mark Taylor&#039;s Blog","description":"Messaging, Music and Moving Around","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/marketaylor.synology.me\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-GB"},{"@type":"Person","@id":"https:\/\/marketaylor.synology.me\/#\/schema\/person\/2d6f4113ff54187023e20c20186bbb3c","name":"Mark","image":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/secure.gravatar.com\/avatar\/9a5ae091c43730194cba7cabb5d65c1dc3f48d05caaddec6ff2319a1ce66376f?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/9a5ae091c43730194cba7cabb5d65c1dc3f48d05caaddec6ff2319a1ce66376f?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/9a5ae091c43730194cba7cabb5d65c1dc3f48d05caaddec6ff2319a1ce66376f?s=96&d=mm&r=g","caption":"Mark"},"sameAs":["https:\/\/x.com\/marketaylor"],"url":"https:\/\/marketaylor.synology.me\/?author=1"}]}},"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/marketaylor.synology.me\/index.php?rest_route=\/wp\/v2\/posts\/1758","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/marketaylor.synology.me\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/marketaylor.synology.me\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/marketaylor.synology.me\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/marketaylor.synology.me\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1758"}],"version-history":[{"count":5,"href":"https:\/\/marketaylor.synology.me\/index.php?rest_route=\/wp\/v2\/posts\/1758\/revisions"}],"predecessor-version":[{"id":1781,"href":"https:\/\/marketaylor.synology.me\/index.php?rest_route=\/wp\/v2\/posts\/1758\/revisions\/1781"}],"wp:attachment":[{"href":"https:\/\/marketaylor.synology.me\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1758"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/marketaylor.synology.me\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1758"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/marketaylor.synology.me\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1758"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}