Macro for exunit test cases

I am writing test cases for my application and most of my controllers contain common code for CRUDs so I have written common macro and use it inside my controllers. Test cases for all of the controllers would be written automatically. But I am confused about how to make this common code overridable so that I can override whenever I want.

defmodule Qserv.ControllerTest do
  defmacro __using__(_options) do
    quote location: :keep do
      use Qserv.Web.ConnCase, async: true
      # this kernel will give me access to current `@model` and `@controller` 
      use Qserv.KernelTest
      
      describe "#{@controller}.create/2" do
        test "All required fields set `required` in model should generate errors that these fields are missing -> One, two, All"

        test "Only required fields should create record and match the object"
      end

      # defoverridable index: 2, I want to override above `describe` completely or/and the included test cases
    end
  end
end

Any help/idea how to achieve this?