diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index b0f15372473afeb1e919523e51c7528eb2737aac..18d5656925cae0cb5d0cba949bebb2ce74ee4092 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -93,6 +93,9 @@ add_executable (unit_tests
   test_FunctionProcessor.cpp
   test_FunctionSymbolId.cpp
   test_FunctionTable.cpp
+  test_GaussLegendreQuadratureDescriptor.cpp
+  test_GaussLobattoQuadratureDescriptor.cpp
+  test_GaussQuadratureDescriptor.cpp
   test_IfProcessor.cpp
   test_IncDecExpressionProcessor.cpp
   test_INodeProcessor.cpp
diff --git a/tests/test_GaussLegendreQuadratureDescriptor.cpp b/tests/test_GaussLegendreQuadratureDescriptor.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..8c28ee825b734b484a4f4ce7c1da425365342454
--- /dev/null
+++ b/tests/test_GaussLegendreQuadratureDescriptor.cpp
@@ -0,0 +1,16 @@
+#include <catch2/catch_test_macros.hpp>
+#include <catch2/matchers/catch_matchers_all.hpp>
+
+#include <analysis/GaussLegendreQuadratureDescriptor.hpp>
+
+// clazy:excludeall=non-pod-global-static
+
+TEST_CASE("GaussLegendreQuadratureDescriptor", "[analysis]")
+{
+  GaussLegendreQuadratureDescriptor quadrature_descriptor(3);
+
+  REQUIRE(quadrature_descriptor.isTensorial() == true);
+  REQUIRE(quadrature_descriptor.type() == QuadratureType::GaussLegendre);
+  REQUIRE(quadrature_descriptor.degree() == 3);
+  REQUIRE(quadrature_descriptor.name() == ::name(QuadratureType::GaussLegendre) + "(3)");
+}
diff --git a/tests/test_GaussLobattoQuadratureDescriptor.cpp b/tests/test_GaussLobattoQuadratureDescriptor.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..fe5430735bd2cf2596ba63fd1857ec931f8a1bb3
--- /dev/null
+++ b/tests/test_GaussLobattoQuadratureDescriptor.cpp
@@ -0,0 +1,16 @@
+#include <catch2/catch_test_macros.hpp>
+#include <catch2/matchers/catch_matchers_all.hpp>
+
+#include <analysis/GaussLobattoQuadratureDescriptor.hpp>
+
+// clazy:excludeall=non-pod-global-static
+
+TEST_CASE("GaussLobattoQuadratureDescriptor", "[analysis]")
+{
+  GaussLobattoQuadratureDescriptor quadrature_descriptor(3);
+
+  REQUIRE(quadrature_descriptor.isTensorial() == true);
+  REQUIRE(quadrature_descriptor.type() == QuadratureType::GaussLobatto);
+  REQUIRE(quadrature_descriptor.degree() == 3);
+  REQUIRE(quadrature_descriptor.name() == ::name(QuadratureType::GaussLobatto) + "(3)");
+}
diff --git a/tests/test_GaussQuadratureDescriptor.cpp b/tests/test_GaussQuadratureDescriptor.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..033ac7b4a6ebc2d78f0777f254ddf2a2eff659bb
--- /dev/null
+++ b/tests/test_GaussQuadratureDescriptor.cpp
@@ -0,0 +1,16 @@
+#include <catch2/catch_test_macros.hpp>
+#include <catch2/matchers/catch_matchers_all.hpp>
+
+#include <analysis/GaussQuadratureDescriptor.hpp>
+
+// clazy:excludeall=non-pod-global-static
+
+TEST_CASE("GaussQuadratureDescriptor", "[analysis]")
+{
+  GaussQuadratureDescriptor quadrature_descriptor(3);
+
+  REQUIRE(quadrature_descriptor.isTensorial() == false);
+  REQUIRE(quadrature_descriptor.type() == QuadratureType::Gauss);
+  REQUIRE(quadrature_descriptor.degree() == 3);
+  REQUIRE(quadrature_descriptor.name() == ::name(QuadratureType::Gauss) + "(3)");
+}