Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Z
zmops-test
Project
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
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
sanshi
zmops-test
Commits
d374c92a
Commit
d374c92a
authored
Nov 22, 2019
by
sanshi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
更新主机 信息/状态
parent
9355fe6c
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
525 additions
and
39 deletions
+525
-39
members_update_info.py
WorkApi/APP/Members/Update/members_update_info.py
+5
-1
members_update_status.py
WorkApi/APP/Members/Update/members_update_status.py
+5
-1
test_members_create.py
WorkCase/APP/Members/test_members_create.py
+47
-37
test_members_update_info.py
WorkCase/APP/Members/test_members_update_info.py
+231
-0
test_members_update_status.py
WorkCase/APP/Members/test_members_update_status.py
+237
-0
No files found.
WorkApi/APP/Members/Update/members_update_info.py
View file @
d374c92a
...
...
@@ -28,6 +28,7 @@ class MembersUpdateInfo(object):
self
.
local_json
=
{}
self
.
token
=
None
self
.
name
=
None
self
.
position
=
None
self
.
role
=
None
...
...
@@ -42,6 +43,9 @@ class MembersUpdateInfo(object):
self
.
api
=
UtilsRequest
()
def
get_response
(
self
):
base
=
ApiBase
()
base
.
dict_add_key
(
_key
=
"token"
,
value
=
self
.
token
)
self
.
_headers
=
base
.
_json
base
=
ApiBase
()
base
.
dict_add_key
(
_key
=
"name"
,
value
=
self
.
name
)
...
...
@@ -58,4 +62,4 @@ class MembersUpdateInfo(object):
self
.
local_json
=
base
.
_json
self
.
_json
=
self
.
local_json
self
.
response
=
self
.
api
.
post
(
url
=
self
.
_url
,
json
=
self
.
_json
)
self
.
response
=
self
.
api
.
post
(
url
=
self
.
_url
,
headers
=
self
.
_headers
,
json
=
self
.
_json
)
WorkApi/APP/Members/Update/members_update_status.py
View file @
d374c92a
...
...
@@ -28,12 +28,16 @@ class MembersUpdateStatus(object):
self
.
local_json
=
{}
self
.
token
=
None
self
.
status
=
None
self
.
memberId
=
None
self
.
api
=
UtilsRequest
()
def
get_response
(
self
):
base
=
ApiBase
()
base
.
dict_add_key
(
_key
=
"token"
,
value
=
self
.
token
)
self
.
_headers
=
base
.
_json
base
=
ApiBase
()
base
.
dict_add_key
(
_key
=
"status"
,
value
=
self
.
status
)
...
...
@@ -42,4 +46,4 @@ class MembersUpdateStatus(object):
self
.
local_json
=
base
.
_json
self
.
_json
=
self
.
local_json
self
.
response
=
self
.
api
.
post
(
url
=
self
.
_url
,
json
=
self
.
_json
)
self
.
response
=
self
.
api
.
post
(
url
=
self
.
_url
,
headers
=
self
.
_headers
,
json
=
self
.
_json
)
WorkCase/APP/Members/test_members_create.py
View file @
d374c92a
...
...
@@ -31,13 +31,17 @@ class TestMembersCreate(object):
db_pw
=
env
[
"db_pw"
]
db_base
=
env
[
"db_base"
]
login_name
=
"SS测试用户名"
base_id
=
10
base_name
=
"SS测试用户名"
base_password
=
"123456"
base_name
=
"SS自动化测试用户名"
@classmethod
def
setup_class
(
cls
):
cls
.
log
.
debug
(
"开始执行测试套件......."
)
session
=
UtilsDataBase
()
.
conn_mysql
(
db_url
=
cls
.
db_url
,
db_port
=
cls
.
db_port
,
db_base
=
cls
.
db_base
,
db_user
=
cls
.
db_user
,
db_pw
=
cls
.
db_pw
)
DataMembers
()
.
delete_like_name
(
session
=
session
,
name
=
cls
.
base_name
)
@classmethod
def
teardown_class
(
cls
):
...
...
@@ -45,9 +49,13 @@ class TestMembersCreate(object):
def
setup_method
(
self
):
self
.
log
.
debug
(
"测试用例执行开始..."
)
self
.
update_members_del_flag
(
members_id
=
self
.
base_id
,
value
=
0
)
self
.
update_members_status
(
members_id
=
self
.
base_id
,
value
=
0
)
def
teardown_method
(
self
):
self
.
log
.
debug
(
"测试用例执行结束..."
)
self
.
update_members_del_flag
(
members_id
=
self
.
base_id
,
value
=
0
)
self
.
update_members_status
(
members_id
=
self
.
base_id
,
value
=
0
)
@allure.step
(
"调用接口:api.login"
)
def
api_login
(
self
,
name
=
None
,
password
=
None
):
...
...
@@ -76,7 +84,7 @@ class TestMembersCreate(object):
@allure.step
(
"创建测试数据"
)
def
get_base_token
(
self
):
response
=
self
.
api_login
(
name
=
self
.
base
_name
,
password
=
self
.
base_password
)
response
=
self
.
api_login
(
name
=
self
.
login
_name
,
password
=
self
.
base_password
)
self
.
token
=
UtilsResponse
()
.
get_data
(
response
=
response
)
@allure.step
(
"连接数据库:Argus"
)
...
...
@@ -116,8 +124,9 @@ class TestMembersCreate(object):
return
sql
@allure.step
(
"校验查询结果"
)
def
check_select
(
self
,
members_id
,
name
,
position
,
role
,
password
,
phone
,
email
,
wechatUrl
,
dingdingUrl
,
remark
):
sql
=
self
.
select_memberss
(
members_id
=
members_id
)
def
check_select
(
self
,
response
,
name
,
position
,
role
,
password
,
phone
,
email
,
wechatUrl
,
dingdingUrl
,
remark
):
members_id
=
UtilsResponse
()
.
get_data
(
response
=
response
)
sql
=
self
.
select_members
(
members_id
=
members_id
)
for
x
,
y
in
enumerate
(
sql
):
assert
y
.
name
==
name
assert
y
.
position
==
position
...
...
@@ -125,35 +134,21 @@ class TestMembersCreate(object):
assert
y
.
password
==
password
assert
y
.
phone
==
phone
assert
y
.
email
==
email
assert
y
.
wechat
U
rl
==
wechatUrl
assert
y
.
dingding
U
rl
==
dingdingUrl
assert
y
.
wechat
_u
rl
==
wechatUrl
assert
y
.
dingding
_u
rl
==
dingdingUrl
assert
y
.
remark
==
remark
@allure.step
(
"断言返回结果:校验排序"
)
def
check_sortfield
(
self
,
response
,
possible
):
result
=
UtilsResponse
()
.
get_result
(
response
=
response
)
UtilsResponse
()
.
check_sort
(
_list
=
result
,
key
=
"groupid"
,
possible
=
possible
)
@allure.step
(
"断言返回结果:校验返回数据的数量"
)
def
check_num
(
self
,
response
,
num
):
result
=
UtilsResponse
()
.
get_result
(
response
=
response
)
assert
len
(
result
)
==
num
assert
y
.
status
==
0
@allure.step
(
"断言返回结果"
)
def
check_code
(
self
,
response
,
code
):
_code
=
UtilsResponse
()
.
get_code
(
response
=
response
)
assert
_code
==
code
@allure.step
(
"断言返回
错误信息
"
)
@allure.step
(
"断言返回
结果数据
"
)
def
check_msg
(
self
,
response
,
msg
):
_msg
=
UtilsResponse
()
.
get_msg
(
response
=
response
)
assert
_msg
==
msg
@allure.step
(
"断言返回错误结果"
)
def
check_status
(
self
,
response
,
status
):
_status
=
UtilsResponse
()
.
get_status
(
response
=
response
)
assert
_status
==
status
@allure.title
(
"members.create:token未传"
)
@allure.story
(
"创建用户:token未传"
)
@allure.severity
(
"blocker"
)
...
...
@@ -174,8 +169,8 @@ class TestMembersCreate(object):
self
.
check_code
(
response
=
response
,
code
=
2004
)
self
.
check_msg
(
response
=
response
,
msg
=
"用户不存在"
)
@allure.title
(
"
settings.changePassword
:token的用户已禁用"
)
@allure.story
(
"
变更密码
:token的用户已禁用"
)
@allure.title
(
"
members.create
:token的用户已禁用"
)
@allure.story
(
"
创建用户
:token的用户已禁用"
)
@allure.severity
(
"blocker"
)
def
test_case_03
(
self
):
self
.
get_base_token
()
...
...
@@ -184,13 +179,28 @@ class TestMembersCreate(object):
self
.
check_code
(
response
=
response
,
code
=
2003
)
self
.
check_msg
(
response
=
response
,
msg
=
"账户已被禁用"
)
@allure.title
(
"settings.changePassword:token错误"
)
@allure.story
(
"变更密码:token错误"
)
@allure.title
(
"members.create:正常创建"
)
@allure.story
(
"创建用户:正常创建"
)
@allure.severity
(
"blocker"
)
def
test_case_04
(
self
):
self
.
get_base_token
()
response
=
self
.
settings_changePassword
(
token
=
"Test"
,
memberId
=
self
.
base_id
)
self
.
check_code
(
response
=
response
,
code
=
2001
)
self
.
check_msg
(
response
=
response
,
msg
=
"token错误,请重新登录"
)
name
=
self
.
base_name
+
"04"
response
=
self
.
members_create
(
token
=
self
.
token
,
name
=
name
,
password
=
self
.
base_password
,
role
=
0
)
self
.
check_code
(
response
=
response
,
code
=
0
)
@allure.title
(
"members.create:填写所有字段创建"
)
@allure.story
(
"创建用户:填写所有字段创建"
)
def
test_case_05
(
self
):
self
.
get_base_token
()
name
=
self
.
base_name
+
"05"
response
=
self
.
members_create
(
token
=
self
.
token
,
name
=
name
,
password
=
self
.
base_password
,
role
=
0
,
position
=
"position"
,
phone
=
"phone"
,
email
=
"email"
,
wechatUrl
=
"wechatUrl"
,
dingdingUrl
=
"dingdingUrl"
,
remark
=
"remark"
)
self
.
check_code
(
response
=
response
,
code
=
0
)
self
.
check_select
(
response
=
response
,
name
=
name
,
password
=
self
.
base_password
,
role
=
0
,
position
=
"position"
,
phone
=
"phone"
,
email
=
"email"
,
wechatUrl
=
"wechatUrl"
,
dingdingUrl
=
"dingdingUrl"
,
remark
=
"remark"
)
if
__name__
==
"__main__"
:
...
...
@@ -200,11 +210,11 @@ if __name__ == "__main__":
import
os
# 执行自动化测试用例
#
case_info = os.path.split(__file__)
#
case = UtilsCmd().pytest_cmd()
#
r = UtilsPyTest(case=case, case_info=case_info)
#
r.run_main()
a
=
TestMembersCreate
()
a
.
setup_class
()
a
.
test_case_02
()
case_info
=
os
.
path
.
split
(
__file__
)
case
=
UtilsCmd
()
.
pytest_cmd
()
r
=
UtilsPyTest
(
case
=
case
,
case_info
=
case_info
)
r
.
run_main
()
#
a = TestMembersCreate()
#
a.setup_class()
# a.test_case_04
()
WorkCase/APP/Members/test_members_update_info.py
0 → 100644
View file @
d374c92a
# -*- coding: utf-8 -*-
# 测试用例
# 作者: 陈磊
# 时间: 2019-11-22
from
__future__
import
division
from
WorkCase
import
CaseBase
from
WorkUtils.UtilsLog
import
UtilsLog
from
WorkUtils.UtilsDataBase
import
UtilsDataBase
from
WorkUtils.UtilsResponse
import
UtilsResponse
from
WorkApi.APP.Api.api_login
import
ApiLogin
from
WorkApi.APP.Members.members_create
import
MembersCreate
from
WorkApi.APP.Members.Update.members_update_info
import
MembersUpdateInfo
from
WorkData.Argus.members
import
DataMembers
import
allure
@allure.feature
(
"测试模块:members.update.info"
)
class
TestMembersUpdateInfo
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
app_environment
host
=
env
[
"host"
]
db_url
=
env
[
"db_url"
]
db_port
=
env
[
"db_port"
]
db_user
=
env
[
"db_user"
]
db_pw
=
env
[
"db_pw"
]
db_base
=
env
[
"db_base"
]
login_name
=
"SS测试用户名"
base_id
=
10
base_password
=
"123456"
base_name
=
"SS自动化测试用户名--更新用户"
@classmethod
def
setup_class
(
cls
):
cls
.
log
.
debug
(
"开始执行测试套件......."
)
session
=
UtilsDataBase
()
.
conn_mysql
(
db_url
=
cls
.
db_url
,
db_port
=
cls
.
db_port
,
db_base
=
cls
.
db_base
,
db_user
=
cls
.
db_user
,
db_pw
=
cls
.
db_pw
)
DataMembers
()
.
delete_like_name
(
session
=
session
,
name
=
cls
.
base_name
)
@classmethod
def
teardown_class
(
cls
):
cls
.
log
.
debug
(
"结束执行测试套件......."
)
def
setup_method
(
self
):
self
.
log
.
debug
(
"测试用例执行开始..."
)
self
.
update_members_del_flag
(
members_id
=
self
.
base_id
,
value
=
0
)
self
.
update_members_status
(
members_id
=
self
.
base_id
,
value
=
0
)
def
teardown_method
(
self
):
self
.
log
.
debug
(
"测试用例执行结束..."
)
self
.
update_members_del_flag
(
members_id
=
self
.
base_id
,
value
=
0
)
self
.
update_members_status
(
members_id
=
self
.
base_id
,
value
=
0
)
@allure.step
(
"调用接口:api.login"
)
def
api_login
(
self
,
name
=
None
,
password
=
None
):
api
=
ApiLogin
(
_host
=
self
.
host
)
api
.
name
=
name
api
.
password
=
password
api
.
get_response
()
return
api
.
response
@allure.step
(
"调用接口:members.create"
)
def
members_create
(
self
,
token
=
None
,
name
=
None
,
position
=
None
,
role
=
None
,
password
=
None
,
phone
=
None
,
email
=
None
,
wechatUrl
=
None
,
dingdingUrl
=
None
,
remark
=
None
):
api
=
MembersCreate
(
_host
=
self
.
host
)
api
.
token
=
token
api
.
name
=
name
api
.
position
=
position
api
.
role
=
role
api
.
password
=
password
api
.
phone
=
phone
api
.
email
=
email
api
.
wechatUrl
=
wechatUrl
api
.
dingdingUrl
=
dingdingUrl
api
.
remark
=
remark
api
.
get_response
()
return
api
.
response
@allure.step
(
"调用接口:members.update.info"
)
def
members_update_info
(
self
,
token
=
None
,
name
=
None
,
position
=
None
,
role
=
None
,
password
=
None
,
phone
=
None
,
email
=
None
,
wechatUrl
=
None
,
dingdingUrl
=
None
,
remark
=
None
,
memberId
=
None
):
api
=
MembersUpdateInfo
(
_host
=
self
.
host
)
api
.
token
=
token
api
.
name
=
name
api
.
position
=
position
api
.
role
=
role
api
.
password
=
password
api
.
phone
=
phone
api
.
email
=
email
api
.
wechatUrl
=
wechatUrl
api
.
dingdingUrl
=
dingdingUrl
api
.
remark
=
remark
api
.
memberId
=
memberId
api
.
get_response
()
return
api
.
response
@allure.step
(
"创建测试数据"
)
def
get_base_token
(
self
):
response
=
self
.
api_login
(
name
=
self
.
login_name
,
password
=
self
.
base_password
)
self
.
token
=
UtilsResponse
()
.
get_data
(
response
=
response
)
@allure.step
(
"连接数据库:Argus"
)
def
db_session
(
self
):
session
=
UtilsDataBase
()
.
conn_mysql
(
db_url
=
self
.
db_url
,
db_port
=
self
.
db_port
,
db_base
=
self
.
db_base
,
db_user
=
self
.
db_user
,
db_pw
=
self
.
db_pw
)
return
session
@allure.step
(
"新增表数据:members"
)
def
insert_one
(
self
,
name
=
None
,
role
=
None
,
password
=
None
):
session
=
self
.
db_session
()
sql
=
DataMembers
()
.
insert_one
(
session
=
session
,
name
=
name
,
role
=
role
,
password
=
password
)
return
sql
@allure.step
(
"查询表:members"
)
def
select_members
(
self
,
members_id
=
None
,
name
=
None
,
role
=
None
,
status
=
None
,
del_flag
=
None
):
session
=
self
.
db_session
()
sql
=
DataMembers
()
.
select_all_from_allKeys
(
session
=
session
,
_id
=
members_id
,
name
=
name
,
role
=
role
,
status
=
status
,
del_flag
=
del_flag
)
return
sql
@allure.step
(
"更新表数据:members -- del_flag"
)
def
update_members_del_flag
(
self
,
members_id
=
None
,
value
=
None
):
session
=
self
.
db_session
()
sql
=
DataMembers
()
.
update_del_flag
(
session
=
session
,
_id
=
members_id
,
value
=
value
)
return
sql
@allure.step
(
"更新表数据:members -- status"
)
def
update_members_status
(
self
,
members_id
=
None
,
value
=
None
):
session
=
self
.
db_session
()
sql
=
DataMembers
()
.
update_status
(
session
=
session
,
_id
=
members_id
,
value
=
value
)
return
sql
@allure.step
(
"更新表数据:members -- password"
)
def
update_members_password
(
self
,
members_id
=
None
,
value
=
None
):
session
=
self
.
db_session
()
sql
=
DataMembers
()
.
update_password
(
session
=
session
,
_id
=
members_id
,
value
=
value
)
return
sql
@allure.step
(
"校验查询结果"
)
def
check_select
(
self
,
response
,
name
,
position
,
role
,
password
,
phone
,
email
,
wechatUrl
,
dingdingUrl
,
remark
):
members_id
=
UtilsResponse
()
.
get_data
(
response
=
response
)
sql
=
self
.
select_members
(
members_id
=
members_id
)
for
x
,
y
in
enumerate
(
sql
):
assert
y
.
name
==
name
assert
y
.
position
==
position
assert
y
.
role
==
role
assert
y
.
password
==
password
assert
y
.
phone
==
phone
assert
y
.
email
==
email
assert
y
.
wechat_url
==
wechatUrl
assert
y
.
dingding_url
==
dingdingUrl
assert
y
.
remark
==
remark
assert
y
.
status
==
0
@allure.step
(
"断言返回结果"
)
def
check_code
(
self
,
response
,
code
):
_code
=
UtilsResponse
()
.
get_code
(
response
=
response
)
assert
_code
==
code
@allure.step
(
"断言返回结果数据"
)
def
check_msg
(
self
,
response
,
msg
):
_msg
=
UtilsResponse
()
.
get_msg
(
response
=
response
)
assert
_msg
==
msg
@allure.title
(
"members.update.info:token未传"
)
@allure.story
(
"更新用户数据:token未传"
)
@allure.severity
(
"blocker"
)
def
test_case_01
(
self
):
self
.
get_base_token
()
response
=
self
.
members_update_info
()
self
.
check_code
(
response
=
response
,
code
=
2001
)
self
.
check_msg
(
response
=
response
,
msg
=
"无token,请重新登录"
)
@allure.title
(
"members.update.info:token的用户已删除"
)
@allure.story
(
"更新用户数据:token的用户已删除"
)
@allure.severity
(
"blocker"
)
def
test_case_02
(
self
):
self
.
get_base_token
()
self
.
update_members_del_flag
(
members_id
=
self
.
base_id
,
value
=
1
)
response
=
self
.
members_update_info
(
token
=
self
.
token
)
self
.
check_code
(
response
=
response
,
code
=
2004
)
self
.
check_msg
(
response
=
response
,
msg
=
"用户不存在"
)
@allure.title
(
"members.update.info:token的用户已禁用"
)
@allure.story
(
"更新用户数据:token的用户已禁用"
)
@allure.severity
(
"blocker"
)
def
test_case_03
(
self
):
self
.
get_base_token
()
self
.
update_members_status
(
members_id
=
self
.
base_id
,
value
=
1
)
response
=
self
.
members_update_info
(
token
=
self
.
token
)
self
.
check_code
(
response
=
response
,
code
=
2003
)
self
.
check_msg
(
response
=
response
,
msg
=
"账户已被禁用"
)
@allure.title
(
"members.update.info:更新所有字段"
)
@allure.story
(
"更新用户数据:更新所有字段"
)
@allure.severity
(
"blocker"
)
def
test_case_04
(
self
):
self
.
get_base_token
()
name
=
self
.
base_name
+
"04"
response
=
self
.
members_create
(
token
=
self
.
token
,
name
=
name
,
password
=
self
.
base_password
,
role
=
0
)
memberId
=
UtilsResponse
()
.
get_data
(
response
=
response
)
response
=
self
.
members_update_info
(
token
=
self
.
token
,
memberId
=
memberId
,
name
=
name
+
"修改"
,
password
=
"Test"
,
role
=
1
,
position
=
"position"
,
phone
=
"phone"
,
email
=
"email"
,
wechatUrl
=
"wechatUrl"
,
dingdingUrl
=
"dingdingUrl"
,
remark
=
"remark"
)
self
.
check_code
(
response
=
response
,
code
=
0
)
self
.
check_select
(
response
=
response
,
name
=
name
+
"修改"
,
password
=
"Test"
,
role
=
1
,
position
=
"position"
,
phone
=
"phone"
,
email
=
"email"
,
wechatUrl
=
"wechatUrl"
,
dingdingUrl
=
"dingdingUrl"
,
remark
=
"remark"
)
if
__name__
==
"__main__"
:
from
WorkUtils.UtilsPyTest
import
UtilsPyTest
from
WorkUtils.UtilsCmd
import
UtilsCmd
import
os
# 执行自动化测试用例
case_info
=
os
.
path
.
split
(
__file__
)
case
=
UtilsCmd
()
.
pytest_cmd
()
r
=
UtilsPyTest
(
case
=
case
,
case_info
=
case_info
)
r
.
run_main
()
# a = TestMembersUpdateInfo()
# a.setup_class()
# a.test_case_04()
WorkCase/APP/Members/test_members_update_status.py
0 → 100644
View file @
d374c92a
# -*- coding: utf-8 -*-
# 测试用例
# 作者: 陈磊
# 时间: 2019-11-22
from
__future__
import
division
from
WorkCase
import
CaseBase
from
WorkUtils.UtilsLog
import
UtilsLog
from
WorkUtils.UtilsDataBase
import
UtilsDataBase
from
WorkUtils.UtilsResponse
import
UtilsResponse
from
WorkApi.APP.Api.api_login
import
ApiLogin
from
WorkApi.APP.Members.members_create
import
MembersCreate
from
WorkApi.APP.Members.Update.members_update_status
import
MembersUpdateStatus
from
WorkData.Argus.members
import
DataMembers
import
allure
@allure.feature
(
"测试模块:members.update.status"
)
class
TestMembersUpdateStatus
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
app_environment
host
=
env
[
"host"
]
db_url
=
env
[
"db_url"
]
db_port
=
env
[
"db_port"
]
db_user
=
env
[
"db_user"
]
db_pw
=
env
[
"db_pw"
]
db_base
=
env
[
"db_base"
]
login_name
=
"SS测试用户名"
base_id
=
10
base_password
=
"123456"
base_name
=
"SS自动化测试用户名--更新用户"
@classmethod
def
setup_class
(
cls
):
cls
.
log
.
debug
(
"开始执行测试套件......."
)
session
=
UtilsDataBase
()
.
conn_mysql
(
db_url
=
cls
.
db_url
,
db_port
=
cls
.
db_port
,
db_base
=
cls
.
db_base
,
db_user
=
cls
.
db_user
,
db_pw
=
cls
.
db_pw
)
DataMembers
()
.
delete_like_name
(
session
=
session
,
name
=
cls
.
base_name
)
@classmethod
def
teardown_class
(
cls
):
cls
.
log
.
debug
(
"结束执行测试套件......."
)
def
setup_method
(
self
):
self
.
log
.
debug
(
"测试用例执行开始..."
)
self
.
update_members_del_flag
(
members_id
=
self
.
base_id
,
value
=
0
)
self
.
update_members_status
(
members_id
=
self
.
base_id
,
value
=
0
)
def
teardown_method
(
self
):
self
.
log
.
debug
(
"测试用例执行结束..."
)
self
.
update_members_del_flag
(
members_id
=
self
.
base_id
,
value
=
0
)
self
.
update_members_status
(
members_id
=
self
.
base_id
,
value
=
0
)
@allure.step
(
"调用接口:api.login"
)
def
api_login
(
self
,
name
=
None
,
password
=
None
):
api
=
ApiLogin
(
_host
=
self
.
host
)
api
.
name
=
name
api
.
password
=
password
api
.
get_response
()
return
api
.
response
@allure.step
(
"调用接口:members.create"
)
def
members_create
(
self
,
token
=
None
,
name
=
None
,
position
=
None
,
role
=
None
,
password
=
None
,
phone
=
None
,
email
=
None
,
wechatUrl
=
None
,
dingdingUrl
=
None
,
remark
=
None
):
api
=
MembersCreate
(
_host
=
self
.
host
)
api
.
token
=
token
api
.
name
=
name
api
.
position
=
position
api
.
role
=
role
api
.
password
=
password
api
.
phone
=
phone
api
.
email
=
email
api
.
wechatUrl
=
wechatUrl
api
.
dingdingUrl
=
dingdingUrl
api
.
remark
=
remark
api
.
get_response
()
return
api
.
response
@allure.step
(
"调用接口:members.update.status"
)
def
members_update_status
(
self
,
token
=
None
,
status
=
None
,
memberId
=
None
):
api
=
MembersUpdateStatus
(
_host
=
self
.
host
)
api
.
token
=
token
api
.
status
=
status
api
.
memberId
=
memberId
api
.
get_response
()
return
api
.
response
@allure.step
(
"创建测试数据"
)
def
get_base_token
(
self
):
response
=
self
.
api_login
(
name
=
self
.
login_name
,
password
=
self
.
base_password
)
self
.
token
=
UtilsResponse
()
.
get_data
(
response
=
response
)
@allure.step
(
"连接数据库:Argus"
)
def
db_session
(
self
):
session
=
UtilsDataBase
()
.
conn_mysql
(
db_url
=
self
.
db_url
,
db_port
=
self
.
db_port
,
db_base
=
self
.
db_base
,
db_user
=
self
.
db_user
,
db_pw
=
self
.
db_pw
)
return
session
@allure.step
(
"新增表数据:members"
)
def
insert_one
(
self
,
name
=
None
,
role
=
None
,
password
=
None
):
session
=
self
.
db_session
()
sql
=
DataMembers
()
.
insert_one
(
session
=
session
,
name
=
name
,
role
=
role
,
password
=
password
)
return
sql
@allure.step
(
"查询表:members"
)
def
select_members
(
self
,
members_id
=
None
,
name
=
None
,
role
=
None
,
status
=
None
,
del_flag
=
None
):
session
=
self
.
db_session
()
sql
=
DataMembers
()
.
select_all_from_allKeys
(
session
=
session
,
_id
=
members_id
,
name
=
name
,
role
=
role
,
status
=
status
,
del_flag
=
del_flag
)
return
sql
@allure.step
(
"更新表数据:members -- del_flag"
)
def
update_members_del_flag
(
self
,
members_id
=
None
,
value
=
None
):
session
=
self
.
db_session
()
sql
=
DataMembers
()
.
update_del_flag
(
session
=
session
,
_id
=
members_id
,
value
=
value
)
return
sql
@allure.step
(
"更新表数据:members -- status"
)
def
update_members_status
(
self
,
members_id
=
None
,
value
=
None
):
session
=
self
.
db_session
()
sql
=
DataMembers
()
.
update_status
(
session
=
session
,
_id
=
members_id
,
value
=
value
)
return
sql
@allure.step
(
"更新表数据:members -- password"
)
def
update_members_password
(
self
,
members_id
=
None
,
value
=
None
):
session
=
self
.
db_session
()
sql
=
DataMembers
()
.
update_password
(
session
=
session
,
_id
=
members_id
,
value
=
value
)
return
sql
@allure.step
(
"校验查询结果"
)
def
check_select
(
self
,
members_id
,
name
,
position
,
role
,
password
,
phone
,
email
,
wechatUrl
,
dingdingUrl
,
remark
,
status
):
sql
=
self
.
select_members
(
members_id
=
members_id
)
for
x
,
y
in
enumerate
(
sql
):
assert
y
.
name
==
name
assert
y
.
position
==
position
assert
y
.
role
==
role
assert
y
.
password
==
password
assert
y
.
phone
==
phone
assert
y
.
email
==
email
assert
y
.
wechat_url
==
wechatUrl
assert
y
.
dingding_url
==
dingdingUrl
assert
y
.
remark
==
remark
assert
y
.
status
==
status
@allure.step
(
"断言返回结果"
)
def
check_code
(
self
,
response
,
code
):
_code
=
UtilsResponse
()
.
get_code
(
response
=
response
)
assert
_code
==
code
@allure.step
(
"断言返回结果数据"
)
def
check_msg
(
self
,
response
,
msg
):
_msg
=
UtilsResponse
()
.
get_msg
(
response
=
response
)
assert
_msg
==
msg
@allure.title
(
"members.update.status:token未传"
)
@allure.story
(
"更新用户数据:token未传"
)
@allure.severity
(
"blocker"
)
def
test_case_01
(
self
):
self
.
get_base_token
()
response
=
self
.
members_update_status
()
self
.
check_code
(
response
=
response
,
code
=
2001
)
self
.
check_msg
(
response
=
response
,
msg
=
"无token,请重新登录"
)
@allure.title
(
"members.update.status:token的用户已删除"
)
@allure.story
(
"更新用户数据:token的用户已删除"
)
@allure.severity
(
"blocker"
)
def
test_case_02
(
self
):
self
.
get_base_token
()
self
.
update_members_del_flag
(
members_id
=
self
.
base_id
,
value
=
1
)
response
=
self
.
members_update_status
(
token
=
self
.
token
)
self
.
check_code
(
response
=
response
,
code
=
2004
)
self
.
check_msg
(
response
=
response
,
msg
=
"用户不存在"
)
@allure.title
(
"members.update.status:token的用户已禁用"
)
@allure.story
(
"更新用户数据:token的用户已禁用"
)
@allure.severity
(
"blocker"
)
def
test_case_03
(
self
):
self
.
get_base_token
()
self
.
update_members_status
(
members_id
=
self
.
base_id
,
value
=
1
)
response
=
self
.
members_update_status
(
token
=
self
.
token
)
self
.
check_code
(
response
=
response
,
code
=
2003
)
self
.
check_msg
(
response
=
response
,
msg
=
"账户已被禁用"
)
@allure.title
(
"members.update.status:status=0"
)
@allure.story
(
"更新用户数据:status=0"
)
@allure.severity
(
"blocker"
)
def
test_case_04
(
self
):
self
.
get_base_token
()
name
=
self
.
base_name
+
"04"
response
=
self
.
members_create
(
token
=
self
.
token
,
name
=
name
,
password
=
self
.
base_password
,
role
=
0
)
memberId
=
UtilsResponse
()
.
get_data
(
response
=
response
)
response
=
self
.
members_update_status
(
token
=
self
.
token
,
memberId
=
memberId
,
status
=
0
)
self
.
check_code
(
response
=
response
,
code
=
0
)
self
.
check_select
(
members_id
=
memberId
,
name
=
name
,
password
=
self
.
base_password
,
role
=
0
,
position
=
None
,
phone
=
None
,
email
=
None
,
wechatUrl
=
None
,
dingdingUrl
=
None
,
remark
=
None
,
status
=
0
)
@allure.title
(
"members.update.status:status=1"
)
@allure.story
(
"更新用户数据:status=1"
)
@allure.severity
(
"blocker"
)
def
test_case_05
(
self
):
self
.
get_base_token
()
name
=
self
.
base_name
+
"05"
response
=
self
.
members_create
(
token
=
self
.
token
,
name
=
name
,
password
=
self
.
base_password
,
role
=
0
)
memberId
=
UtilsResponse
()
.
get_data
(
response
=
response
)
response
=
self
.
members_update_status
(
token
=
self
.
token
,
memberId
=
memberId
,
status
=
1
)
self
.
check_code
(
response
=
response
,
code
=
0
)
self
.
check_select
(
members_id
=
memberId
,
name
=
name
,
password
=
self
.
base_password
,
role
=
0
,
position
=
None
,
phone
=
None
,
email
=
None
,
wechatUrl
=
None
,
dingdingUrl
=
None
,
remark
=
None
,
status
=
1
)
if
__name__
==
"__main__"
:
from
WorkUtils.UtilsPyTest
import
UtilsPyTest
from
WorkUtils.UtilsCmd
import
UtilsCmd
import
os
# 执行自动化测试用例
case_info
=
os
.
path
.
split
(
__file__
)
case
=
UtilsCmd
()
.
pytest_cmd
()
r
=
UtilsPyTest
(
case
=
case
,
case_info
=
case_info
)
r
.
run_main
()
# a = TestMembersUpdateStatus()
# a.setup_class()
# a.test_case_04()
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