def run(self, verbosity, pattern, start_dir):
        paths = self.get_path(start_dir, pattern)
        results = []
        failed = False

        app_factory = self.app_factory

        @before.each_scenario
        def setup_scenario(feature):
            world.app = app_factory()
            world.client = world.app.test_client()

        @after.each_scenario
        def teardown_scenario(scenario):
            del world.client
            del world.app

        registry.call_hook('before', 'harvest', locals())
        try:
            for path in paths:
                runner = Runner(path, verbosity=verbosity)
                result = runner.run()
                results.append(result)
                if not result or result.steps != result.steps_passed:
                    failed = True
        except Exception, e:
            import traceback
            traceback.print_exc(e)
        finally:
            registry.call_hook('after', 'harvest', results)
            if failed:
                print "Failed"
Gets the screenshot of the current window. Returns False if there is
dataset/ETHPy150Open dqminh/flask-lettuce/flask_lettuce.py/Harvest.run--crossover with--dataset/ETHPy150Open apiad/sublime-browser-integration/selenium/webdriver/remote/webdriver.py/WebDriver.get_screenshot_as_file