diff --git a/lib/ronin/scanner.rb b/lib/ronin/scanner.rb
index <HASH>..<HASH> 100644
--- a/lib/ronin/scanner.rb
+++ b/lib/ronin/scanner.rb
@@ -37,6 +37,24 @@ module Ronin
         end
 
         #
+        # Returns all scanner tests in the specified _category_.
+        #
+        def scanners_for(name)
+          name = name.to_sym
+          tests = []
+
+          ancestors.each do |ancestor|
+            if ancestor.include?(Ronin::Scanner)
+              if ancestor.scanners.has_key?(name)
+                tests += ancestor.scanners[name]
+              end
+            end
+          end
+
+          return tests
+        end
+
+        #
         # Returns the category names of all defined scanners.
         #
         def scans_for
diff --git a/spec/scanner_spec.rb b/spec/scanner_spec.rb
index <HASH>..<HASH> 100644
--- a/spec/scanner_spec.rb
+++ b/spec/scanner_spec.rb
@@ -31,6 +31,13 @@ describe Scanner do
     AnotherScanner.scans_for?(:test2).should == true
   end
 
+  it "should return all scanner tests within a category" do
+    tests = ExampleScanner.scanners_for(:test2)
+
+    tests.length.should == 2
+    tests.all? { |test| test.kind_of?(Proc) }.should == true
+  end
+
   it "should specify the category names of all tests" do
     ExampleScanner.scans_for.should == Set[:test1, :test2]
     AnotherScanner.scans_for.should == Set[:test1, :test2, :test3]
Added Scanners.scanners_for.