Esempio n. 1
0
    def test_chrome_proxy(self):
        self.obj.responses = [
            ResponseEmul(200, '{"result" : {}}'),
            ResponseEmul(200, '{"result" : {"port": "port1", "host": "host1"}}'),
            ResponseEmul(200, ''),
            ResponseEmul(200, ''),  # startup: startRecording
            ResponseEmul(200, ''),  # shutdown: stopRecording
            ResponseEmul(200, 'regular jmx contents'),
            ResponseEmul(200, '{"result" : {"smartjmx": "unavailable"}}'),
            ResponseEmul(200, '{"result" : {"smartjmx": "available"}}'),
            ResponseEmul(200, 'only one string')]

        self.obj.engine.config.merge({
            'modules': {
                'recorder': {
                    'token': '123'}}})
        self.obj.settings = self.obj.engine.config.get('modules').get('recorder')
        self.sniff_log(self.obj.log)

        executor = SeleniumExecutor()
        executor.env = self.obj.engine.env
        self.obj.engine.provisioning.executors = [executor]

        self.obj.prepare()

        if is_linux():
            self._check_linux()
        elif is_windows():
            self._check_windows()
        else:   # MacOS
            self._check_mac()

        self.obj.shutdown()
        self.obj.post_process()
Esempio n. 2
0
    def test_chrome_proxy(self):
        self.obj.responses = [
            ResponseEmul(200, '{"result" : {}}'),
            ResponseEmul(200, '{"result" : {"port": "port1", "host": "host1"}}'),
            ResponseEmul(200, ''),
            ResponseEmul(200, ''),  # startup: startRecording
            ResponseEmul(200, ''),  # shutdown: stopRecording
            ResponseEmul(200, '{"result" : "http://jmx_url"}'),
            ResponseEmul(200, 'regular jmx contents'),
            ResponseEmul(200, '{"result" : "http://smartjmx_url"}'),
            ResponseEmul(200, 'smartjmx content')]

        self.obj.engine.config.merge({
            'modules': {
                'recorder': {
                    'token': '123'}}})
        self.obj.settings = self.obj.engine.config.get('modules').get('recorder')
        self.sniff_log(self.obj.log)

        executor = SeleniumExecutor()
        executor.env = self.obj.engine.env
        self.obj.engine.provisioning.executors = [executor]

        self.obj.prepare()

        if is_linux():
            self._check_linux()
        elif is_windows():
            self._check_windows()
        else:  # MacOS
            self._check_mac()

        self.obj.shutdown()
        self.obj.post_process()
Esempio n. 3
0
    def test_full(self):
        self.obj.api_delay = 1
        self.obj.responses = [
            ResponseEmul(200, '{"result" : {}}'),
            ResponseEmul(
                200,
                '{"result" : {"port": "port1", "host": "host1", "username":"******", "password":"******"}}'
            ),
            ResponseEmul(200, ''),
            ResponseEmul(200, ''),  # startup: startRecording
            ResponseEmul(200, ''),  # shutdown: stopRecording
            ResponseEmul(200, '{"result" : "http://jmx_url"}'),
            ResponseEmul(200, 'regular jmx contents'),
            ResponseEmul(200, '{"result" : "http://smartjmx_url"}'),
            ResponseEmul(200, 'smartjmx content')
        ]

        self.obj.engine.config.merge(
            {'modules': {
                'recorder': {
                    'token': '123'
                }
            }})
        self.obj.settings = self.obj.engine.config.get('modules').get(
            'recorder')

        executor = SeleniumExecutor()
        executor.env = self.obj.engine.env
        self.obj.engine.provisioning.executors = [executor]

        self.obj.prepare()
        self.assertEqual(self.obj.proxy_addr, 'user1:123@host1:port1')

        self.obj.startup()
        self.obj.shutdown()
        self.obj.post_process()

        with open(self.obj.engine.artifacts_dir +
                  '/generated.smart.jmx') as fd:
            lines = fd.readlines()
            self.assertEqual(len(lines), 1)
            self.assertEqual(lines[0].strip(), 'smartjmx content')

        with open(self.obj.engine.artifacts_dir +
                  '/generated.simple.jmx') as fd:
            lines = fd.readlines()
            self.assertEqual(len(lines), 1)
            self.assertEqual(lines[0].strip(), 'regular jmx contents')
Esempio n. 4
0
    def setUp(self):
        super(TestJUnitTester, self).setUp()
        engine_obj = EngineEmul()
        paths = [local_paths_config()]
        engine_obj.configure(paths)

        # just download geckodriver & chromedriver with selenium
        selenium = SeleniumExecutor()
        selenium.engine = engine_obj
        selenium.env = selenium.engine.env
        selenium.execution.merge({"scenario": {"requests": ["req"]}})
        selenium.prepare()

        self.obj = JUnitTester()
        self.obj.settings = engine_obj.config.get("modules").get("junit")
        self.obj.engine = engine_obj
        self.obj.env = self.obj.engine.env
Esempio n. 5
0
    def setUp(self):
        super(TestJUnitTester, self).setUp()
        engine_obj = EngineEmul()
        paths = [local_paths_config()]
        engine_obj.configure(paths)

        # just download geckodriver & chromedriver with selenium
        selenium = SeleniumExecutor()
        selenium.engine = engine_obj
        selenium.env = selenium.engine.env
        selenium.execution.merge({"scenario": {"requests": ["req"]}})
        selenium.prepare()

        self.obj = JUnitTester()
        self.obj.settings = engine_obj.config.get("modules").get("junit")
        self.obj.engine = engine_obj
        self.obj.env = self.obj.engine.env
Esempio n. 6
0
    def test_full(self):
        self.obj.api_delay = 1
        self.obj.responses = [
            ResponseEmul(200, '{"result" : {}}'),
            ResponseEmul(200, '{"result" : {"port": "port1", "host": "host1"}}'),
            ResponseEmul(200, ''),
            ResponseEmul(200, ''),  # startup: startRecording
            ResponseEmul(200, ''),  # shutdown: stopRecording
            ResponseEmul(200, '{"result" : "http://jmx_url"}'),
            ResponseEmul(200, 'regular jmx contents'),
            ResponseEmul(200, '{"result" : "http://smartjmx_url"}'),
            ResponseEmul(200, 'smartjmx content')]

        self.obj.engine.config.merge({
            'modules': {
                'recorder': {
                    'token': '123'}}})
        self.obj.settings = self.obj.engine.config.get('modules').get('recorder')

        executor = SeleniumExecutor()
        executor.env = self.obj.engine.env
        self.obj.engine.provisioning.executors = [executor]

        self.obj.prepare()
        self.assertEqual(self.obj.proxy_addr, 'http://host1:port1')

        self.obj.startup()
        self.obj.shutdown()
        self.obj.post_process()

        with open(self.obj.engine.artifacts_dir + '/generated.smart.jmx') as fd:
            lines = fd.readlines()
            self.assertEqual(len(lines), 1)
            self.assertEqual(lines[0].strip(), 'smartjmx content')

        with open(self.obj.engine.artifacts_dir + '/generated.simple.jmx') as fd:
            lines = fd.readlines()
            self.assertEqual(len(lines), 1)
            self.assertEqual(lines[0].strip(), 'regular jmx contents')