Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
泰斯特Test
Taisite-Platform
提交
94f48882
T
Taisite-Platform
项目概览
泰斯特Test
/
Taisite-Platform
9 个月 前同步成功
通知
121
Star
28
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
Taisite-Platform
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
94f48882
编写于
9月 09, 2019
作者:
泰斯特Test
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[feat](tester.py & common.py)支持非json响应时的字符串截取设置全局变量
上级
d6cbbc13
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
19 addition
and
2 deletion
+19
-2
backend/testframe/interfaceTest/tester.py
backend/testframe/interfaceTest/tester.py
+9
-0
backend/utils/common.py
backend/utils/common.py
+10
-2
未找到文件。
backend/testframe/interfaceTest/tester.py
浏览文件 @
94f48882
...
...
@@ -208,6 +208,15 @@ class tester:
response_json
=
json
.
loads
(
response
.
text
)
if
isinstance
(
response
.
text
,
str
)
\
and
response
.
text
.
strip
()
else
{}
except
BaseException
as
e
:
if
set_global_vars
and
isinstance
(
set_global_vars
,
list
):
for
set_global_var
in
set_global_vars
:
if
isinstance
(
set_global_var
,
dict
)
and
isinstance
(
set_global_var
.
get
(
'name'
),
str
):
name
=
set_global_var
.
get
(
'name'
)
query
=
set_global_var
.
get
(
'query'
)
value
=
common
.
dict_get
(
response
.
text
,
query
)
self
.
global_vars
[
name
]
=
str
(
value
)
if
value
else
value
if
'checkHttpCode'
in
test_case
and
not
test_case
[
'checkHttpCode'
]
in
[
""
,
None
]:
check_http_code
=
test_case
[
'checkHttpCode'
]
...
...
backend/utils/common.py
浏览文件 @
94f48882
...
...
@@ -197,7 +197,15 @@ def dict_get(dic, locators, default=None):
'''
if
not
isinstance
(
dic
,
dict
)
or
not
isinstance
(
locators
,
list
):
if
not
isinstance
(
dic
,
dict
):
if
not
isinstance
(
locators
,
list
):
return
default
elif
isinstance
(
dic
,
str
)
and
len
(
locators
)
==
1
and
is_slice_expression
(
locators
[
0
]):
slice_indexes
=
locators
[
0
].
split
(
':'
)
start_index
=
int
(
slice_indexes
[
0
])
if
slice_indexes
[
0
]
else
None
end_index
=
int
(
slice_indexes
[
-
1
])
if
slice_indexes
[
-
1
]
else
None
value
=
dic
[
start_index
:
end_index
]
return
value
return
default
if
dic
==
{}
or
len
(
locators
)
<
1
:
...
...
@@ -246,7 +254,7 @@ def dict_get(dic, locators, default=None):
def
is_slice_expression
(
expression
):
if
re
.
match
(
'(
\d+)?:(
\d+)?'
,
expression
):
if
re
.
match
(
'(
-?\d+)?:(-?
\d+)?'
,
expression
):
return
True
else
:
return
False
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录