diff --git a/tests/vkrenderframework.cpp b/tests/vkrenderframework.cpp
index a9cf03b..8dbd1ee 100644
--- a/tests/vkrenderframework.cpp
+++ b/tests/vkrenderframework.cpp
@@ -1211,6 +1211,34 @@
     assert(VK_SUCCESS == err);
 }
 
+VkShaderObj::VkShaderObj(VkDeviceObj *device, const std::string spv_source, VkShaderStageFlagBits stage,
+                         VkRenderFramework *framework, char const *name) {
+    VkResult U_ASSERT_ONLY err = VK_SUCCESS;
+    std::vector<unsigned int> spv;
+    VkShaderModuleCreateInfo moduleCreateInfo;
+
+    m_device = device;
+    m_stage_info.sType = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO;
+    m_stage_info.pNext = nullptr;
+    m_stage_info.flags = 0;
+    m_stage_info.stage = stage;
+    m_stage_info.module = VK_NULL_HANDLE;
+    m_stage_info.pName = name;
+    m_stage_info.pSpecializationInfo = nullptr;
+
+    moduleCreateInfo.sType = VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO;
+    moduleCreateInfo.pNext = nullptr;
+
+    framework->ASMtoSPV(SPV_ENV_VULKAN_1_0, 0, spv_source.data(), spv);
+    moduleCreateInfo.pCode = spv.data();
+    moduleCreateInfo.codeSize = spv.size() * sizeof(unsigned int);
+    moduleCreateInfo.flags = 0;
+
+    err = init_try(*m_device, moduleCreateInfo);
+    m_stage_info.module = handle();
+    assert(VK_SUCCESS == err);
+}
+
 VkPipelineLayoutObj::VkPipelineLayoutObj(VkDeviceObj *device,
                                          const std::vector<const VkDescriptorSetLayoutObj *> &descriptor_layouts,
                                          const std::vector<VkPushConstantRange> &push_constant_ranges) {
diff --git a/tests/vkrenderframework.h b/tests/vkrenderframework.h
index 98d2597..7846b29 100644
--- a/tests/vkrenderframework.h
+++ b/tests/vkrenderframework.h
@@ -398,6 +398,8 @@
    public:
     VkShaderObj(VkDeviceObj *device, const char *shaderText, VkShaderStageFlagBits stage, VkRenderFramework *framework,
                 char const *name = "main");
+    VkShaderObj(VkDeviceObj *device, const std::string spv_source, VkShaderStageFlagBits stage, VkRenderFramework *framework,
+                char const *name = "main");
     VkPipelineShaderStageCreateInfo const &GetStageCreateInfo() const;
 
    protected:
