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
10db88be
Commit
10db88be
authored
Dec 18, 2019
by
sanshi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
整个底层代码换环境测试
parent
d785d648
Hide whitespace changes
Inline
Side-by-side
Showing
26 changed files
with
93 additions
and
1181 deletions
+93
-1181
test_drule_create.py
WorkCase/API/DRule/test_drule_create.py
+3
-3
test_drule_delete.py
WorkCase/API/DRule/test_drule_delete.py
+3
-3
test_drule_get.py
WorkCase/API/DRule/test_drule_get.py
+3
-3
test_drule_update.py
WorkCase/API/DRule/test_drule_update.py
+3
-3
test_host_create.py
WorkCase/API/Host/test_host_create.py
+6
-6
test_host_delete.py
WorkCase/API/Host/test_host_delete.py
+6
-6
test_host_get.py
WorkCase/API/Host/test_host_get.py
+6
-6
test_host_update.py
WorkCase/API/Host/test_host_update.py
+6
-6
test_hostgroup_create.py
WorkCase/API/HostGroup/test_hostgroup_create.py
+3
-5
test_hostgroup_delete.py
WorkCase/API/HostGroup/test_hostgroup_delete.py
+3
-5
test_hostgroup_get.py
WorkCase/API/HostGroup/test_hostgroup_get.py
+3
-5
test_hostgroup_update.py
WorkCase/API/HostGroup/test_hostgroup_update.py
+3
-3
tmpe_w27rb9
WorkCase/API/HostInterface/__pycache__/tmpe_w27rb9
+0
-0
test_hostinterface_create.py
WorkCase/API/HostInterface/test_hostinterface_create.py
+0
-262
test_hostinterface_delete.py
WorkCase/API/HostInterface/test_hostinterface_delete.py
+0
-250
test_hostinterface_get.py
WorkCase/API/HostInterface/test_hostinterface_get.py
+0
-302
test_hostinterface_update.py
WorkCase/API/HostInterface/test_hostinterface_update.py
+0
-285
test_items_get.py
WorkCase/API/Items/test_items_get.py
+6
-6
test_problem_acknowledge.py
WorkCase/API/Problem/test_problem_acknowledge.py
+5
-4
test_problem_get.py
WorkCase/API/Problem/test_problem_get.py
+3
-3
test_problem_getLatest.py
WorkCase/API/Problem/test_problem_getLatest.py
+3
-3
test_trigger_create.py
WorkCase/API/Trigger/test_trigger_create.py
+4
-3
test_trigger_delete.py
WorkCase/API/Trigger/test_trigger_delete.py
+4
-3
test_trigger_get.py
WorkCase/API/Trigger/test_trigger_get.py
+4
-3
test_trigger_update.py
WorkCase/API/Trigger/test_trigger_update.py
+4
-3
__init__.py
WorkCase/__init__.py
+12
-0
No files found.
WorkCase/API/DRule/test_drule_create.py
View file @
10db88be
...
...
@@ -21,13 +21,13 @@ import allure
@allure.feature
(
"测试模块:drule.create"
)
class
TestDRuleCreate
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
environment
host
=
env
[
"host"
]
env
=
CaseBase
()
.
environment
_test
host
=
env
[
"host
_zabbix
"
]
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"
]
db_base
=
env
[
"db_base
_zabbix
"
]
base_name
=
"SS自动化测试发现规则"
base_iprange
=
"192.168.0.1-254"
base_delay
=
"1h"
...
...
WorkCase/API/DRule/test_drule_delete.py
View file @
10db88be
...
...
@@ -22,13 +22,13 @@ import allure
@allure.feature
(
"测试模块:drule.delete"
)
class
TestDRuleDelete
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
environment
host
=
env
[
"host"
]
env
=
CaseBase
()
.
environment
_test
host
=
env
[
"host
_zabbix
"
]
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"
]
db_base
=
env
[
"db_base
_zabbix
"
]
base_name
=
"SS自动化测试发现规则"
base_iprange
=
"192.168.0.1-254"
base_delay
=
"1h"
...
...
WorkCase/API/DRule/test_drule_get.py
View file @
10db88be
...
...
@@ -22,13 +22,13 @@ import allure
@allure.feature
(
"测试模块:drule.get"
)
class
TestDRuleGet
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
environment
host
=
env
[
"host"
]
env
=
CaseBase
()
.
environment
_test
host
=
env
[
"host
_zabbix
"
]
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"
]
db_base
=
env
[
"db_base
_zabbix
"
]
base_name
=
"SS自动化测试发现规则"
base_iprange
=
"192.168.0.1-254"
base_delay
=
"1h"
...
...
WorkCase/API/DRule/test_drule_update.py
View file @
10db88be
...
...
@@ -22,13 +22,13 @@ import allure
@allure.feature
(
"测试模块:drule.update"
)
class
TestDRuleUpdate
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
environment
host
=
env
[
"host"
]
env
=
CaseBase
()
.
environment
_test
host
=
env
[
"host
_zabbix
"
]
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"
]
db_base
=
env
[
"db_base
_zabbix
"
]
base_name
=
"SS自动化测试发现规则"
base_iprange
=
"192.168.0.1-254"
base_delay
=
"1h"
...
...
WorkCase/API/Host/test_host_create.py
View file @
10db88be
...
...
@@ -26,17 +26,17 @@ import allure
@allure.feature
(
"测试模块:host.create"
)
class
TestHostCreate
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
environment
host
=
env
[
"host"
]
env
=
CaseBase
()
.
environment
_test
host
=
env
[
"host
_zabbix
"
]
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"
]
db_base
=
env
[
"db_base
_zabbix
"
]
base_group_id
=
101
base_name
=
"SS TEST HOST"
base_ip
=
"1
0.0.0.1
0"
base_group_id
=
99
base_name
=
"SS TEST HOST
CREATE
"
base_ip
=
"1
72.16.3.17
0"
base_host
=
"SS测试主机"
base_description
=
"SS测试主机描述"
...
...
WorkCase/API/Host/test_host_delete.py
View file @
10db88be
...
...
@@ -22,17 +22,17 @@ import allure
@allure.feature
(
"测试模块:host.delete"
)
class
TestHostDelete
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
environment
host
=
env
[
"host"
]
env
=
CaseBase
()
.
environment
_test
host
=
env
[
"host
_zabbix
"
]
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"
]
db_base
=
env
[
"db_base
_zabbix
"
]
base_groupid
=
101
base_groupid
=
99
base_name
=
"SS TEST HOST DELETE"
base_ip
=
"1
0.0.0.1
0"
base_ip
=
"1
72.16.3.17
0"
base_description
=
"SS自动化测试主机描述, 请勿删除"
@classmethod
...
...
@@ -128,7 +128,7 @@ class TestHostDelete(object):
"useip"
:
1
,
"ip"
:
self
.
base_ip
,
"dns"
:
""
,
"port"
:
1
00
,
"port"
:
1
61
,
"bulk"
:
1
}
response
=
self
.
host_create
(
host
=
host
,
description
=
description
,
groupids
=
[
self
.
base_groupid
],
...
...
WorkCase/API/Host/test_host_get.py
View file @
10db88be
...
...
@@ -24,17 +24,17 @@ import allure
@allure.feature
(
"测试模块:host.get"
)
class
TestHostGet
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
environment
host
=
env
[
"host"
]
env
=
CaseBase
()
.
environment
_test
host
=
env
[
"host
_zabbix
"
]
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"
]
db_base
=
env
[
"db_base
_zabbix
"
]
base_groupid
=
101
base_groupid
=
99
base_name
=
"SS TEST HOST GET"
base_ip
=
"1
0.0.0.1
0"
base_ip
=
"1
72.16.3.17
0"
base_description
=
"SS自动化测试主机描述, 请勿删除"
@classmethod
...
...
@@ -143,7 +143,7 @@ class TestHostGet(object):
"useip"
:
1
,
"ip"
:
self
.
base_ip
,
"dns"
:
""
,
"port"
:
1
00
,
"port"
:
1
61
,
"bulk"
:
1
}
response
=
self
.
host_create
(
host
=
host
,
description
=
description
,
groupids
=
[
self
.
base_groupid
],
...
...
WorkCase/API/Host/test_host_update.py
View file @
10db88be
...
...
@@ -24,18 +24,18 @@ import allure
@allure.feature
(
"测试模块:host.update"
)
class
TestHostUpdate
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
environment
host
=
env
[
"host"
]
env
=
CaseBase
()
.
environment
_test
host
=
env
[
"host
_zabbix
"
]
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"
]
db_base
=
env
[
"db_base
_zabbix
"
]
base_groupid
=
101
base_groupid
=
99
base_name
=
"SS TEST HOST UPDATE"
base_ip
=
"1
0.0.0.1
0"
base_port
=
1
00
base_ip
=
"1
72.16.3.17
0"
base_port
=
1
61
base_description
=
"SS自动化测试主机描述, 请勿删除"
@classmethod
...
...
WorkCase/API/HostGroup/test_hostgroup_create.py
View file @
10db88be
...
...
@@ -16,19 +16,17 @@ from WorkData.Zabbix.hstgrp import DataHstGrp
import
allure
# allure.label("")
@allure.feature
(
"测试模块:hostgroup.create"
)
class
TestHostGroupCreate
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
environment
host
=
env
[
"host"
]
env
=
CaseBase
()
.
environment
_test
host
=
env
[
"host
_zabbix
"
]
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"
]
db_base
=
env
[
"db_base
_zabbix
"
]
base_name
=
"SS自动化测试主机组"
@classmethod
...
...
WorkCase/API/HostGroup/test_hostgroup_delete.py
View file @
10db88be
...
...
@@ -17,19 +17,17 @@ from WorkData.Zabbix.hstgrp import DataHstGrp
import
allure
# allure.label("")
@allure.feature
(
"测试模块:hostgroup.delete"
)
class
TestHostGroupDelete
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
environment
host
=
env
[
"host"
]
env
=
CaseBase
()
.
environment
_test
host
=
env
[
"host
_zabbix
"
]
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"
]
db_base
=
env
[
"db_base
_zabbix
"
]
base_name
=
"SS自动化测试主机组"
@classmethod
...
...
WorkCase/API/HostGroup/test_hostgroup_get.py
View file @
10db88be
...
...
@@ -17,19 +17,17 @@ from WorkCase import CaseBase
import
allure
# allure.label("")
@allure.feature
(
"测试模块:hostgroup.get"
)
class
TestHostGroupGet
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
environment
host
=
env
[
"host"
]
env
=
CaseBase
()
.
environment
_test
host
=
env
[
"host
_zabbix
"
]
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"
]
db_base
=
env
[
"db_base
_zabbix
"
]
base_name
=
"SS自动化测试主机组"
@classmethod
...
...
WorkCase/API/HostGroup/test_hostgroup_update.py
View file @
10db88be
...
...
@@ -22,13 +22,13 @@ import allure
@allure.feature
(
"测试模块:hostgroup.update"
)
class
TestHostGroupUpdate
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
environment
host
=
env
[
"host"
]
env
=
CaseBase
()
.
environment
_test
host
=
env
[
"host
_zabbix
"
]
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"
]
db_base
=
env
[
"db_base
_zabbix
"
]
base_name
=
"SS自动化测试主机组"
@classmethod
...
...
WorkCase/API/HostInterface/__pycache__/tmpe_w27rb9
deleted
100644 → 0
View file @
d785d648
WorkCase/API/HostInterface/test_hostinterface_create.py
deleted
100644 → 0
View file @
d785d648
# -*- coding: utf-8 -*-
# 测试用例
# 作者: 陈磊
# 时间: 2019-11-11
from
__future__
import
division
from
WorkApi.API.Host.host_create
import
HostCreate
from
WorkCase
import
CaseBase
from
WorkUtils.UtilsLog
import
UtilsLog
from
WorkUtils.UtilsDataBase
import
UtilsDataBase
from
WorkUtils.UtilsResponse
import
UtilsResponse
from
WorkApi.API.HostInterface.hostInterface_create
import
HostInterfaceCreate
from
WorkData.Zabbix.hosts
import
DataHosts
from
WorkData.Zabbix.items
import
DataItems
from
WorkData.Zabbix.interface
import
DataInterface
import
allure
@allure.feature
(
"测试模块:hostinterface.create"
)
class
TestHostInterfaceCreate
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
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"
]
base_host_name
=
"SS TEST HOST"
base_description
=
"SS TEST HOST-interface"
base_groupid
=
101
base_name
=
"SS测试主机接口"
base_ip
=
"10.0.0.28"
base_dns
=
"sanshi.zmops.cn"
base_port
=
"127"
@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
)
sql
=
DataHosts
()
.
select_like_name
(
session
=
session
,
name
=
cls
.
base_host_name
)
for
x
,
y
in
enumerate
(
sql
):
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
)
DataItems
()
.
delete_hostid
(
session
=
session
,
hostid
=
y
.
hostid
)
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
)
DataHosts
()
.
delete_like_name
(
session
=
session
,
name
=
cls
.
base_host_name
)
@classmethod
def
teardown_class
(
cls
):
cls
.
log
.
debug
(
"结束执行测试套件......."
)
def
setup_method
(
self
):
self
.
log
.
debug
(
"测试用例执行开始..."
)
def
teardown_method
(
self
):
self
.
log
.
debug
(
"测试用例执行结束..."
)
@allure.step
(
"调用接口:hostinterface.create"
)
def
hostinterface_create
(
self
,
dns
=
None
,
hostid
=
None
,
ip
=
None
,
main
=
None
,
port
=
None
,
_type
=
None
,
useip
=
None
,
bulk
=
None
):
api
=
HostInterfaceCreate
(
_host
=
self
.
host
)
api
.
dns
=
dns
api
.
hostid
=
hostid
api
.
ip
=
ip
api
.
main
=
main
api
.
port
=
port
api
.
type
=
_type
api
.
useip
=
useip
api
.
bulk
=
bulk
api
.
get_response
()
return
api
.
response
@allure.step
(
"连接数据库:zabbix"
)
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
(
"查询表:interface"
)
def
select_interface
(
self
,
interfaceid
=
None
):
session
=
self
.
db_session
()
sql
=
DataInterface
()
.
select_all_from_allKeys
(
session
=
session
,
interfaceid
=
interfaceid
)
return
sql
@allure.step
(
"校验查询结果"
)
def
check_select
(
self
,
interfaceid
,
hostid
,
main
,
port
,
_type
,
useip
,
bulk
,
dns
,
ip
):
sql
=
self
.
select_interface
(
interfaceid
=
interfaceid
)
for
x
,
y
in
enumerate
(
sql
):
assert
y
.
hostid
==
hostid
assert
y
.
main
==
main
assert
y
.
port
==
port
assert
y
.
type
==
_type
assert
y
.
useip
==
useip
assert
y
.
bulk
==
bulk
if
dns
!=
""
and
ip
==
""
:
assert
y
.
dns
==
dns
elif
ip
!=
""
and
dns
==
""
:
assert
y
.
ip
==
ip
@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
@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.step
(
"断言返回错误结果"
)
def
check_status
(
self
,
response
,
status
):
_status
=
UtilsResponse
()
.
get_status
(
response
=
response
)
assert
_status
==
status
@allure.step
(
"调用接口:host.create"
)
def
host_create
(
self
,
host
=
None
,
name
=
None
,
description
=
None
,
groupids
=
None
,
interfaces
=
None
,
tags
=
None
,
templateids
=
None
,
macros
=
None
,
inventory
=
None
,
status
=
None
,
inventory_mode
=
None
):
api
=
HostCreate
(
_host
=
self
.
host
)
api
.
host
=
host
api
.
name
=
name
api
.
description
=
description
api
.
groupids
=
groupids
api
.
interfaces
=
interfaces
api
.
tags
=
tags
api
.
templateids
=
templateids
api
.
macros
=
macros
api
.
inventory
=
inventory
api
.
status
=
status
api
.
inventory_mode
=
inventory_mode
api
.
tls_connect
=
1
api
.
tls_accept
=
1
api
.
tls_psk_identity
=
""
api
.
tls_psk
=
""
api
.
get_response
()
return
api
.
response
@allure.step
(
"创建测试数据"
)
def
case_create
(
self
,
num
):
templateid
=
10001
host
=
self
.
base_host_name
+
num
description
=
self
.
base_description
+
num
interfaces
=
{
"type"
:
2
,
"main"
:
1
,
"useip"
:
1
,
"ip"
:
self
.
base_ip
,
"dns"
:
""
,
"port"
:
100
,
"bulk"
:
1
}
response
=
self
.
host_create
(
host
=
host
,
description
=
description
,
groupids
=
[
self
.
base_groupid
],
interfaces
=
[
interfaces
],
status
=
0
,
templateids
=
[
templateid
],
macros
=
[{
"macro"
:
"{$SNMP_COMMUNITY}"
,
"value"
:
"public"
}])
self
.
check_code
(
response
=
response
,
code
=
0
)
self
.
hostid
=
UtilsResponse
()
.
get_result
(
response
=
response
)[
"hostids"
][
0
]
self
.
delete_interfaces
()
return
self
.
hostid
@allure.step
(
"删除所有已存在的接口"
)
def
delete_interfaces
(
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
)
DataInterface
()
.
delete_hostid
(
session
=
session
,
hostid
=
self
.
hostid
)
@allure.title
(
"hostinterface.create:IP地址相应信息"
)
@allure.story
(
"创建主机接口:IP地址相应信息"
)
@allure.severity
(
"blocker"
)
def
test_case_01
(
self
):
self
.
case_create
(
num
=
"01"
)
response
=
self
.
hostinterface_create
(
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
base_port
,
_type
=
1
,
useip
=
1
,
bulk
=
1
)
self
.
check_code
(
response
=
response
,
code
=
0
)
interfaceid
=
UtilsResponse
()
.
get_result
(
response
=
response
)[
"interfaceids"
][
0
]
self
.
check_select
(
interfaceid
=
interfaceid
,
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
base_port
,
_type
=
1
,
useip
=
1
,
bulk
=
1
)
@allure.title
(
"hostinterface.create:DNS地址相应信息"
)
@allure.story
(
"创建主机接口:DNS地址相应信息"
)
def
test_case_02
(
self
):
self
.
case_create
(
num
=
"02"
)
response
=
self
.
hostinterface_create
(
ip
=
""
,
dns
=
self
.
base_dns
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
base_port
,
_type
=
2
,
useip
=
0
,
bulk
=
1
)
self
.
check_code
(
response
=
response
,
code
=
0
)
interfaceid
=
UtilsResponse
()
.
get_result
(
response
=
response
)[
"interfaceids"
][
0
]
self
.
check_select
(
interfaceid
=
interfaceid
,
ip
=
""
,
dns
=
self
.
base_dns
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
base_port
,
_type
=
2
,
useip
=
0
,
bulk
=
1
)
@allure.title
(
"hostinterface.create:默认接口重复添加"
)
@allure.story
(
"创建主机接口:默认接口重复添加"
)
def
test_case_03
(
self
):
self
.
case_create
(
num
=
"03"
)
response
=
self
.
hostinterface_create
(
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
base_port
,
_type
=
3
,
useip
=
1
,
bulk
=
1
)
self
.
check_code
(
response
=
response
,
code
=
0
)
interfaceid
=
UtilsResponse
()
.
get_result
(
response
=
response
)[
"interfaceids"
][
0
]
self
.
check_select
(
interfaceid
=
interfaceid
,
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
base_port
,
_type
=
3
,
useip
=
1
,
bulk
=
1
)
response
=
self
.
hostinterface_create
(
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
base_port
,
_type
=
3
,
useip
=
1
,
bulk
=
1
)
self
.
check_code
(
response
=
response
,
code
=
100
)
self
.
check_msg
(
response
=
response
,
msg
=
"主机不能拥有多个同种类型的默认接口"
)
@allure.title
(
"hostinterface.create:此类型已有默认 可添加非默认接口"
)
@allure.story
(
"创建主机接口:此类型已有默认 可添加非默认接口"
)
def
test_case_04
(
self
):
self
.
case_create
(
num
=
"04"
)
response
=
self
.
hostinterface_create
(
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
base_port
,
_type
=
4
,
useip
=
1
,
bulk
=
1
)
self
.
check_code
(
response
=
response
,
code
=
0
)
interfaceid
=
UtilsResponse
()
.
get_result
(
response
=
response
)[
"interfaceids"
][
0
]
self
.
check_select
(
interfaceid
=
interfaceid
,
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
base_port
,
_type
=
4
,
useip
=
1
,
bulk
=
1
)
response
=
self
.
hostinterface_create
(
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
0
,
port
=
self
.
base_port
,
_type
=
4
,
useip
=
1
,
bulk
=
1
)
self
.
check_code
(
response
=
response
,
code
=
0
)
interfaceid
=
UtilsResponse
()
.
get_result
(
response
=
response
)[
"interfaceids"
][
0
]
self
.
check_select
(
interfaceid
=
interfaceid
,
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
0
,
port
=
self
.
base_port
,
_type
=
4
,
useip
=
1
,
bulk
=
1
)
@allure.title
(
"hostinterface.create:此类型未有默认 无法添加非默认接口"
)
@allure.story
(
"创建主机接口:此类型未有默认 无法添加非默认接口"
)
def
test_case_05
(
self
):
self
.
case_create
(
num
=
"05"
)
response
=
self
.
hostinterface_create
(
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
0
,
port
=
self
.
base_port
,
_type
=
5
,
useip
=
1
,
bulk
=
1
)
self
.
check_code
(
response
=
response
,
code
=
100
)
self
.
check_msg
(
response
=
response
,
msg
=
"主机SS TEST HOST05的类型[Unknown interface type]没有默认接口"
)
@allure.title
(
"hostinterface.create:useip=0, bulk=1"
)
@allure.story
(
"创建主机接口:useip=0, bulk=1"
)
def
test_case_06
(
self
):
self
.
case_create
(
num
=
"06"
)
response
=
self
.
hostinterface_create
(
ip
=
self
.
base_ip
,
dns
=
self
.
base_dns
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
base_port
,
_type
=
6
,
useip
=
0
,
bulk
=
1
)
self
.
check_code
(
response
=
response
,
code
=
0
)
interfaceid
=
UtilsResponse
()
.
get_result
(
response
=
response
)[
"interfaceids"
][
0
]
self
.
check_select
(
interfaceid
=
interfaceid
,
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
base_port
,
_type
=
6
,
useip
=
0
,
bulk
=
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 = TestHostInterfaceCreate()
# a.setup_class()
# a.test_case_02()
WorkCase/API/HostInterface/test_hostinterface_delete.py
deleted
100644 → 0
View file @
d785d648
# -*- coding: utf-8 -*-
# 测试用例
# 作者: 陈磊
# 时间: 2019-11-12
from
__future__
import
division
from
WorkApi.API.Host.host_create
import
HostCreate
from
WorkCase
import
CaseBase
from
WorkUtils.UtilsLog
import
UtilsLog
from
WorkUtils.UtilsDataBase
import
UtilsDataBase
from
WorkUtils.UtilsResponse
import
UtilsResponse
from
WorkApi.API.HostInterface.hostInterface_create
import
HostInterfaceCreate
from
WorkApi.API.HostInterface.hostInterface_delete
import
HostInterfaceDelete
from
WorkData.Zabbix.interface
import
DataInterface
from
WorkData.Zabbix.hosts
import
DataHosts
from
WorkData.Zabbix.items
import
DataItems
import
allure
# allure.label("")
@allure.feature
(
"测试模块:hostinterface.delete"
)
class
TestHostInterfaceDelete
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
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"
]
base_name
=
"SS测试主机接口"
base_ip
=
"10.0.0.28"
base_hostid
=
10266
base_dns
=
"sanshi.zmops.cn"
base_port
=
"127"
base_host_name
=
"SS TEST HOST"
base_description
=
"SS TEST HOST-interface"
base_groupid
=
101
new_ip
=
"192.168.1.28"
new_port
=
"721"
@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
)
sql
=
DataHosts
()
.
select_like_name
(
session
=
session
,
name
=
cls
.
base_host_name
)
for
x
,
y
in
enumerate
(
sql
):
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
)
DataItems
()
.
delete_hostid
(
session
=
session
,
hostid
=
y
.
hostid
)
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
)
DataHosts
()
.
delete_like_name
(
session
=
session
,
name
=
cls
.
base_host_name
)
@classmethod
def
teardown_class
(
cls
):
cls
.
log
.
debug
(
"结束执行测试套件......."
)
def
setup_method
(
self
):
self
.
log
.
debug
(
"测试用例执行开始..."
)
def
teardown_method
(
self
):
self
.
log
.
debug
(
"测试用例执行结束..."
)
@allure.step
(
"调用接口:hostinterface.create"
)
def
hostinterface_create
(
self
,
dns
=
None
,
hostid
=
None
,
ip
=
None
,
main
=
None
,
port
=
None
,
_type
=
None
,
useip
=
None
,
bulk
=
None
):
api
=
HostInterfaceCreate
(
_host
=
self
.
host
)
api
.
dns
=
dns
api
.
hostid
=
hostid
api
.
ip
=
ip
api
.
main
=
main
api
.
port
=
port
api
.
type
=
_type
api
.
useip
=
useip
api
.
bulk
=
bulk
api
.
get_response
()
return
api
.
response
@allure.step
(
"调用接口:hostinterface.delete"
)
def
hostinterface_delete
(
self
,
interfaceids
=
None
):
api
=
HostInterfaceDelete
(
_host
=
self
.
host
)
api
.
interfaceids
=
interfaceids
api
.
get_response
()
return
api
.
response
@allure.step
(
"连接数据库:zabbix"
)
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
(
"创建测试数据"
)
def
case_create
(
self
,
ip
,
hostid
,
main
,
port
,
_type
,
useip
,
bulk
,
dns
):
response
=
self
.
hostinterface_create
(
ip
=
ip
,
hostid
=
hostid
,
main
=
main
,
port
=
port
,
_type
=
_type
,
useip
=
useip
,
bulk
=
bulk
,
dns
=
dns
)
self
.
check_code
(
response
=
response
,
code
=
0
)
interfaceid
=
UtilsResponse
()
.
get_result
(
response
=
response
)[
"interfaceids"
][
0
]
return
interfaceid
@allure.step
(
"查询表:interface"
)
def
select_interface
(
self
,
interfaceid
=
None
):
session
=
self
.
db_session
()
sql
=
DataInterface
()
.
select_all_from_allKeys
(
session
=
session
,
interfaceid
=
interfaceid
)
return
sql
@allure.step
(
"校验查询结果"
)
def
check_select
(
self
,
interfaceid
):
sql
=
self
.
select_interface
(
interfaceid
=
interfaceid
)
assert
sql
==
[]
@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
@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.step
(
"断言返回错误结果"
)
def
check_status
(
self
,
response
,
status
):
_status
=
UtilsResponse
()
.
get_status
(
response
=
response
)
assert
_status
==
status
@allure.step
(
"调用接口:host.create"
)
def
host_create
(
self
,
host
=
None
,
name
=
None
,
description
=
None
,
groupids
=
None
,
interfaces
=
None
,
tags
=
None
,
templateids
=
None
,
macros
=
None
,
inventory
=
None
,
status
=
None
,
inventory_mode
=
None
):
api
=
HostCreate
(
_host
=
self
.
host
)
api
.
host
=
host
api
.
name
=
name
api
.
description
=
description
api
.
groupids
=
groupids
api
.
interfaces
=
interfaces
api
.
tags
=
tags
api
.
templateids
=
templateids
api
.
macros
=
macros
api
.
inventory
=
inventory
api
.
status
=
status
api
.
inventory_mode
=
inventory_mode
api
.
tls_connect
=
1
api
.
tls_accept
=
1
api
.
tls_psk_identity
=
""
api
.
tls_psk
=
""
api
.
get_response
()
return
api
.
response
@allure.step
(
"创建测试数据"
)
def
case_host_create
(
self
,
num
):
templateid
=
10001
host
=
self
.
base_host_name
+
num
description
=
self
.
base_description
+
num
interfaces
=
{
"type"
:
2
,
"main"
:
1
,
"useip"
:
1
,
"ip"
:
self
.
base_ip
,
"dns"
:
""
,
"port"
:
100
,
"bulk"
:
1
}
response
=
self
.
host_create
(
host
=
host
,
description
=
description
,
groupids
=
[
self
.
base_groupid
],
interfaces
=
[
interfaces
],
status
=
0
,
templateids
=
[
templateid
],
macros
=
[{
"macro"
:
"{$SNMP_COMMUNITY}"
,
"value"
:
"public"
}])
self
.
check_code
(
response
=
response
,
code
=
0
)
self
.
hostid
=
UtilsResponse
()
.
get_result
(
response
=
response
)[
"hostids"
][
0
]
self
.
delete_interfaces
()
return
self
.
hostid
@allure.step
(
"删除所有已存在的接口"
)
def
delete_interfaces
(
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
)
DataInterface
()
.
delete_hostid
(
session
=
session
,
hostid
=
self
.
hostid
)
@allure.title
(
"hostinterface.delete:删除的ID存在"
)
@allure.story
(
"删除主机接口:删除的ID存在"
)
@allure.severity
(
"blocker"
)
def
test_case_01
(
self
):
self
.
case_host_create
(
num
=
"01"
)
interfaceid
=
self
.
case_create
(
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
base_port
,
_type
=
1
,
useip
=
1
,
bulk
=
1
)
response
=
self
.
hostinterface_delete
(
interfaceids
=
[
interfaceid
])
self
.
check_code
(
response
=
response
,
code
=
0
)
self
.
check_select
(
interfaceid
=
interfaceid
)
@allure.title
(
"hostinterface.delete:删除的ID不存在 500"
)
@allure.story
(
"删除主机接口:删除的ID不存在 500"
)
def
test_case_02
(
self
):
self
.
case_host_create
(
num
=
"02"
)
interfaceid
=
self
.
case_create
(
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
base_port
,
_type
=
2
,
useip
=
1
,
bulk
=
1
)
response
=
self
.
hostinterface_delete
(
interfaceids
=
[
interfaceid
])
self
.
check_code
(
response
=
response
,
code
=
0
)
self
.
check_select
(
interfaceid
=
interfaceid
)
response
=
self
.
hostinterface_delete
(
interfaceids
=
[
interfaceid
])
self
.
check_status
(
response
=
response
,
status
=
500
)
@allure.title
(
"hostinterface.delete:删除多个ID"
)
@allure.story
(
"删除主机接口:删除多个ID"
)
def
test_case_03
(
self
):
self
.
case_host_create
(
num
=
"03"
)
interfaceid_1
=
self
.
case_create
(
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
base_port
,
_type
=
2
,
useip
=
1
,
bulk
=
1
)
interfaceid_2
=
self
.
case_create
(
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
0
,
port
=
self
.
base_port
,
_type
=
2
,
useip
=
1
,
bulk
=
1
)
interfaceid_3
=
self
.
case_create
(
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
0
,
port
=
self
.
base_port
,
_type
=
2
,
useip
=
1
,
bulk
=
1
)
response
=
self
.
hostinterface_delete
(
interfaceids
=
[
interfaceid_1
,
interfaceid_2
,
interfaceid_3
])
self
.
check_code
(
response
=
response
,
code
=
0
)
self
.
check_select
(
interfaceid
=
interfaceid_1
)
self
.
check_select
(
interfaceid
=
interfaceid_2
)
self
.
check_select
(
interfaceid
=
interfaceid_3
)
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 = TestHostInterfaceDelete()
# a.setup_class()
# a.test_case_03()
# a.test_case_02()
# a.test_case_03()
# a.test_case_06()
WorkCase/API/HostInterface/test_hostinterface_get.py
deleted
100644 → 0
View file @
d785d648
# -*- coding: utf-8 -*-
# 测试用例
# 作者: 陈磊
# 时间: 2019-10-31
from
__future__
import
division
from
WorkApi.API.Host.host_create
import
HostCreate
from
WorkUtils.UtilsLog
import
UtilsLog
from
WorkUtils.UtilsDataBase
import
UtilsDataBase
from
WorkUtils.UtilsResponse
import
UtilsResponse
from
WorkApi.API.HostInterface.hostInterface_create
import
HostInterfaceCreate
from
WorkApi.API.HostInterface.hostInterface_get
import
HostInterfaceGet
from
WorkData.Zabbix.interface
import
DataInterface
from
WorkData.Zabbix.hosts
import
DataHosts
from
WorkData.Zabbix.items
import
DataItems
from
WorkCase
import
CaseBase
import
allure
@allure.feature
(
"测试模块:hostinterface.get"
)
class
TestHostInterfaceGet
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
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"
]
base_name
=
"SS测试主机组"
base_ip
=
"10.0.0.28"
base_hostid
=
10266
base_dns
=
"sanshi.zmops.cn"
base_port
=
"127"
base_host_name
=
"SS TEST HOST"
base_description
=
"SS TEST HOST-interface"
base_groupid
=
101
@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
)
sql
=
DataHosts
()
.
select_like_name
(
session
=
session
,
name
=
cls
.
base_host_name
)
for
x
,
y
in
enumerate
(
sql
):
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
)
DataItems
()
.
delete_hostid
(
session
=
session
,
hostid
=
y
.
hostid
)
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
)
DataHosts
()
.
delete_like_name
(
session
=
session
,
name
=
cls
.
base_host_name
)
@classmethod
def
teardown_class
(
cls
):
cls
.
log
.
debug
(
"结束执行测试套件......."
)
def
setup_method
(
self
):
self
.
log
.
debug
(
"测试用例执行开始..."
)
def
teardown_method
(
self
):
self
.
log
.
debug
(
"测试用例执行结束..."
)
@allure.step
(
"调用接口:hostinterface.create"
)
def
hostinterface_create
(
self
,
dns
=
None
,
hostid
=
None
,
ip
=
None
,
main
=
None
,
port
=
None
,
_type
=
None
,
useip
=
None
,
bulk
=
None
):
api
=
HostInterfaceCreate
(
_host
=
self
.
host
)
api
.
dns
=
dns
api
.
hostid
=
hostid
api
.
ip
=
ip
api
.
main
=
main
api
.
port
=
port
api
.
type
=
_type
api
.
useip
=
useip
api
.
bulk
=
bulk
api
.
get_response
()
return
api
.
response
@allure.step
(
"创建测试数据"
)
def
case_create
(
self
,
ip
,
hostid
,
main
,
port
,
_type
,
useip
,
bulk
,
dns
):
response
=
self
.
hostinterface_create
(
ip
=
ip
,
hostid
=
hostid
,
main
=
main
,
port
=
port
,
_type
=
_type
,
useip
=
useip
,
bulk
=
bulk
,
dns
=
dns
)
self
.
check_code
(
response
=
response
,
code
=
0
)
interfaceid
=
UtilsResponse
()
.
get_result
(
response
=
response
)[
"interfaceids"
][
0
]
return
interfaceid
@allure.step
(
"调用接口:hostinterface.get"
)
def
hostinterface_get
(
self
,
hostids
=
None
,
interfaceids
=
None
,
itemids
=
None
,
triggerids
=
None
,
selectItems
=
None
,
selectHosts
=
None
,
limitSelects
=
None
,
countOutput
=
None
,
editable
=
None
,
excludeSearch
=
None
,
_filter
=
None
,
limit
=
None
,
output
=
None
,
preservekeys
=
None
,
search
=
None
,
searchByAny
=
None
,
searchWildcardsEnabled
=
None
,
sortfield
=
None
,
sortorder
=
None
,
startSearch
=
None
):
api
=
HostInterfaceGet
(
_host
=
self
.
host
)
api
.
hostids
=
hostids
api
.
interfaceids
=
interfaceids
api
.
itemids
=
itemids
api
.
triggerids
=
triggerids
api
.
selectItems
=
selectItems
api
.
selectHosts
=
selectHosts
api
.
limitSelects
=
limitSelects
api
.
countOutput
=
countOutput
api
.
editable
=
editable
api
.
excludeSearch
=
excludeSearch
api
.
filter
=
_filter
api
.
limit
=
limit
api
.
output
=
output
api
.
preservekeys
=
preservekeys
api
.
search
=
search
api
.
searchByAny
=
searchByAny
api
.
searchWildcardsEnabled
=
searchWildcardsEnabled
api
.
sortfield
=
sortfield
api
.
sortorder
=
sortorder
api
.
startSearch
=
startSearch
api
.
get_response
()
return
api
.
response
@allure.step
(
"连接数据库:zabbix"
)
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
(
"查询表:interface"
)
def
select_interface
(
self
,
interfaceid
=
None
):
session
=
self
.
db_session
()
sql
=
DataInterface
()
.
select_all_from_allKeys
(
session
=
session
,
interfaceid
=
interfaceid
)
return
sql
@allure.step
(
"断言返回结果:校验排序"
)
def
check_sortfield
(
self
,
response
,
possible
):
result
=
UtilsResponse
()
.
get_result
(
response
=
response
)
UtilsResponse
()
.
check_sort
(
_list
=
result
,
key
=
"interfaceid"
,
possible
=
possible
)
@allure.step
(
"断言返回结果:校验返回数据的数量"
)
def
check_num
(
self
,
response
,
num
):
result
=
UtilsResponse
()
.
get_result
(
response
=
response
)
assert
len
(
result
)
==
num
@allure.step
(
"断言返回结果"
)
def
check_code
(
self
,
response
,
code
):
_code
=
UtilsResponse
()
.
get_code
(
response
=
response
)
assert
_code
==
code
@allure.step
(
"断言返回结果:与数据库结果是否一致"
)
def
check_sql
(
self
,
response
,
interfaceid
):
sql
=
self
.
select_interface
(
interfaceid
=
interfaceid
)
result
=
UtilsResponse
()
.
get_result
(
response
=
response
)
for
x
,
y
in
enumerate
(
sql
):
assert
y
.
interfaceid
in
UtilsResponse
()
.
get_values_from_key
(
_dict
=
result
,
key
=
"interfaceid"
)
assert
y
.
type
in
UtilsResponse
()
.
get_values_from_key
(
_dict
=
result
,
key
=
"type"
)
assert
y
.
ip
in
UtilsResponse
()
.
get_values_from_key
(
_dict
=
result
,
key
=
"ip"
)
assert
y
.
port
in
UtilsResponse
()
.
get_values_from_key
(
_dict
=
result
,
key
=
"port"
)
assert
y
.
main
in
UtilsResponse
()
.
get_values_from_key
(
_dict
=
result
,
key
=
"main"
)
assert
y
.
useip
in
UtilsResponse
()
.
get_values_from_key
(
_dict
=
result
,
key
=
"useip"
)
assert
y
.
bulk
in
UtilsResponse
()
.
get_values_from_key
(
_dict
=
result
,
key
=
"bulk"
)
for
x
,
y
in
enumerate
(
result
):
assert
y
[
"interfaceid"
]
in
UtilsResponse
()
.
get_values_from_sql
(
_sql
=
sql
,
key
=
"interfaceid"
)
assert
y
[
"type"
]
in
UtilsResponse
()
.
get_values_from_sql
(
_sql
=
sql
,
key
=
"type"
)
assert
y
[
"ip"
]
in
UtilsResponse
()
.
get_values_from_sql
(
_sql
=
sql
,
key
=
"ip"
)
assert
y
[
"port"
]
in
UtilsResponse
()
.
get_values_from_sql
(
_sql
=
sql
,
key
=
"port"
)
assert
y
[
"main"
]
in
UtilsResponse
()
.
get_values_from_sql
(
_sql
=
sql
,
key
=
"main"
)
assert
y
[
"useip"
]
in
UtilsResponse
()
.
get_values_from_sql
(
_sql
=
sql
,
key
=
"useip"
)
assert
y
[
"bulk"
]
in
UtilsResponse
()
.
get_values_from_sql
(
_sql
=
sql
,
key
=
"bulk"
)
@allure.step
(
"调用接口:host.create"
)
def
host_create
(
self
,
host
=
None
,
name
=
None
,
description
=
None
,
groupids
=
None
,
interfaces
=
None
,
tags
=
None
,
templateids
=
None
,
macros
=
None
,
inventory
=
None
,
status
=
None
,
inventory_mode
=
None
):
api
=
HostCreate
(
_host
=
self
.
host
)
api
.
host
=
host
api
.
name
=
name
api
.
description
=
description
api
.
groupids
=
groupids
api
.
interfaces
=
interfaces
api
.
tags
=
tags
api
.
templateids
=
templateids
api
.
macros
=
macros
api
.
inventory
=
inventory
api
.
status
=
status
api
.
inventory_mode
=
inventory_mode
api
.
tls_connect
=
1
api
.
tls_accept
=
1
api
.
tls_psk_identity
=
""
api
.
tls_psk
=
""
api
.
get_response
()
return
api
.
response
@allure.step
(
"创建测试数据"
)
def
case_host_create
(
self
,
num
):
templateid
=
10001
host
=
self
.
base_host_name
+
num
description
=
self
.
base_description
+
num
interfaces
=
{
"type"
:
2
,
"main"
:
1
,
"useip"
:
1
,
"ip"
:
self
.
base_ip
,
"dns"
:
""
,
"port"
:
100
,
"bulk"
:
1
}
response
=
self
.
host_create
(
host
=
host
,
description
=
description
,
groupids
=
[
self
.
base_groupid
],
interfaces
=
[
interfaces
],
status
=
0
,
templateids
=
[
templateid
],
macros
=
[{
"macro"
:
"{$SNMP_COMMUNITY}"
,
"value"
:
"public"
}])
self
.
check_code
(
response
=
response
,
code
=
0
)
self
.
hostid
=
UtilsResponse
()
.
get_result
(
response
=
response
)[
"hostids"
][
0
]
self
.
delete_interfaces
()
return
self
.
hostid
@allure.step
(
"删除所有已存在的接口"
)
def
delete_interfaces
(
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
)
DataInterface
()
.
delete_hostid
(
session
=
session
,
hostid
=
self
.
hostid
)
@allure.title
(
"hostinterface.get:无参数调用"
)
@allure.story
(
"查询主机接口:无参数调用"
)
@allure.severity
(
"blocker"
)
def
test_case_01
(
self
):
response
=
self
.
hostinterface_get
()
self
.
check_code
(
response
=
response
,
code
=
0
)
@allure.title
(
"hostinterface.get:countOutput=true"
)
@allure.story
(
"查询主机接口:countOutput=true"
)
def
test_case_02
(
self
):
response
=
self
.
hostinterface_get
(
countOutput
=
"true"
)
self
.
check_code
(
response
=
response
,
code
=
0
)
@allure.title
(
"hostinterface.get:hostids=特定IDs"
)
@allure.story
(
"查询主机接口:hostids=特定IDs"
)
def
test_case_03
(
self
):
self
.
case_host_create
(
num
=
"03"
)
response
=
self
.
hostinterface_get
(
hostids
=
[
self
.
hostid
])
self
.
check_code
(
response
=
response
,
code
=
0
)
@allure.title
(
"hostinterface.get:output=[ip]"
)
@allure.story
(
"查询主机接口:output=[ip]"
)
def
test_case_04
(
self
):
self
.
case_host_create
(
num
=
"04"
)
response
=
self
.
hostinterface_get
(
output
=
[
"ip"
])
self
.
check_code
(
response
=
response
,
code
=
0
)
@allure.title
(
"hostinterface.get:interfaceids=特定IDs, output=[ip, port, type, main, useip, bulk]"
)
@allure.story
(
"查询主机接口:interfaceids=特定IDs, output=[ip, port, type, main, useip, bulk]"
)
def
test_case_05
(
self
):
self
.
case_host_create
(
num
=
"05"
)
interfaceid
=
self
.
case_create
(
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
base_port
,
_type
=
1
,
useip
=
1
,
bulk
=
1
)
response
=
self
.
hostinterface_get
(
interfaceids
=
[
interfaceid
],
output
=
[
"ip"
,
"port"
,
"type"
,
"main"
,
"useip"
,
"bulk"
])
self
.
check_code
(
response
=
response
,
code
=
0
)
self
.
check_sql
(
response
=
response
,
interfaceid
=
interfaceid
)
@allure.title
(
"hostinterface.get:limit=1"
)
@allure.story
(
"查询主机接口:limit=1"
)
def
test_case_06
(
self
):
self
.
case_host_create
(
num
=
"06"
)
self
.
case_create
(
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
base_port
,
_type
=
2
,
useip
=
1
,
bulk
=
1
)
response
=
self
.
hostinterface_get
(
limit
=
1
)
self
.
check_code
(
response
=
response
,
code
=
0
)
result
=
UtilsResponse
()
.
get_result
(
response
=
response
)
assert
len
(
result
)
==
1
@allure.title
(
"hostinterface.get:sortfield=interfaceid"
)
@allure.story
(
"查询主机接口:sortfield=interfaceid"
)
def
test_case_07
(
self
):
response
=
self
.
hostinterface_get
(
sortfield
=
[
"interfaceid"
])
self
.
check_code
(
response
=
response
,
code
=
0
)
self
.
check_sortfield
(
response
=
response
,
possible
=
True
)
@allure.title
(
"hostinterface.get:sortfield=interfaceid, sortorder=ASC"
)
@allure.story
(
"查询主机接口:sortfield=interfaceid, sortorder=ASC"
)
def
test_case_08
(
self
):
response
=
self
.
hostinterface_get
(
sortfield
=
[
"interfaceid"
],
sortorder
=
[
"ASC"
])
self
.
check_code
(
response
=
response
,
code
=
0
)
self
.
check_sortfield
(
response
=
response
,
possible
=
"ASC"
)
@allure.title
(
"hostinterface.get:sortfield=interfaceid, sortorder=DESC"
)
@allure.story
(
"查询主机接口:sortfield=interfaceid, sortorder=DESC"
)
def
test_case_09
(
self
):
response
=
self
.
hostinterface_get
(
sortfield
=
[
"interfaceid"
],
sortorder
=
[
"DESC"
])
self
.
check_code
(
response
=
response
,
code
=
0
)
self
.
check_sortfield
(
response
=
response
,
possible
=
"DESC"
)
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 = TestHostInterfaceGet()
# a.setup_class()
# a.test_case_05()
WorkCase/API/HostInterface/test_hostinterface_update.py
deleted
100644 → 0
View file @
d785d648
# -*- coding: utf-8 -*-
# 测试用例
# 作者: 陈磊
# 时间: 2019-11-12
from
__future__
import
division
from
WorkApi.API.Host.host_create
import
HostCreate
from
WorkCase
import
CaseBase
from
WorkUtils.UtilsLog
import
UtilsLog
from
WorkUtils.UtilsDataBase
import
UtilsDataBase
from
WorkUtils.UtilsResponse
import
UtilsResponse
from
WorkApi.API.HostInterface.hostInterface_create
import
HostInterfaceCreate
from
WorkApi.API.HostInterface.hostInterface_update
import
HostInterfaceUpdate
from
WorkData.Zabbix.interface
import
DataInterface
from
WorkData.Zabbix.items
import
DataItems
from
WorkData.Zabbix.hosts
import
DataHosts
import
allure
@allure.feature
(
"测试模块:hostinterface.update"
)
class
TestHostInterfaceUpdate
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
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"
]
base_name
=
"SS测试主机接口"
base_ip
=
"10.0.0.28"
base_hostid
=
10266
base_dns
=
"sanshi.zmops.cn"
base_port
=
"127"
base_host_name
=
"SS TEST HOST"
base_description
=
"SS TEST HOST-interface"
base_groupid
=
101
new_ip
=
"192.168.1.28"
new_port
=
"721"
@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
)
sql
=
DataHosts
()
.
select_like_name
(
session
=
session
,
name
=
cls
.
base_host_name
)
for
x
,
y
in
enumerate
(
sql
):
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
)
DataItems
()
.
delete_hostid
(
session
=
session
,
hostid
=
y
.
hostid
)
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
)
DataHosts
()
.
delete_like_name
(
session
=
session
,
name
=
cls
.
base_host_name
)
@classmethod
def
teardown_class
(
cls
):
cls
.
log
.
debug
(
"结束执行测试套件......."
)
def
setup_method
(
self
):
self
.
log
.
debug
(
"测试用例执行开始..."
)
def
teardown_method
(
self
):
self
.
log
.
debug
(
"测试用例执行结束..."
)
@allure.step
(
"调用接口:hostinterface.create"
)
def
hostinterface_create
(
self
,
dns
=
None
,
hostid
=
None
,
ip
=
None
,
main
=
None
,
port
=
None
,
_type
=
None
,
useip
=
None
,
bulk
=
None
):
api
=
HostInterfaceCreate
(
_host
=
self
.
host
)
api
.
dns
=
dns
api
.
hostid
=
hostid
api
.
ip
=
ip
api
.
main
=
main
api
.
port
=
port
api
.
type
=
_type
api
.
useip
=
useip
api
.
bulk
=
bulk
api
.
get_response
()
return
api
.
response
@allure.step
(
"调用接口:hostinterface.update"
)
def
hostinterface_update
(
self
,
interfaceid
=
None
,
dns
=
None
,
hostid
=
None
,
ip
=
None
,
main
=
None
,
port
=
None
,
_type
=
None
,
useip
=
None
,
bulk
=
None
):
api
=
HostInterfaceUpdate
(
_host
=
self
.
host
)
api
.
interfaceid
=
interfaceid
api
.
dns
=
dns
api
.
hostid
=
hostid
api
.
ip
=
ip
api
.
main
=
main
api
.
port
=
port
api
.
type
=
_type
api
.
useip
=
useip
api
.
bulk
=
bulk
api
.
get_response
()
return
api
.
response
@allure.step
(
"连接数据库:zabbix"
)
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
(
"创建测试数据"
)
def
case_create
(
self
,
ip
,
hostid
,
main
,
port
,
_type
,
useip
,
bulk
,
dns
):
response
=
self
.
hostinterface_create
(
ip
=
ip
,
hostid
=
hostid
,
main
=
main
,
port
=
port
,
_type
=
_type
,
useip
=
useip
,
bulk
=
bulk
,
dns
=
dns
)
self
.
check_code
(
response
=
response
,
code
=
0
)
interfaceid
=
UtilsResponse
()
.
get_result
(
response
=
response
)[
"interfaceids"
][
0
]
return
interfaceid
@allure.step
(
"查询表:interface"
)
def
select_interface
(
self
,
interfaceid
=
None
):
session
=
self
.
db_session
()
sql
=
DataInterface
()
.
select_all_from_allKeys
(
session
=
session
,
interfaceid
=
interfaceid
)
return
sql
@allure.step
(
"校验查询结果"
)
def
check_select
(
self
,
interfaceid
,
hostid
,
main
,
port
,
_type
,
useip
,
bulk
,
dns
,
ip
):
sql
=
self
.
select_interface
(
interfaceid
=
interfaceid
)
for
x
,
y
in
enumerate
(
sql
):
assert
y
.
hostid
==
hostid
assert
y
.
main
==
main
assert
y
.
port
==
port
assert
y
.
type
==
_type
assert
y
.
useip
==
useip
assert
y
.
bulk
==
bulk
if
dns
!=
""
and
ip
==
""
:
assert
y
.
dns
==
dns
elif
ip
!=
""
and
dns
==
""
:
assert
y
.
ip
==
ip
@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
@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.step
(
"断言返回错误结果"
)
def
check_status
(
self
,
response
,
status
):
_status
=
UtilsResponse
()
.
get_status
(
response
=
response
)
assert
_status
==
status
@allure.step
(
"调用接口:host.create"
)
def
host_create
(
self
,
host
=
None
,
name
=
None
,
description
=
None
,
groupids
=
None
,
interfaces
=
None
,
tags
=
None
,
templateids
=
None
,
macros
=
None
,
inventory
=
None
,
status
=
None
,
inventory_mode
=
None
):
api
=
HostCreate
(
_host
=
self
.
host
)
api
.
host
=
host
api
.
name
=
name
api
.
description
=
description
api
.
groupids
=
groupids
api
.
interfaces
=
interfaces
api
.
tags
=
tags
api
.
templateids
=
templateids
api
.
macros
=
macros
api
.
inventory
=
inventory
api
.
status
=
status
api
.
inventory_mode
=
inventory_mode
api
.
tls_connect
=
1
api
.
tls_accept
=
1
api
.
tls_psk_identity
=
""
api
.
tls_psk
=
""
api
.
get_response
()
return
api
.
response
@allure.step
(
"创建测试数据"
)
def
case_host_create
(
self
,
num
):
templateid
=
10001
host
=
self
.
base_host_name
+
num
description
=
self
.
base_description
+
num
interfaces
=
{
"type"
:
2
,
"main"
:
1
,
"useip"
:
1
,
"ip"
:
self
.
base_ip
,
"dns"
:
""
,
"port"
:
100
,
"bulk"
:
1
}
response
=
self
.
host_create
(
host
=
host
,
description
=
description
,
groupids
=
[
self
.
base_groupid
],
interfaces
=
[
interfaces
],
status
=
0
,
templateids
=
[
templateid
],
macros
=
[{
"macro"
:
"{$SNMP_COMMUNITY}"
,
"value"
:
"public"
}])
self
.
check_code
(
response
=
response
,
code
=
0
)
self
.
hostid
=
UtilsResponse
()
.
get_result
(
response
=
response
)[
"hostids"
][
0
]
self
.
delete_interfaces
()
return
self
.
hostid
@allure.step
(
"删除所有已存在的接口"
)
def
delete_interfaces
(
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
)
DataInterface
()
.
delete_hostid
(
session
=
session
,
hostid
=
self
.
hostid
)
@allure.title
(
"hostinterface.update:修改ip, port"
)
@allure.story
(
"更新主机接口:修改ip, port"
)
@allure.severity
(
"blocker"
)
def
test_case_01
(
self
):
self
.
case_host_create
(
num
=
"01"
)
interfaceid
=
self
.
case_create
(
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
base_port
,
_type
=
1
,
useip
=
1
,
bulk
=
1
)
response
=
self
.
hostinterface_update
(
interfaceid
=
interfaceid
,
ip
=
self
.
new_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
new_port
,
_type
=
1
,
useip
=
1
,
bulk
=
1
)
self
.
check_code
(
response
=
response
,
code
=
0
)
self
.
check_select
(
interfaceid
=
interfaceid
,
ip
=
self
.
new_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
new_port
,
_type
=
1
,
useip
=
1
,
bulk
=
1
)
@allure.title
(
"hostinterface.update:修改dns"
)
@allure.story
(
"更新主机接口:修改dns"
)
def
test_case_02
(
self
):
self
.
case_host_create
(
num
=
"02"
)
interfaceid
=
self
.
case_create
(
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
base_port
,
_type
=
2
,
useip
=
1
,
bulk
=
1
)
response
=
self
.
hostinterface_update
(
interfaceid
=
interfaceid
,
ip
=
""
,
dns
=
self
.
base_dns
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
new_port
,
_type
=
2
,
useip
=
1
,
bulk
=
1
)
self
.
check_code
(
response
=
response
,
code
=
0
)
self
.
check_select
(
interfaceid
=
interfaceid
,
ip
=
""
,
dns
=
self
.
base_dns
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
new_port
,
_type
=
2
,
useip
=
1
,
bulk
=
1
)
@allure.title
(
"hostinterface.update:默认接口无法修改成非默认接口"
)
@allure.story
(
"更新主机接口:默认接口无法修改成非默认接口"
)
def
test_case_03
(
self
):
self
.
case_host_create
(
num
=
"03"
)
interfaceid
=
self
.
case_create
(
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
base_port
,
_type
=
3
,
useip
=
1
,
bulk
=
1
)
response
=
self
.
hostinterface_update
(
interfaceid
=
interfaceid
,
ip
=
self
.
new_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
0
,
port
=
self
.
new_port
,
_type
=
3
,
useip
=
1
,
bulk
=
1
)
self
.
check_code
(
response
=
response
,
code
=
100
)
self
.
check_select
(
interfaceid
=
interfaceid
,
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
base_port
,
_type
=
3
,
useip
=
1
,
bulk
=
1
)
@allure.title
(
"hostinterface.update:非默认接口无法修改成默认接口"
)
@allure.story
(
"更新主机接口:非默认接口无法修改成默认接口"
)
def
test_case_04
(
self
):
self
.
case_host_create
(
num
=
"04"
)
self
.
case_create
(
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
base_port
,
_type
=
4
,
useip
=
1
,
bulk
=
1
)
interfaceid
=
self
.
case_create
(
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
0
,
port
=
self
.
base_port
,
_type
=
4
,
useip
=
1
,
bulk
=
1
)
response
=
self
.
hostinterface_update
(
interfaceid
=
interfaceid
,
ip
=
self
.
new_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
new_port
,
_type
=
4
,
useip
=
1
,
bulk
=
1
)
self
.
check_code
(
response
=
response
,
code
=
100
)
self
.
check_select
(
interfaceid
=
interfaceid
,
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
0
,
port
=
self
.
base_port
,
_type
=
4
,
useip
=
1
,
bulk
=
1
)
@allure.title
(
"hostinterface.update:修改useip, bulk"
)
@allure.story
(
"更新主机接口:修改useip, bulk"
)
def
test_case_05
(
self
):
self
.
case_host_create
(
num
=
"05"
)
interfaceid
=
self
.
case_create
(
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
base_port
,
_type
=
5
,
useip
=
1
,
bulk
=
1
)
response
=
self
.
hostinterface_update
(
interfaceid
=
interfaceid
,
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
base_port
,
_type
=
5
,
useip
=
0
,
bulk
=
0
)
self
.
check_code
(
response
=
response
,
code
=
0
)
self
.
check_select
(
interfaceid
=
interfaceid
,
ip
=
self
.
base_ip
,
dns
=
""
,
hostid
=
self
.
hostid
,
main
=
1
,
port
=
self
.
base_port
,
_type
=
5
,
useip
=
0
,
bulk
=
0
)
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 = TestHostInterfaceUpdate()
# a.setup_class()
# a.test_case_05()
# a.test_case_02()
# a.test_case_03()
# a.test_case_06()
WorkCase/API/Items/test_items_get.py
View file @
10db88be
...
...
@@ -25,17 +25,17 @@ import allure
@allure.feature
(
"测试模块:items.get"
)
class
TestItemsGet
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
environment
host
=
env
[
"host"
]
env
=
CaseBase
()
.
environment
_test
host
=
env
[
"host
_zabbix
"
]
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"
]
db_base
=
env
[
"db_base
_zabbix
"
]
base_groupid
=
101
base_groupid
=
99
base_name
=
"SS TEST HOST ITEMS"
base_ip
=
"1
0.0.0.1
0"
base_ip
=
"1
72.16.3.17
0"
base_description
=
"SS自动化测试主机描述, 请勿删除"
@classmethod
...
...
@@ -95,7 +95,7 @@ class TestItemsGet(object):
"useip"
:
1
,
"ip"
:
self
.
base_ip
,
"dns"
:
""
,
"port"
:
1
00
,
"port"
:
1
61
,
"bulk"
:
1
}
response
=
self
.
host_create
(
host
=
host
,
description
=
description
,
groupids
=
[
self
.
base_groupid
],
interfaces
=
[
interfaces
],
status
=
0
,
templateids
=
[
templateid
],
...
...
WorkCase/API/Problem/test_problem_acknowledge.py
View file @
10db88be
...
...
@@ -27,13 +27,13 @@ import time
@allure.feature
(
"测试模块:problem.acknowledge"
)
class
TestProblemAcknowledge
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
environment
host
=
env
[
"host"
]
env
=
CaseBase
()
.
environment
_test
host
=
env
[
"host
_zabbix
"
]
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"
]
db_base
=
env
[
"db_base
_zabbix
"
]
base_name
=
"SS EVENT"
base_host_name
=
"SS HOST EVENT"
...
...
@@ -224,7 +224,8 @@ class TestProblemAcknowledge(object):
def
test_case_02
(
self
):
response
=
self
.
problem_acknowledge
(
action
=
1
)
self
.
check_code
(
response
=
response
,
code
=
100
)
self
.
check_msg
(
response
=
response
,
msg
=
"[eventids]不能为空"
)
# self.check_msg(response=response, msg="[eventids]不能为空")
self
.
check_msg
(
response
=
response
,
msg
=
"[eventids]must not be empty"
)
@allure.title
(
"problem.acknowledge:action=1 关闭一个告警"
)
@allure.story
(
"告警忽略/关闭:action=1 关闭一个告警"
)
...
...
WorkCase/API/Problem/test_problem_get.py
View file @
10db88be
...
...
@@ -20,13 +20,13 @@ import allure
@allure.feature
(
"测试模块:problem.get"
)
class
TestProblemGet
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
environment
host
=
env
[
"host"
]
env
=
CaseBase
()
.
environment
_test
host
=
env
[
"host
_zabbix
"
]
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"
]
db_base
=
env
[
"db_base
_zabbix
"
]
@classmethod
def
setup_class
(
cls
):
...
...
WorkCase/API/Problem/test_problem_getLatest.py
View file @
10db88be
...
...
@@ -20,13 +20,13 @@ import allure
@allure.feature
(
"测试模块:problem.getLatest"
)
class
TestProblemGetLatest
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
environment
host
=
env
[
"host"
]
env
=
CaseBase
()
.
environment
_test
host
=
env
[
"host
_zabbix
"
]
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"
]
db_base
=
env
[
"db_base
_zabbix
"
]
@classmethod
def
setup_class
(
cls
):
...
...
WorkCase/API/Trigger/test_trigger_create.py
View file @
10db88be
...
...
@@ -22,13 +22,14 @@ import allure
@allure.feature
(
"测试模块:trigger.create"
)
class
TestTriggerCreate
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
environment
host
=
env
[
"host"
]
env
=
CaseBase
()
.
environment
_test
host
=
env
[
"host
_zabbix
"
]
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"
]
db_base
=
env
[
"db_base_zabbix"
]
base_name
=
"SS测试主机"
base_description
=
"SS测试触发器-创建"
base_expression
=
"{Template OS Linux:agent.ping.nodata(5m)}=1"
...
...
WorkCase/API/Trigger/test_trigger_delete.py
View file @
10db88be
...
...
@@ -23,13 +23,14 @@ import allure
@allure.feature
(
"测试模块:trigger.delete"
)
class
TestTriggerDelete
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
environment
host
=
env
[
"host"
]
env
=
CaseBase
()
.
environment
_test
host
=
env
[
"host
_zabbix
"
]
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"
]
db_base
=
env
[
"db_base_zabbix"
]
base_description
=
"SS测试触发器-删除"
base_expression
=
"{Template OS Linux:agent.ping.nodata(5m)}=1"
...
...
WorkCase/API/Trigger/test_trigger_get.py
View file @
10db88be
...
...
@@ -24,13 +24,14 @@ import allure
@allure.feature
(
"测试模块:trigger.get"
)
class
TestTriggerGet
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
environment
host
=
env
[
"host"
]
env
=
CaseBase
()
.
environment
_test
host
=
env
[
"host
_zabbix
"
]
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"
]
db_base
=
env
[
"db_base_zabbix"
]
base_description
=
"SS测试触发器型-查询"
base_expression
=
"{Template OS Linux:agent.ping.nodata(5m)}=1"
...
...
WorkCase/API/Trigger/test_trigger_update.py
View file @
10db88be
...
...
@@ -24,13 +24,14 @@ import allure
@allure.feature
(
"测试模块:trigger.update"
)
class
TestTriggerUpdate
(
object
):
log
=
UtilsLog
()
env
=
CaseBase
()
.
environment
host
=
env
[
"host"
]
env
=
CaseBase
()
.
environment
_test
host
=
env
[
"host
_zabbix
"
]
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"
]
db_base
=
env
[
"db_base_zabbix"
]
base_description
=
"SS测试触发器-更新"
base_expression
=
"{Template OS Linux:agent.ping.nodata(5m)}=1"
new_expression
=
"{Template OS Linux:agent.ping.nodata(5m)}=2"
...
...
WorkCase/__init__.py
View file @
10db88be
...
...
@@ -64,3 +64,14 @@ class CaseBase:
"ON"
:
0
,
"OFF"
:
1
}
self
.
environment_test
=
{
"host"
:
"http://client.argus.zmops.cn/api"
,
"host_zabbix"
:
"http://api.argus.zmops.cn"
,
"db_url"
:
"47.110.118.218"
,
"db_port"
:
23306
,
"db_user"
:
"argus"
,
"db_pw"
:
"Argus@2019"
,
"db_base"
:
"argus"
,
"db_base_zabbix"
:
"argus1"
}
\ No newline at end of file
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