diff --git a/bob/pad/base/test/test_error_utils.py b/bob/pad/base/test/test_error_utils.py
index 277aec5e04de04b86287a7b02f6dadc7c5313116..43fd9026d704c639beda1a232d78bb16b7486c53 100644
--- a/bob/pad/base/test/test_error_utils.py
+++ b/bob/pad/base/test/test_error_utils.py
@@ -1,5 +1,4 @@
 import h5py
-import nose
 import numpy as np
 
 from bob.io.base.test_utils import datafile
@@ -77,10 +76,10 @@ def test_per_pai_apcer():
             ref_thresholds = _read_dict(f, "thresholds")
             ref_metrics = _read_dict(f, "metrics")
 
-        nose.tools.assert_list_equal(pos, ref_pos)
-        nose.tools.assert_dict_equal(negs, ref_negs)
-        nose.tools.assert_dict_equal(thresholds, ref_thresholds)
-        nose.tools.assert_dict_equal(metrics, ref_metrics)
+        assert pos == ref_pos
+        assert negs == ref_negs
+        assert thresholds == ref_thresholds
+        assert metrics == ref_metrics
 
 
 def test_csv_split():
diff --git a/conda/meta.yaml b/conda/meta.yaml
index de7110a99800e6811642ce096ac3e01456405e00..0f7d57f2954c3010fc3163d28e9b8640cf87b83e 100644
--- a/conda/meta.yaml
+++ b/conda/meta.yaml
@@ -55,13 +55,14 @@ test:
     - {{ name }}
   commands:
     - bob pad --help
-    - nosetests --with-coverage --cover-package={{ name }} -sv {{ name }}
+    - pytest --verbose --cov {{ name }} --cov-report term-missing --cov-report html:{{ project_dir }}/sphinx/coverage --cov-report xml:{{ project_dir }}/coverage.xml --pyargs {{ name }}
     - sphinx-build -aEW {{ project_dir }}/doc {{ project_dir }}/sphinx
     - sphinx-build -aEb doctest {{ project_dir }}/doc sphinx
     - conda inspect linkages -p $PREFIX {{ name }}  # [not win]
     - conda inspect objects -p $PREFIX {{ name }}  # [osx]
   requires:
-    - nose {{ nose }}
+    - pytest {{ pytest }}
+    - pytest-cov {{ pytest_cov }}
     - coverage {{ coverage }}
     - sphinx {{ sphinx }}
     - sphinx_rtd_theme {{ sphinx_rtd_theme }}