diff --git a/chell-quickcheck.cabal b/chell-quickcheck.cabal
--- a/chell-quickcheck.cabal
+++ b/chell-quickcheck.cabal
@@ -1,5 +1,5 @@
 name: chell-quickcheck
-version: 0.2.2
+version: 0.2.3
 license: MIT
 license-file: license.txt
 author: John Millikin <jmillikin@gmail.com>
@@ -19,7 +19,7 @@
 source-repository this
   type: git
   location: https://john-millikin.com/code/chell-quickcheck/
-  tag: chell-quickcheck_0.2.2
+  tag: chell-quickcheck_0.2.3
 
 library
   hs-source-dirs: lib
@@ -28,7 +28,7 @@
   build-depends:
       base >= 4.0 && < 5.0
     , chell >= 0.3 && < 0.4
-    , QuickCheck >= 2.3 && < 2.7
+    , QuickCheck >= 2.3 && < 2.8
     , random
 
   exposed-modules:
diff --git a/lib/Test/Chell/QuickCheck.hs b/lib/Test/Chell/QuickCheck.hs
--- a/lib/Test/Chell/QuickCheck.hs
+++ b/lib/Test/Chell/QuickCheck.hs
@@ -9,6 +9,10 @@
 import qualified Test.Chell as Chell
 import qualified Test.QuickCheck as QuickCheck
 import qualified Test.QuickCheck.Gen as Gen
+#if MIN_VERSION_QuickCheck(2,7,0)
+import           Test.QuickCheck.Property (unProperty)
+import qualified Test.QuickCheck.Random as QCRandom
+#endif
 import qualified Test.QuickCheck.State as State
 import qualified Test.QuickCheck.Test as Test
 import qualified Test.QuickCheck.Text as Text
@@ -46,7 +50,12 @@
 		, State.numDiscardedTests = 0
 		, State.collected = []
 		, State.expectedFailure = False
+
+#if MIN_VERSION_QuickCheck(2,7,0)
+		, State.randomSeed = QCRandom.mkQCGen seed
+#else
 		, State.randomSeed = mkStdGen seed
+#endif
 		, State.numSuccessShrinks = 0
 		, State.numTryShrinks = 0
 #if MIN_VERSION_QuickCheck(2,5,0)
@@ -57,7 +66,12 @@
 #endif
 		}
 	
-	result <- Test.test state (Gen.unGen (QuickCheck.property prop))
+#if MIN_VERSION_QuickCheck(2,7,0)
+	let genProp = unProperty (QuickCheck.property prop)
+#else
+	let genProp = QuickCheck.property prop
+#endif
+	result <- Test.test state (Gen.unGen genProp)
 	let output = Test.output result
 	let notes = [("seed", show seed)]
 	let failure = Chell.failure { Chell.failureMessage = output }
