mirror of
https://github.com/httprunner/httprunner.git
synced 2026-09-07 00:17:37 +08:00
load_testcases_by_path: testset has a config dict and a testcases list
This commit is contained in:
+15
-3
@@ -147,8 +147,8 @@ def load_testcases_by_path(path):
|
|||||||
- list/set container with file(s) and/or folder(s)
|
- list/set container with file(s) and/or folder(s)
|
||||||
@return testcase sets list, each testset is corresponding to a file
|
@return testcase sets list, each testset is corresponding to a file
|
||||||
[
|
[
|
||||||
[testcase11, testcase12],
|
{"config": {}, "testcases": [testcase11, testcase12]},
|
||||||
[testcase21, testcase22, testcase23]
|
{"config": {}, "testcases": [testcase21, testcase22, testcase23]},
|
||||||
]
|
]
|
||||||
"""
|
"""
|
||||||
if isinstance(path, (list, set)):
|
if isinstance(path, (list, set)):
|
||||||
@@ -168,5 +168,17 @@ def load_testcases_by_path(path):
|
|||||||
return load_testcases_by_path(files_list)
|
return load_testcases_by_path(files_list)
|
||||||
|
|
||||||
if os.path.isfile(path):
|
if os.path.isfile(path):
|
||||||
|
testset = {
|
||||||
|
"config": {},
|
||||||
|
"testcases": []
|
||||||
|
}
|
||||||
testcases_list = load_testcases(path)
|
testcases_list = load_testcases(path)
|
||||||
return [testcases_list]
|
|
||||||
|
for item in testcases_list:
|
||||||
|
for key in item:
|
||||||
|
if key == "config":
|
||||||
|
testset["config"] = item["config"]
|
||||||
|
elif key == "test":
|
||||||
|
testset["testcases"].append(item["test"])
|
||||||
|
|
||||||
|
return [testset]
|
||||||
|
|||||||
+5
-6
@@ -258,14 +258,14 @@ class TestUtils(ApiServerUnittest):
|
|||||||
os.getcwd(), 'test/data/simple_demo_no_auth.json')
|
os.getcwd(), 'test/data/simple_demo_no_auth.json')
|
||||||
testset_list = utils.load_testcases_by_path(path)
|
testset_list = utils.load_testcases_by_path(path)
|
||||||
self.assertEqual(len(testset_list), 1)
|
self.assertEqual(len(testset_list), 1)
|
||||||
self.assertEqual(len(testset_list[0]), 2)
|
self.assertEqual(len(testset_list[0]["testcases"]), 2)
|
||||||
testsets_list.extend(testset_list)
|
testsets_list.extend(testset_list)
|
||||||
|
|
||||||
# relative file path
|
# relative file path
|
||||||
path = 'test/data/simple_demo_no_auth.yml'
|
path = 'test/data/simple_demo_no_auth.yml'
|
||||||
testset_list = utils.load_testcases_by_path(path)
|
testset_list = utils.load_testcases_by_path(path)
|
||||||
self.assertEqual(len(testset_list), 1)
|
self.assertEqual(len(testset_list), 1)
|
||||||
self.assertEqual(len(testset_list[0]), 2)
|
self.assertEqual(len(testset_list[0]["testcases"]), 2)
|
||||||
testsets_list.extend(testset_list)
|
testsets_list.extend(testset_list)
|
||||||
|
|
||||||
# list/set container with file(s)
|
# list/set container with file(s)
|
||||||
@@ -275,14 +275,13 @@ class TestUtils(ApiServerUnittest):
|
|||||||
]
|
]
|
||||||
testset_list = utils.load_testcases_by_path(path)
|
testset_list = utils.load_testcases_by_path(path)
|
||||||
self.assertEqual(len(testset_list), 2)
|
self.assertEqual(len(testset_list), 2)
|
||||||
self.assertEqual(len(testset_list[0]), 2)
|
self.assertEqual(len(testset_list[0]["testcases"]), 2)
|
||||||
self.assertEqual(len(testset_list[1]), 2)
|
self.assertEqual(len(testset_list[1]["testcases"]), 2)
|
||||||
testsets_list.extend(testset_list)
|
testsets_list.extend(testset_list)
|
||||||
self.assertEqual(len(testsets_list), 4)
|
self.assertEqual(len(testsets_list), 4)
|
||||||
|
|
||||||
for testset in testsets_list:
|
for testset in testsets_list:
|
||||||
for testcase in testset:
|
for testcase in testset["testcases"]:
|
||||||
testcase = testcase["test"]
|
|
||||||
self.assertIn('name', testcase)
|
self.assertIn('name', testcase)
|
||||||
self.assertIn('request', testcase)
|
self.assertIn('request', testcase)
|
||||||
self.assertIn('response', testcase)
|
self.assertIn('response', testcase)
|
||||||
|
|||||||
Reference in New Issue
Block a user