diff --git a/Tests/MaterialLib/TestFractureModels.cpp b/Tests/MaterialLib/TestFractureModels.cpp
index 38690268c5c52b1d8d2cb94df04cab3403db19ed..5ea79594ffba48dddac9612a419e6f79523eb184 100644
--- a/Tests/MaterialLib/TestFractureModels.cpp
+++ b/Tests/MaterialLib/TestFractureModels.cpp
@@ -24,6 +24,9 @@ using namespace MaterialLib::Fracture;
 static const double eps_sigma = 1e6*1e-5;
 static const double eps_C = 1e10*1e-5;
 
+static NumLib::NewtonRaphsonSolverParameters const nonlinear_solver_parameters{
+    1000, 1e-16};
+
 TEST(MaterialLib_Fracture, LinearElasticIsotropic)
 {
     ParameterLib::ConstantParameter<double> const kn("", 1e11);
@@ -37,6 +40,7 @@ TEST(MaterialLib_Fracture, LinearElasticIsotropic)
                                             tension_cutoff, mp};
     std::unique_ptr<FractureModelBase<2>::MaterialStateVariables> state(
         fractureModel.createMaterialStateVariables());
+    state->pushBackState();
 
     Eigen::Vector2d const w_prev = Eigen::Vector2d::Zero();
     Eigen::Vector2d const sigma0 = Eigen::Vector2d::Zero();
@@ -84,10 +88,12 @@ TEST(MaterialLib_Fracture, MohrCoulomb2D_elastic)
     double const aperture0 = 1;
     double const penalty_aperture_cutoff = aperture0;
     bool const tension_cutoff = true;
-    MohrCoulomb::MohrCoulomb<2> fractureModel{penalty_aperture_cutoff,
+    MohrCoulomb::MohrCoulomb<2> fractureModel{nonlinear_solver_parameters,
+                                              penalty_aperture_cutoff,
                                               tension_cutoff, mp};
     std::unique_ptr<FractureModelBase<2>::MaterialStateVariables> state(
         fractureModel.createMaterialStateVariables());
+    state->pushBackState();
 
     Eigen::Vector2d const w_prev = Eigen::Vector2d::Zero();
     Eigen::Vector2d const sigma0 = Eigen::Vector2d::Zero();
@@ -134,10 +140,12 @@ TEST(MaterialLib_Fracture, MohrCoulomb2D_negative_t)
     double const aperture0 = 1e-5;
     double const penalty_aperture_cutoff = aperture0;
     bool const tension_cutoff = true;
-    MohrCoulomb::MohrCoulomb<2> fractureModel{penalty_aperture_cutoff,
+    MohrCoulomb::MohrCoulomb<2> fractureModel{nonlinear_solver_parameters,
+                                              penalty_aperture_cutoff,
                                               tension_cutoff, mp};
     std::unique_ptr<FractureModelBase<2>::MaterialStateVariables> state(
         fractureModel.createMaterialStateVariables());
+    state->pushBackState();
 
     Eigen::Vector2d const w_prev = Eigen::Vector2d::Zero();
     Eigen::Vector2d const sigma0(-3.46e6, -2e6);
@@ -175,10 +183,12 @@ TEST(MaterialLib_Fracture, MohrCoulomb2D_positive_t)
     double const aperture0 = 1e-5;
     double const penalty_aperture_cutoff = aperture0;
     bool const tension_cutoff = true;
-    MohrCoulomb::MohrCoulomb<2> fractureModel{penalty_aperture_cutoff,
+    MohrCoulomb::MohrCoulomb<2> fractureModel{nonlinear_solver_parameters,
+                                              penalty_aperture_cutoff,
                                               tension_cutoff, mp};
     std::unique_ptr<FractureModelBase<2>::MaterialStateVariables> state(
         fractureModel.createMaterialStateVariables());
+    state->pushBackState();
 
     Eigen::Vector2d const w_prev = Eigen::Vector2d::Zero();
     Eigen::Vector2d const sigma0(0, -2e6);
@@ -215,10 +225,12 @@ TEST(MaterialLib_Fracture, MohrCoulomb3D_negative_t1)
     double const aperture0 = 1e-5;
     double const penalty_aperture_cutoff = aperture0;
     bool const tension_cutoff = true;
-    MohrCoulomb::MohrCoulomb<3> fractureModel{penalty_aperture_cutoff,
+    MohrCoulomb::MohrCoulomb<3> fractureModel{nonlinear_solver_parameters,
+                                              penalty_aperture_cutoff,
                                               tension_cutoff, mp};
     std::unique_ptr<FractureModelBase<3>::MaterialStateVariables> state(
         fractureModel.createMaterialStateVariables());
+    state->pushBackState();
 
     Eigen::Vector3d const w_prev = Eigen::Vector3d::Zero();
     Eigen::Vector3d const sigma0(-3.46e6, 0, -2e6);
@@ -261,10 +273,12 @@ TEST(MaterialLib_Fracture, MohrCoulomb3D_positive_t1)
     double const aperture0 = 1e-5;
     double const penalty_aperture_cutoff = aperture0;
     bool const tension_cutoff = true;
-    MohrCoulomb::MohrCoulomb<3> fractureModel{penalty_aperture_cutoff,
+    MohrCoulomb::MohrCoulomb<3> fractureModel{nonlinear_solver_parameters,
+                                              penalty_aperture_cutoff,
                                               tension_cutoff, mp};
     std::unique_ptr<FractureModelBase<3>::MaterialStateVariables> state(
         fractureModel.createMaterialStateVariables());
+    state->pushBackState();
 
     Eigen::Vector3d const w_prev = Eigen::Vector3d::Zero();
     Eigen::Vector3d const sigma0(0, 0, -2e6);
@@ -308,10 +322,12 @@ TEST(MaterialLib_Fracture, MohrCoulomb3D_positive_t2)
     double const aperture0 = 1e-5;
     double const penalty_aperture_cutoff = aperture0;
     bool const tension_cutoff = true;
-    MohrCoulomb::MohrCoulomb<3> fractureModel{penalty_aperture_cutoff,
+    MohrCoulomb::MohrCoulomb<3> fractureModel{nonlinear_solver_parameters,
+                                              penalty_aperture_cutoff,
                                               tension_cutoff, mp};
     std::unique_ptr<FractureModelBase<3>::MaterialStateVariables> state(
         fractureModel.createMaterialStateVariables());
+    state->pushBackState();
 
     Eigen::Vector3d const w_prev = Eigen::Vector3d::Zero();
     Eigen::Vector3d const sigma0(0, 0, -2e6);
@@ -355,10 +371,11 @@ TEST(MaterialLib_Fracture, MohrCoulomb3D_negative_t1t2)
     double const aperture0 = 1e-5;
     double const penalty_aperture_cutoff = aperture0;
     bool const tension_cutoff = true;
-    MohrCoulomb::MohrCoulomb<3> fractureModel{penalty_aperture_cutoff,
-                                              tension_cutoff, mp};
+    MohrCoulomb::MohrCoulomb<3> fractureModel{
+        {1000, 1e-9}, penalty_aperture_cutoff, tension_cutoff, mp};
     std::unique_ptr<FractureModelBase<3>::MaterialStateVariables> state(
         fractureModel.createMaterialStateVariables());
+    state->pushBackState();
 
     Eigen::Vector3d const w_prev = Eigen::Vector3d::Zero();
     Eigen::Vector3d const sigma0(-3.46e6 / std::sqrt(2), -3.46e6 / std::sqrt(2),
@@ -403,10 +420,12 @@ TEST(MaterialLib_Fracture, MohrCoulomb3D_negative_t1_positive_t2)
     double const aperture0 = 1e-5;
     double const penalty_aperture_cutoff = aperture0;
     bool const tension_cutoff = true;
-    MohrCoulomb::MohrCoulomb<3> fractureModel{penalty_aperture_cutoff,
-                                              tension_cutoff, mp};
+
+    MohrCoulomb::MohrCoulomb<3> fractureModel{
+        {1000, 1e-9}, penalty_aperture_cutoff, tension_cutoff, mp};
     std::unique_ptr<FractureModelBase<3>::MaterialStateVariables> state(
         fractureModel.createMaterialStateVariables());
+    state->pushBackState();
 
     Eigen::Vector3d const w_prev = Eigen::Vector3d::Zero();
     Eigen::Vector3d const sigma0(-3.46e6 / std::sqrt(2), 3.46e6 / std::sqrt(2),