diff --git a/Changelog.md b/Changelog.md
--- a/Changelog.md
+++ b/Changelog.md
@@ -1,3 +1,13 @@
+# 1.1.6
+
+## Functionality Changes
+
+* The order of tests is now reversed from what was previously output (which was
+  itself reversed). This means that tests are now reported in the order they are
+  defined, as expected. Thanks to @feuerbach for this fix. See
+  https://github.com/ocharles/tasty-ant-xml/pull/28 for more information.
+
+
 # 1.1.5
 
 ## Other Changes
diff --git a/Test/Tasty/Runners/AntXML.hs b/Test/Tasty/Runners/AntXML.hs
--- a/Test/Tasty/Runners/AntXML.hs
+++ b/Test/Tasty/Runners/AntXML.hs
@@ -51,7 +51,7 @@
 data Summary = Summary { summaryFailures :: Sum Int
                        , summaryErrors :: Sum Int
                        , summarySuccesses :: Sum Int
-                       , xmlRenderer :: Endo XML.Element
+                       , xmlRenderer :: Endo [XML.Element]
                        } deriving (Generic)
 
 instance Monoid Summary where
@@ -107,7 +107,7 @@
 
                 mkSummary contents =
                   mempty { xmlRenderer = Endo
-                             (`appendChild` XML.node (XML.unqual "testcase") contents)
+                             (XML.node (XML.unqual "testcase") contents :)
                          }
 
                 mkSuccess time = (mkSummary (testCaseAttributes time)) { summarySuccesses = Sum 1 }
@@ -139,15 +139,17 @@
         runGroup groupName children = Tasty.Traversal $ Functor.Compose $ do
           Const soFar <- Reader.local (groupName :) $ Functor.getCompose $ Tasty.getTraversal children
 
-          let grouped = appEndo (xmlRenderer soFar) $
+          let grouped =
                 XML.node (XML.unqual "testsuite")
-                   [ XML.Attr (XML.unqual "name") groupName
+                  ([ XML.Attr (XML.unqual "name") groupName
                    , XML.Attr (XML.unqual "tests")
                        (show . getSum . (summaryFailures `mappend` summaryErrors `mappend` summarySuccesses) $ soFar)
                    ]
+                  , appEndo (xmlRenderer soFar) []
+                  )
 
           pure $ Const
-            soFar { xmlRenderer = Endo (`appendChild` grouped)
+            soFar { xmlRenderer = Endo (grouped :)
                   }
 
       in do
@@ -162,21 +164,18 @@
           createPathDirIfMissing path
           writeFile path $
             XML.showTopElement $
-              appEndo (xmlRenderer summary) $
-                XML.node
-                  (XML.unqual "testsuites")
-                  [ XML.Attr (XML.unqual "errors")
-                      (show . getSum . summaryErrors $ summary)
-                  , XML.Attr (XML.unqual "failures")
-                      (show . getSum . summaryFailures $ summary)
-                  , XML.Attr (XML.unqual "tests") (show tests)
-                  , XML.Attr (XML.unqual "time") (showTime elapsedTime)
-                  ]
+              XML.node
+                (XML.unqual "testsuites")
+                ([ XML.Attr (XML.unqual "errors")
+                     (show . getSum . summaryErrors $ summary)
+                 , XML.Attr (XML.unqual "failures")
+                     (show . getSum . summaryFailures $ summary)
+                 , XML.Attr (XML.unqual "tests") (show tests)
+                 , XML.Attr (XML.unqual "time") (showTime elapsedTime)
+                 ]
+                , appEndo (xmlRenderer summary) [])
 
           return (getSum ((summaryFailures `mappend` summaryErrors) summary) == 0)
-
-  appendChild parent child =
-    parent { XML.elContent = XML.elContent parent ++ [ XML.Elem child ] }
 
   resultException r =
     case Tasty.resultOutcome r of
diff --git a/tasty-ant-xml.cabal b/tasty-ant-xml.cabal
--- a/tasty-ant-xml.cabal
+++ b/tasty-ant-xml.cabal
@@ -1,5 +1,5 @@
 name: tasty-ant-xml
-version: 1.1.5
+version: 1.1.6
 synopsis: Render tasty output to XML for Jenkins
 description: A tasty ingredient to output test results in XML, using the Ant schema. This XML can be consumed by the Jenkins continuous integration framework.
 homepage: http://github.com/ocharles/tasty-ant-xml
