示例#1
0
 def test_run_httprunner_with_teardown_hooks_error(self):
     testcases = [
         {
             "config": {
                 "name": "test teardown hooks"
             },
             "teststeps": [
                 {
                     "name": "test teardown hooks",
                     "request": {
                         "url": "{}/headers".format(HTTPBIN_SERVER),
                         "method": "GET",
                         "data": "abc"
                     },
                     "teardown_hooks": [
                         "${alter_response_error($response)}"
                     ]
                 }
             ]
         }
     ]
     tests_mapping = {
         "project_mapping": loader.load_project_data("tests"),
         "testcases": testcases
     }
     summary = self.runner.run_tests(tests_mapping)
     self.assertFalse(summary["success"])
     self.assertEqual(summary["stat"]["teststeps"]["errors"], 1)
    def setUp(self):
        project_mapping = loader.load_project_data(os.path.join(os.getcwd(), "tests"))
        self.debugtalk_functions = project_mapping["functions"]

        config = {
            "name": "XXX",
            "base_url": "http://127.0.0.1",
            "verify": False
        }
        self.test_runner = runner.Runner(config)
        self.reset_all()
示例#3
0
    def test_run_httprunner_with_teardown_hooks_alter_response(self):
        testcases = [{
            "config": {
                "name": "test teardown hooks"
            },
            "teststeps": [{
                "name":
                "test teardown hooks",
                "request": {
                    "url": "{}/headers".format(HTTPBIN_SERVER),
                    "method": "GET",
                    "data": "abc"
                },
                "teardown_hooks": ["${alter_response($response)}"],
                "validate": [{
                    "eq": ["status_code", 500]
                }, {
                    "eq": ["headers.content-type", "html/text"]
                }, {
                    "eq": ["json.headers.Host", "127.0.0.1:8888"]
                }, {
                    "eq": ["content.headers.Host", "127.0.0.1:8888"]
                }, {
                    "eq": ["text.headers.Host", "127.0.0.1:8888"]
                }, {
                    "eq": ["new_attribute", "new_attribute_value"]
                }, {
                    "eq": ["new_attribute_dict", {
                        "key": 123
                    }]
                }, {
                    "eq": ["new_attribute_dict.key", 123]
                }]
            }]
        }]

        tests_mapping = {
            "project_mapping": loader.load_project_data("tests"),
            "testcases": testcases
        }
        summary = self.runner.run_tests(tests_mapping)
        self.assertTrue(summary["success"])
 def setUp(self):
     loader.load_project_data(os.path.join(os.getcwd(), "tests"))
     self.context = context.SessionContext(
         variables={"SECRET_KEY": "DebugTalk"})