Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
I
InterfaceAutoTest
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
TestAuto
InterfaceAutoTest
Commits
da3ce6b7
Commit
da3ce6b7
authored
Sep 10, 2021
by
liangyan10
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
角色管理
parent
dc8f0584
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
250 additions
and
117 deletions
+250
-117
test_case/sso/test_role.py
+133
-0
test_case/sso/test_user.py
+117
-117
test_case_data/sso/sso_testcase_20210513.xlsx
+0
-0
No files found.
test_case/sso/test_role.py
0 → 100644
View file @
da3ce6b7
import
pytest
,
allure
,
xlrd
,
requests
,
os
from
config
import
*
from
common.utils.getExcelData
import
*
from
common.tools
import
*
from
common.db
import
*
import
dict
from
service.login
import
SSOLogin
import
json
@allure.epic
(
"角色管理"
)
@allure.feature
(
"角色管理"
)
class
TestRole
():
workBook
=
xlrd
.
open_workbook
(
f
'{SSOConfig.root_path}/test_case_data/sso/sso_testcase_20210513.xlsx'
)
@allure.story
(
"角色列表查询"
)
@allure.title
(
"{inData[testPoint]}"
)
@allure.description
(
"/web/auth/roles"
)
@pytest.mark.parametrize
(
"inData"
,
get_excelData
(
workBook
,
"大数据平台系统设置"
,
"rolelist"
))
def
test_rolelist
(
self
,
inData
):
url
=
f
"{SSOConfig().test_host}{inData['url']}"
method
=
inData
[
'method'
]
req_data
=
inData
[
'reqData'
]
expectData
=
inData
[
'expectData'
]
headers
=
inData
[
'headers'
]
res
=
request_main
(
url
,
headers
,
method
,
req_data
)
assert
res
[
"code"
]
==
expectData
[
"code"
]
@allure.story
(
"角色详情基本信息"
)
@allure.title
(
"{inData[testPoint]}"
)
@allure.description
(
"/web/auth/roles"
)
@pytest.mark.parametrize
(
"inData"
,
get_excelData
(
workBook
,
"大数据平台系统设置"
,
"rolebasic"
))
def
test_rolebasic
(
self
,
inData
):
url
=
f
"{SSOConfig().test_host}{inData['url']}"
method
=
inData
[
'method'
]
req_data
=
inData
[
'reqData'
]
expectData
=
inData
[
'expectData'
]
headers
=
SSOConfig
.
headers
headers
[
'token'
]
=
SSOConfig
.
sso_token
headers
.
update
({
'Referer'
:
'http://testhdsp.hikcreate.com/'
})
res
=
requests
.
get
(
url
=
url
,
headers
=
headers
,
params
=
req_data
)
res
=
res
.
json
()
assert
res
[
"code"
]
==
expectData
[
"code"
]
@allure.story
(
"角色详情资源信息"
)
@allure.title
(
"{inData[testPoint]}"
)
@allure.description
(
"/web/auth/roles"
)
@pytest.mark.parametrize
(
"inData"
,
get_excelData
(
workBook
,
"大数据平台系统设置"
,
"roleresource"
))
def
test_roleresource
(
self
,
inData
):
url
=
f
"{SSOConfig().test_host}{inData['url']}"
method
=
inData
[
'method'
]
req_data
=
inData
[
'reqData'
]
expectData
=
inData
[
'expectData'
]
headers
=
SSOConfig
.
headers
headers
[
'token'
]
=
SSOConfig
.
sso_token
headers
.
update
({
'Referer'
:
'http://testhdsp.hikcreate.com/'
})
res
=
requests
.
get
(
url
=
url
,
headers
=
headers
,
params
=
req_data
)
res
=
res
.
json
()
assert
res
[
"code"
]
==
expectData
[
"code"
]
@allure.story
(
"角色详情应用信息"
)
@allure.title
(
"{inData[testPoint]}"
)
@allure.description
(
"/web/auth/roles"
)
@pytest.mark.parametrize
(
"inData"
,
get_excelData
(
workBook
,
"大数据平台系统设置"
,
"roleapplist"
))
def
test_roleapplist
(
self
,
inData
):
url
=
f
"{SSOConfig().test_host}{inData['url']}"
method
=
inData
[
'method'
]
req_data
=
inData
[
'reqData'
]
expectData
=
inData
[
'expectData'
]
headers
=
SSOConfig
.
headers
headers
[
'token'
]
=
SSOConfig
.
sso_token
headers
.
update
({
'Referer'
:
'http://testhdsp.hikcreate.com/'
})
res
=
requests
.
get
(
url
=
url
,
headers
=
headers
,
params
=
req_data
)
res
=
res
.
json
()
assert
res
[
"code"
]
==
expectData
[
"code"
]
@allure.story
(
"角色详情资源列表"
)
@allure.title
(
"{inData[testPoint]}"
)
@allure.description
(
"/web/auth/roles"
)
@pytest.mark.parametrize
(
"inData"
,
get_excelData
(
workBook
,
"大数据平台系统设置"
,
"roleresourcelist"
))
def
test_roleresourcelist
(
self
,
inData
):
url
=
f
"{SSOConfig().test_host}{inData['url']}"
method
=
inData
[
'method'
]
req_data
=
inData
[
'reqData'
]
expectData
=
inData
[
'expectData'
]
headers
=
inData
[
'headers'
]
res
=
request_main
(
url
,
headers
,
method
,
req_data
)
assert
res
[
"code"
]
==
expectData
[
"code"
]
@allure.story
(
"角色新增"
)
@allure.title
(
"{inData[testPoint]}"
)
@allure.description
(
"/web/auth/roles"
)
@pytest.mark.parametrize
(
"inData"
,
get_excelData
(
workBook
,
"大数据平台系统设置"
,
"roleadd"
))
def
test_roleadd
(
self
,
inData
):
url
=
f
"{SSOConfig().test_host}{inData['url']}"
method
=
inData
[
'method'
]
req_data
=
inData
[
'reqData'
]
expectData
=
inData
[
'expectData'
]
headers
=
inData
[
'headers'
]
mysql
=
MYSQL
(
*
BaseConfig
.
test_mysql
)
if
mysql
.
ExecuQuery
(
"select * from db_sso.sso_role where name ='我的自动化'"
):
mysql
.
ExecuNonQuery
(
"delete from db_sso.sso_role where name ='我的自动化'"
)
res
=
request_main
(
url
,
headers
,
method
,
req_data
)
assert
res
[
"code"
]
==
expectData
[
"code"
]
@allure.story
(
"角色修改"
)
@allure.title
(
"{inData[testPoint]}"
)
@allure.description
(
"/web/auth/roles"
)
@pytest.mark.parametrize
(
"inData"
,
get_excelData
(
workBook
,
"大数据平台系统设置"
,
"roleupdate"
))
def
test_roleupdata
(
self
,
inData
):
url
=
f
"{SSOConfig().test_host}{inData['url']}"
method
=
inData
[
'method'
]
req_data
=
inData
[
'reqData'
]
expectData
=
inData
[
'expectData'
]
headers
=
inData
[
'headers'
]
res
=
request_main
(
url
,
headers
,
method
,
req_data
)
assert
res
[
"code"
]
==
expectData
[
"code"
]
@allure.story
(
"角色删除"
)
@allure.title
(
"{inData[testPoint]}"
)
@allure.description
(
"/web/auth/roles"
)
@pytest.mark.parametrize
(
"inData"
,
get_excelData
(
workBook
,
"大数据平台系统设置"
,
"roledelet"
))
def
test_roledelet
(
self
,
inData
):
method
=
inData
[
'method'
]
req_data
=
inData
[
'reqData'
]
expectData
=
inData
[
'expectData'
]
headers
=
inData
[
'headers'
]
req_data1
=
{
"manageDeptType"
:
0
,
"appIds"
:[],
"appId"
:
"1"
,
"name"
:
"cs"
,
"description"
:
"cs"
,
"typeCode"
:
"ceshi110"
,
"state"
:
1
}
res1
=
request_main
(
url
=
"http://testhdsp.hikcreate.com/web/auth/roles/add"
,
headers
=
headers
,
method
=
method
,
data
=
req_data1
)
roleId
=
res1
[
"data"
][
"roleId"
]
url
=
f
"{SSOConfig().test_host}{inData['url']}{roleId}"
res
=
request_main
(
url
,
headers
,
method
,
req_data
)
assert
res
[
"code"
]
==
expectData
[
"code"
]
test_case/sso/test_user.py
View file @
da3ce6b7
...
...
@@ -14,123 +14,123 @@ class RelayData():
@allure.feature
(
"账号管理"
)
class
TestUsersManage
():
workBook
=
xlrd
.
open_workbook
(
f
'{SSOConfig.root_path}/test_case_data/sso/sso_testcase_20210513.xlsx'
)
#
@allure.story("账号查询")
#
@allure.title("{inData[testPoint]}")
#
@allure.description("/web/auth/users/page")
#
@pytest.mark.parametrize("inData",get_excelData(workBook,"大数据平台系统设置","userlist"))
#
def test_userlist(self,inData):
#
url=f"{SSOConfig.test_host}{inData['url']}"
#
method=inData['method']
#
req_data=inData['reqData']
#
expectData=inData['expectData']
#
headers=inData['headers']
#
#
res=request_main(url,headers,method,req_data)
#
assert res["code"]==expectData["code"]
#
#
@allure.story("账号新增")
#
@allure.title("{inData[testPoint]}")
#
@allure.description("/web/auth/users/page")
#
@pytest.mark.parametrize("inData", get_excelData(workBook, "大数据平台系统设置", "useradd"))
#
def test_useradd(self, inData):
#
url = f"{SSOConfig.test_host}{inData['url']}"
#
method = inData['method']
#
req_data = inData['reqData']
#
expectData = inData['expectData']
#
headers = inData['headers']
#
mysql=MYSQL(*BaseConfig.test_mysql)
#
if mysql.ExecuQuery("select * from db_sso.sso_user where login_name ='zidonghua' or real_name ='zidonghua' "):
#
mysql.ExecuNonQuery("delete from db_sso.sso_user where login_name ='zidonghua'or real_name='zidonghua'")
#
res = request_main(url, headers, method, req_data)
#
if res["message"] == '添加用户成功':
#
a = res["data"]["userId"]
#
setattr(RelayData, 'userId', a)
#
print(RelayData.userId)
#
assert res["code"] == expectData["code"]
#
#
@allure.story("账号编辑")
#
@allure.title("{inData[testPoint]}")
#
@allure.description("/web/auth/users/page")
#
@pytest.mark.parametrize("inData", get_excelData(workBook, "大数据平台系统设置", "userupdate"))
#
def test_userupdate(self, inData):
#
url = f"{SSOConfig.test_host}{inData['url']}"
#
method = inData['method']
#
req_data = inData['reqData']
#
expectData = inData['expectData']
#
headers = inData['headers']
#
res = request_main(url, headers, method, req_data)
#
assert res["code"] == expectData["code"]
#
#
@allure.story("查看账号详情")
#
@allure.title("{inData[testPoint]}")
#
@allure.description("/web/auth/users/page")
#
@pytest.mark.parametrize("inData", get_excelData(workBook, "大数据平台系统设置", "userview"))
#
def test_userview(self, inData):
#
url = f"{SSOConfig.test_host}{inData['url']}"
#
method = inData['method']
#
req_data = inData['reqData']
#
expectData = inData['expectData']
#
headers = SSOConfig.headers
#
headers['token'] = SSOConfig.sso_token
#
headers.update({'Referer': 'http://testhdsp.hikcreate.com/'})
#
res = requests.get(url=url, params=req_data, headers=headers)
#
res = res.json()
#
assert res["code"] == expectData["code"]
#
#
@allure.story("账号删除")
#
@allure.title("{inData[testPoint]}")
#
@allure.description("/web/auth/users/page")
#
@pytest.mark.parametrize("inData", get_excelData(workBook, "大数据平台系统设置", "userdelet"))
#
def test_userdelet(self, inData):
#
url = f"{SSOConfig.test_host}{inData['url']}"
#
method = inData['method']
#
req_data = inData['reqData']
#
expectData = inData['expectData']
#
headers = inData['headers']
#
mysql = MYSQL(*BaseConfig.test_mysql)
#
if mysql.ExecuQuery("select * from db_sso.sso_user where login_name ='csyihao' and deleted =1"):
#
mysql.ExecuNonQuery("update db_sso.sso_user set deleted =0 where login_name ='csyihao' ")
#
res = request_main(url, headers, method, req_data)
#
assert res["code"] == expectData["code"]
#
#
@allure.story("批量应用授权")
#
@allure.title("{inData[testPoint]}")
#
@allure.description("/web/auth/users/page")
#
@pytest.mark.parametrize("inData", get_excelData(workBook, "大数据平台系统设置", "userauthorization"))
#
def test_userauthorization(self, inData):
#
url = f"{SSOConfig.test_host}{inData['url']}"
#
method = inData['method']
#
req_data = inData['reqData']
#
expectData = inData['expectData']
#
headers = inData['headers']
#
res = request_main(url, headers, method, req_data)
#
assert res["code"] == expectData["code"]
#
#
@allure.story("登录安全设置")
#
@allure.title("{inData[testPoint]}")
#
@allure.description("/web/auth/users/page")
#
@pytest.mark.parametrize("inData", get_excelData(workBook, "大数据平台系统设置", "userexpiration"))
#
def test_userexpiration(self, inData):
#
url = f"{SSOConfig.test_host}{inData['url']}"
#
method = inData['method']
#
req_data = inData['reqData']
#
expectData = inData['expectData']
#
headers = inData['headers']
#
res = request_main(url, headers, method, req_data)
#
assert res["code"] == expectData["code"]
#
#
@allure.story("批量禁用")
#
@allure.title("{inData[testPoint]}")
#
@allure.description("/web/auth/users/page")
#
@pytest.mark.parametrize("inData", get_excelData(workBook, "大数据平台系统设置", "userchangestate"))
#
def test_userchangestate(self, inData):
#
url = f"{SSOConfig.test_host}{inData['url']}"
#
method = inData['method']
#
req_data = inData['reqData']
#
expectData = inData['expectData']
#
headers = inData['headers']
#
res = request_main(url, headers, method, req_data)
#
assert res["code"] == expectData["code"]
@allure.story
(
"账号查询"
)
@allure.title
(
"{inData[testPoint]}"
)
@allure.description
(
"/web/auth/users/page"
)
@pytest.mark.parametrize
(
"inData"
,
get_excelData
(
workBook
,
"大数据平台系统设置"
,
"userlist"
))
def
test_userlist
(
self
,
inData
):
url
=
f
"{SSOConfig.test_host}{inData['url']}"
method
=
inData
[
'method'
]
req_data
=
inData
[
'reqData'
]
expectData
=
inData
[
'expectData'
]
headers
=
inData
[
'headers'
]
res
=
request_main
(
url
,
headers
,
method
,
req_data
)
assert
res
[
"code"
]
==
expectData
[
"code"
]
@allure.story
(
"账号新增"
)
@allure.title
(
"{inData[testPoint]}"
)
@allure.description
(
"/web/auth/users/page"
)
@pytest.mark.parametrize
(
"inData"
,
get_excelData
(
workBook
,
"大数据平台系统设置"
,
"useradd"
))
def
test_useradd
(
self
,
inData
):
url
=
f
"{SSOConfig.test_host}{inData['url']}"
method
=
inData
[
'method'
]
req_data
=
inData
[
'reqData'
]
expectData
=
inData
[
'expectData'
]
headers
=
inData
[
'headers'
]
mysql
=
MYSQL
(
*
BaseConfig
.
test_mysql
)
if
mysql
.
ExecuQuery
(
"select * from db_sso.sso_user where login_name ='zidonghua' or real_name ='zidonghua' "
):
mysql
.
ExecuNonQuery
(
"delete from db_sso.sso_user where login_name ='zidonghua'or real_name='zidonghua'"
)
res
=
request_main
(
url
,
headers
,
method
,
req_data
)
if
res
[
"message"
]
==
'添加用户成功'
:
a
=
res
[
"data"
][
"userId"
]
setattr
(
RelayData
,
'userId'
,
a
)
print
(
RelayData
.
userId
)
assert
res
[
"code"
]
==
expectData
[
"code"
]
@allure.story
(
"账号编辑"
)
@allure.title
(
"{inData[testPoint]}"
)
@allure.description
(
"/web/auth/users/page"
)
@pytest.mark.parametrize
(
"inData"
,
get_excelData
(
workBook
,
"大数据平台系统设置"
,
"userupdate"
))
def
test_userupdate
(
self
,
inData
):
url
=
f
"{SSOConfig.test_host}{inData['url']}"
method
=
inData
[
'method'
]
req_data
=
inData
[
'reqData'
]
expectData
=
inData
[
'expectData'
]
headers
=
inData
[
'headers'
]
res
=
request_main
(
url
,
headers
,
method
,
req_data
)
assert
res
[
"code"
]
==
expectData
[
"code"
]
@allure.story
(
"查看账号详情"
)
@allure.title
(
"{inData[testPoint]}"
)
@allure.description
(
"/web/auth/users/page"
)
@pytest.mark.parametrize
(
"inData"
,
get_excelData
(
workBook
,
"大数据平台系统设置"
,
"userview"
))
def
test_userview
(
self
,
inData
):
url
=
f
"{SSOConfig.test_host}{inData['url']}"
method
=
inData
[
'method'
]
req_data
=
inData
[
'reqData'
]
expectData
=
inData
[
'expectData'
]
headers
=
SSOConfig
.
headers
headers
[
'token'
]
=
SSOConfig
.
sso_token
headers
.
update
({
'Referer'
:
'http://testhdsp.hikcreate.com/'
})
res
=
requests
.
get
(
url
=
url
,
params
=
req_data
,
headers
=
headers
)
res
=
res
.
json
()
assert
res
[
"code"
]
==
expectData
[
"code"
]
@allure.story
(
"账号删除"
)
@allure.title
(
"{inData[testPoint]}"
)
@allure.description
(
"/web/auth/users/page"
)
@pytest.mark.parametrize
(
"inData"
,
get_excelData
(
workBook
,
"大数据平台系统设置"
,
"userdelet"
))
def
test_userdelet
(
self
,
inData
):
url
=
f
"{SSOConfig.test_host}{inData['url']}"
method
=
inData
[
'method'
]
req_data
=
inData
[
'reqData'
]
expectData
=
inData
[
'expectData'
]
headers
=
inData
[
'headers'
]
mysql
=
MYSQL
(
*
BaseConfig
.
test_mysql
)
if
mysql
.
ExecuQuery
(
"select * from db_sso.sso_user where login_name ='csyihao' and deleted =1"
):
mysql
.
ExecuNonQuery
(
"update db_sso.sso_user set deleted =0 where login_name ='csyihao' "
)
res
=
request_main
(
url
,
headers
,
method
,
req_data
)
assert
res
[
"code"
]
==
expectData
[
"code"
]
@allure.story
(
"批量应用授权"
)
@allure.title
(
"{inData[testPoint]}"
)
@allure.description
(
"/web/auth/users/page"
)
@pytest.mark.parametrize
(
"inData"
,
get_excelData
(
workBook
,
"大数据平台系统设置"
,
"userauthorization"
))
def
test_userauthorization
(
self
,
inData
):
url
=
f
"{SSOConfig.test_host}{inData['url']}"
method
=
inData
[
'method'
]
req_data
=
inData
[
'reqData'
]
expectData
=
inData
[
'expectData'
]
headers
=
inData
[
'headers'
]
res
=
request_main
(
url
,
headers
,
method
,
req_data
)
assert
res
[
"code"
]
==
expectData
[
"code"
]
@allure.story
(
"登录安全设置"
)
@allure.title
(
"{inData[testPoint]}"
)
@allure.description
(
"/web/auth/users/page"
)
@pytest.mark.parametrize
(
"inData"
,
get_excelData
(
workBook
,
"大数据平台系统设置"
,
"userexpiration"
))
def
test_userexpiration
(
self
,
inData
):
url
=
f
"{SSOConfig.test_host}{inData['url']}"
method
=
inData
[
'method'
]
req_data
=
inData
[
'reqData'
]
expectData
=
inData
[
'expectData'
]
headers
=
inData
[
'headers'
]
res
=
request_main
(
url
,
headers
,
method
,
req_data
)
assert
res
[
"code"
]
==
expectData
[
"code"
]
@allure.story
(
"批量禁用"
)
@allure.title
(
"{inData[testPoint]}"
)
@allure.description
(
"/web/auth/users/page"
)
@pytest.mark.parametrize
(
"inData"
,
get_excelData
(
workBook
,
"大数据平台系统设置"
,
"userchangestate"
))
def
test_userchangestate
(
self
,
inData
):
url
=
f
"{SSOConfig.test_host}{inData['url']}"
method
=
inData
[
'method'
]
req_data
=
inData
[
'reqData'
]
expectData
=
inData
[
'expectData'
]
headers
=
inData
[
'headers'
]
res
=
request_main
(
url
,
headers
,
method
,
req_data
)
assert
res
[
"code"
]
==
expectData
[
"code"
]
...
...
test_case_data/sso/sso_testcase_20210513.xlsx
View file @
da3ce6b7
No preview for this file type
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment