diff --git a/tests/test_solver.py b/tests/test_solver.py
index 972b62d480cf62861858d4380e9f8ca8efdc8873..471e223677bf9873608d6731727c338953eaad9a 100644
--- a/tests/test_solver.py
+++ b/tests/test_solver.py
@@ -203,7 +203,11 @@ def test_selfcons_kupriyanov(request, T):
     Delta0 = BCS_Delta(T, Tc0)
     Delta00 = BCS_Delta(0.05, Tc0)
 
-    sol = example_sns_1d(0, L, nx=40, ny=1, Delta0=Delta0)
+    # L is the distance between terminals, but Lx the system size where
+    # the two outermost layers are terminals
+    nx = 40
+    Lp = (L / (nx - 2)) * nx
+    sol = example_sns_1d(0, L, nx=nx, ny=1, Delta0=Delta0)
     sol.Ly = 1
     phase_mask = (sol.mask == MASK_TERMINAL) & (sol.x[:, None] > 0)
 
@@ -236,8 +240,8 @@ def test_selfcons_kupriyanov(request, T):
 
     Imax = abs(Is_u).max()
 
-    assert curve_separation(phis, Is, phis_u, Is_u) < 0.05 * Imax
-    assert curve_separation(phis, Is, phis_k, Is_k) < 0.11 * Imax
+    assert curve_separation(phis, Is, phis_u, Is_u) < 0.025 * Imax
+    assert curve_separation(phis, Is, phis_k, Is_k) < 0.075 * Imax
 
 
 def curve_separation(x1, y1, x2, y2):