diff --git a/CHANGELOG.markdown b/CHANGELOG.markdown
--- a/CHANGELOG.markdown
+++ b/CHANGELOG.markdown
@@ -1,5 +1,9 @@
 # Revision history for foldable1-classes-compat
 
+## 0.1.2 -- 2025-06-17
+
+* Replace `test-framework` with `tasty` in the test suite.
+
 ## 0.1.1 -- 2024-12-05
 
 * Drop support for pre-8.0 versions of GHC.
diff --git a/foldable1-classes-compat.cabal b/foldable1-classes-compat.cabal
--- a/foldable1-classes-compat.cabal
+++ b/foldable1-classes-compat.cabal
@@ -1,6 +1,6 @@
 cabal-version: >=1.10
 name:          foldable1-classes-compat
-version:       0.1.1
+version:       0.1.2
 synopsis:
   Compatibility package for the Foldable1 and Bifoldable1 type classes
 
@@ -62,7 +62,7 @@
   if !impl(ghc >= 9.6)
     hs-source-dirs: src
     build-depends:
-        containers    >=0.4 && <0.8
+        containers    >=0.4 && <0.9
       , transformers  >=0.3 && <0.7
     exposed-modules:
       Data.Foldable1
@@ -92,10 +92,10 @@
     , containers
     , foldable1-classes-compat
     , transformers
-    , QuickCheck                  >=2.13.2  && <2.16
-    , quickcheck-instances        >=0.3.27  && <0.4
-    , test-framework              >=0.8.2.0 && <0.9
-    , test-framework-quickcheck2  >=0.3.0.5 && <0.4
+    , QuickCheck           >=2.13.2 && <2.17
+    , quickcheck-instances >=0.3.27 && <0.4
+    , tasty                >=1.4    && <1.6
+    , tasty-quickcheck     >=0.10   && <0.12
 
 benchmark bench
   default-language: Haskell2010
@@ -109,5 +109,5 @@
     , containers
     , foldable1-classes-compat
     , transformers
-    , tasty-bench >=0.3.5 && < 0.4
+    , tasty-bench >=0.3.5 && < 0.5
     , deepseq     >=1.3   && <1.6
diff --git a/test/Tests.hs b/test/Tests.hs
--- a/test/Tests.hs
+++ b/test/Tests.hs
@@ -23,12 +23,12 @@
 import Data.List.NonEmpty                   (NonEmpty (..))
 import Data.Semigroup
        (First (..), Last (..), Max (..), Min (..), Semigroup (..))
-import Test.Framework.Providers.API         (Test, TestName, testGroup)
-import Test.Framework.Providers.QuickCheck2 (testProperty)
-import Test.Framework.Runners.Console       (defaultMain)
 import Test.QuickCheck
        (Arbitrary, Fun, Property, Testable, applyFun, applyFun2, counterexample,
        mapSize, (===))
+import Test.Tasty
+       (TestName, TestTree, defaultMain, testGroup)
+import Test.Tasty.QuickCheck                (testProperty)
 import Test.QuickCheck.Poly                 (A, B, OrdA)
 
 import Test.QuickCheck.Instances ()
@@ -46,7 +46,8 @@
 #endif
 
 main :: IO ()
-main = defaultMain
+main = defaultMain $
+  testGroup "foldable1-classes-compat"
     [ foldable1tests "NonEmpty"  (P1 :: P1 NonEmpty)
     , foldable1tests "foldMap1"  (P1 :: P1 NE1)
     , foldable1tests "foldrMap1" (P1 :: P1 NE3)
@@ -76,7 +77,7 @@
       )
     => TestName
     -> P1 f
-    -> Test
+    -> TestTree
 foldable1tests name _p = testGroup name
     [ testProperty "foldMap1 ~= foldMap" coherentFoldMap
     , testProperty "toList . toNonEmpty ~= toList" coherentToNonEmpty
