diff --git a/test/stokes/CMakeLists.txt b/test/stokes/CMakeLists.txt
index 2a274367c3d7dc652ccfadb580b68571b4d97e96..99972a8f624af931c7a3ae868254c396de21529f 100644
--- a/test/stokes/CMakeLists.txt
+++ b/test/stokes/CMakeLists.txt
@@ -12,6 +12,11 @@ dune_add_formcompiler_system_test(UFLFILE stokes_quadrilateral.ufl
                                   INIFILE stokes_quadrilateral.mini
                                   )
 
+dune_add_formcompiler_system_test(UFLFILE stokes_3d_quadrilateral.ufl
+                                  BASENAME stokes_3d_quadrilateral
+                                  INIFILE stokes_3d_quadrilateral.mini
+                                  )
+
 dune_add_formcompiler_system_test(UFLFILE stokes_sym.ufl
                                   BASENAME stokes_sym
                                   INIFILE stokes_sym.mini
@@ -27,11 +32,16 @@ dune_add_formcompiler_system_test(UFLFILE stokes_dg_quadrilateral.ufl
                                   INIFILE stokes_dg_quadrilateral.mini
                                   )
 
-#dune_add_formcompiler_system_test(UFLFILE stokes_stress.ufl
-#                                  BASENAME stokes_stress
-#                                  INIFILE stokes_stress.mini
-#                                  )
-#
+dune_add_formcompiler_system_test(UFLFILE stokes_3d_dg_quadrilateral.ufl
+                                  BASENAME stokes_3d_dg_quadrilateral
+                                  INIFILE stokes_3d_dg_quadrilateral.mini
+                                  )
+
+dune_add_formcompiler_system_test(UFLFILE stokes_stress.ufl
+                                  BASENAME stokes_stress
+                                  INIFILE stokes_stress.mini
+                                  )
+
 # Do not test stokes_stress_sym until the function_view project
 # has been fully implemented.
 #
diff --git a/test/stokes/stokes_3d_dg_quadrilateral.mini b/test/stokes/stokes_3d_dg_quadrilateral.mini
new file mode 100644
index 0000000000000000000000000000000000000000..7f7c1d3ad532131769200ce70d5ba2b97695db9c
--- /dev/null
+++ b/test/stokes/stokes_3d_dg_quadrilateral.mini
@@ -0,0 +1,15 @@
+__name = stokes_3d_dg_quadrilateral_{__exec_suffix}
+__exec_suffix = symdiff, numdiff | expand num
+
+cells = 4 4 4
+extension = 1. 1. 1.
+printmatrix = false
+
+[wrapper.vtkcompare]
+name = {__name}
+extension = vtu
+
+[formcompiler]
+numerical_jacobian = 0, 1 | expand num
+exact_solution_expression = g
+compare_l2errorsquared = 5e-7
diff --git a/test/stokes/stokes_3d_dg_quadrilateral.ufl b/test/stokes/stokes_3d_dg_quadrilateral.ufl
new file mode 100644
index 0000000000000000000000000000000000000000..313c5ad8f11759db6ca5664540ae4fa31d2007fc
--- /dev/null
+++ b/test/stokes/stokes_3d_dg_quadrilateral.ufl
@@ -0,0 +1,37 @@
+cell = hexahedron
+
+x = SpatialCoordinate(cell)
+g_v = as_vector((4*x[1]*(1.-x[1]), 0.0, 0.0))
+g_p = 8*(1.-x[0])
+g = (g_v, g_p)
+bctype = conditional(x[0] < 1. - 1e-8, 1, 0)
+
+P2 = VectorElement("DG", cell, 2)
+P1 = FiniteElement("DG", cell, 1)
+TH = P2 * P1
+
+v, q = TestFunctions(TH)
+u, p = TrialFunctions(TH)
+
+ds = ds(subdomain_id=1, subdomain_data=bctype)
+
+n = FacetNormal(cell)('+')
+eps = -1.0
+sigma = 1.0
+
+r = inner(grad(u), grad(v))*dx \
+  - p*div(v)*dx \
+  - q*div(u)*dx \
+  + inner(avg(grad(u))*n, jump(v))*dS \
+  + sigma * inner(jump(u), jump(v))*dS \
+  - eps * inner(avg(grad(v))*n, jump(u))*dS \
+  - avg(p)*inner(jump(v), n)*dS \
+  - avg(q)*inner(jump(u), n)*dS \
+  - inner(grad(u)*n, v)*ds \
+  + p*inner(v, n)*ds \
+  + q*inner(u, n)*ds \
+  + eps * inner(grad(v)*n, u-g_v)*ds \
+  + sigma * inner(u-g_v, v)*ds \
+  - q*inner(g_v, n)*ds
+
+forms = [r]