diff --git a/tests/Aggregation/Pipeline/DerivativeAggregationTest.php b/tests/Aggregation/Pipeline/DerivativeAggregationTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..2f7748e682a14f3f9bbef1485e513f5f6040487a
--- /dev/null
+++ b/tests/Aggregation/Pipeline/DerivativeAggregationTest.php
@@ -0,0 +1,38 @@
+<?php
+
+/*
+ * This file is part of the ONGR package.
+ *
+ * (c) NFQ Technologies UAB <info@nfq.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace ONGR\ElasticsearchDSL\Tests\Aggregation\Pipeline;
+
+use ONGR\ElasticsearchDSL\Aggregation\Pipeline\DerivativeAggregation;
+
+/**
+ * Unit test for derivative aggregation.
+ */
+class DerivativeAggregationTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * Tests toArray method.
+     */
+    public function testToArray()
+    {
+        $aggregation = new DerivativeAggregation('foo', 'foo>bar');
+        $aggregation->addParameter('gap_policy', 'skip');
+
+        $expected = [
+            'derivative' => [
+                'buckets_path' => 'foo>bar',
+                'gap_policy' => 'skip'
+            ]
+        ];
+
+        $this->assertEquals($expected, $aggregation->toArray());
+    }
+}