Commit c6a3a464 by sanshi

设备类型

parent 54b13637
...@@ -7,6 +7,7 @@ ...@@ -7,6 +7,7 @@
from __future__ import division from __future__ import division
from WorkCase import CaseBase from WorkCase import CaseBase
from WorkCase.APP import AppBase
from WorkUtils.UtilsLog import UtilsLog from WorkUtils.UtilsLog import UtilsLog
from WorkUtils.UtilsDataBase import UtilsDataBase from WorkUtils.UtilsDataBase import UtilsDataBase
from WorkUtils.UtilsResponse import UtilsResponse from WorkUtils.UtilsResponse import UtilsResponse
...@@ -34,11 +35,12 @@ class TestHostTypeCreate(object): ...@@ -34,11 +35,12 @@ class TestHostTypeCreate(object):
base_id = 10 base_id = 10
base_password = "123456" base_password = "123456"
base_title = "SS自动化设备类型名称" base_title = "SS 自动化专用设备类型"
@classmethod @classmethod
def setup_class(cls): def setup_class(cls):
cls.log.debug("开始执行测试套件.......") 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) 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)
DataHostTypes().delete_like_title(session=session, title=cls.base_title) DataHostTypes().delete_like_title(session=session, title=cls.base_title)
...@@ -48,52 +50,17 @@ class TestHostTypeCreate(object): ...@@ -48,52 +50,17 @@ class TestHostTypeCreate(object):
def setup_method(self): def setup_method(self):
self.log.debug("测试用例执行开始...") self.log.debug("测试用例执行开始...")
self.update_members_del_flag(members_id=self.base_id, value=CaseBase().del_flag["OFF"])
self.update_members_status(members_id=self.base_id, value=CaseBase().status["ON"]) self.app = AppBase(host=self.host)
self.app.update_members_del_flag(session=self.db_session(), members_id=self.base_id, value=CaseBase().del_flag["OFF"])
self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=CaseBase().status["ON"])
self.token = self.app.get_base_token(login_name=self.login_name, base_password=self.base_password)
def teardown_method(self): def teardown_method(self):
self.log.debug("测试用例执行结束...") self.log.debug("测试用例执行结束...")
self.update_members_del_flag(members_id=self.base_id, value=CaseBase().del_flag["OFF"])
self.update_members_status(members_id=self.base_id, value=CaseBase().status["ON"])
@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 -- 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") self.app.update_members_del_flag(session=self.db_session(), members_id=self.base_id, value=CaseBase().del_flag["OFF"])
def update_members_status(self, members_id=None, value=None): self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=CaseBase().status["ON"])
session = self.db_session()
sql = DataMembers().update_status(session=session, _id=members_id, value=value)
return sql
@allure.step("调用接口:hosttype.create")
def hostType_create(self, token=None, title=None, parentId=None, templateIds=None, interfaces=None, description=None,
sortid=None):
api = HostTypeCreate(_host=self.host)
api.token = token
api.title = title
api.parentId = parentId
api.templateIds = templateIds
api.interfaces = interfaces
api.description = description
api.sortid = sortid
api.get_response()
return api.response
@allure.step("获取token")
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") @allure.step("连接数据库:Argus")
def db_session(self): def db_session(self):
...@@ -119,56 +86,40 @@ class TestHostTypeCreate(object): ...@@ -119,56 +86,40 @@ class TestHostTypeCreate(object):
assert y.sortid == sortid assert y.sortid == sortid
assert x == 0 assert x == 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("hosttype.create:token未传") @allure.title("hosttype.create:token未传")
@allure.story("创建设备类型:token未传") @allure.story("创建设备类型:token未传")
@allure.severity("blocker") @allure.severity("blocker")
def test_case_01(self): def test_case_01(self):
self.get_base_token() response = self.app.hostType_create()
self.app.check_code(response=response, code=2001)
response = self.hostType_create() self.app.check_msg(response=response, msg="无token,请重新登录")
self.check_code(response=response, code=2001)
self.check_msg(response=response, msg="无token,请重新登录")
@allure.title("hosttype.create:token的用户已删除") @allure.title("hosttype.create:token的用户已删除")
@allure.story("创建设备类型:token的用户已删除") @allure.story("创建设备类型:token的用户已删除")
@allure.severity("blocker") @allure.severity("blocker")
def test_case_02(self): def test_case_02(self):
self.get_base_token() self.app.update_members_del_flag(session=self.db_session(), members_id=self.base_id, value=CaseBase().del_flag["ON"])
self.update_members_del_flag(members_id=self.base_id, value=CaseBase().del_flag["ON"]) response = self.app.hostType_create(token=self.token)
response = self.hostType_create(token=self.token) self.app.check_code(response=response, code=2004)
self.check_code(response=response, code=2004) self.app.check_msg(response=response, msg="用户不存在")
self.check_msg(response=response, msg="用户不存在")
@allure.title("hosttype.create:token的用户已禁用") @allure.title("hosttype.create:token的用户已禁用")
@allure.story("创建设备类型:token的用户已禁用") @allure.story("创建设备类型:token的用户已禁用")
@allure.severity("blocker") @allure.severity("blocker")
def test_case_03(self): def test_case_03(self):
self.get_base_token() self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=CaseBase().status["OFF"])
self.update_members_status(members_id=self.base_id, value=CaseBase().status["OFF"]) response = self.app.hostType_create(token=self.token)
response = self.hostType_create(token=self.token) self.app.check_code(response=response, code=2003)
self.check_code(response=response, code=2003) self.app.check_msg(response=response, msg="账户已被禁用")
self.check_msg(response=response, msg="账户已被禁用")
@allure.title("hosttype.create:成功创建") @allure.title("hosttype.create:成功创建")
@allure.story("创建设备类型:成功创建") @allure.story("创建设备类型:成功创建")
@allure.severity("blocker") @allure.severity("blocker")
def test_case_04(self): def test_case_04(self):
self.get_base_token()
title = self.base_title + "04" title = self.base_title + "04"
response = self.hostType_create(token=self.token, title=title, parentId=0, templateIds="templateIds", response = self.app.hostType_create(token=self.token, title=title, parentId=0, templateIds="templateIds",
interfaces="interfaces", description="description", sortid=255) interfaces="interfaces", description="description", sortid=255)
self.check_code(response=response, code=0) self.app.check_code(response=response, code=0)
self.check_select(response=response, title=title, parent_id=0, template_ids="templateIds", self.check_select(response=response, title=title, parent_id=0, template_ids="templateIds",
interfaces="interfaces", description="description", sortid=255) interfaces="interfaces", description="description", sortid=255)
......
...@@ -7,6 +7,7 @@ ...@@ -7,6 +7,7 @@
from __future__ import division from __future__ import division
from WorkCase import CaseBase from WorkCase import CaseBase
from WorkCase.APP import AppBase
from WorkUtils.UtilsLog import UtilsLog from WorkUtils.UtilsLog import UtilsLog
from WorkUtils.UtilsDataBase import UtilsDataBase from WorkUtils.UtilsDataBase import UtilsDataBase
from WorkUtils.UtilsResponse import UtilsResponse from WorkUtils.UtilsResponse import UtilsResponse
...@@ -35,7 +36,7 @@ class TestHostTypeDelete(object): ...@@ -35,7 +36,7 @@ class TestHostTypeDelete(object):
base_id = 10 base_id = 10
base_password = "123456" base_password = "123456"
base_title = "SS自动化设备类型名称" base_title = "SS 自动化专用设备类型"
@classmethod @classmethod
def setup_class(cls): def setup_class(cls):
...@@ -49,67 +50,17 @@ class TestHostTypeDelete(object): ...@@ -49,67 +50,17 @@ class TestHostTypeDelete(object):
def setup_method(self): def setup_method(self):
self.log.debug("测试用例执行开始...") self.log.debug("测试用例执行开始...")
self.update_members_del_flag(members_id=self.base_id, value=CaseBase().del_flag["OFF"])
self.update_members_status(members_id=self.base_id, value=CaseBase().status["ON"]) self.app = AppBase(host=self.host)
self.app.update_members_del_flag(session=self.db_session(), members_id=self.base_id, value=CaseBase().del_flag["OFF"])
self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=CaseBase().status["ON"])
self.token = self.app.get_base_token(login_name=self.login_name, base_password=self.base_password)
def teardown_method(self): def teardown_method(self):
self.log.debug("测试用例执行结束...") self.log.debug("测试用例执行结束...")
self.update_members_del_flag(members_id=self.base_id, value=CaseBase().del_flag["OFF"])
self.update_members_status(members_id=self.base_id, value=CaseBase().status["ON"])
@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 -- 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") self.app.update_members_del_flag(session=self.db_session(), members_id=self.base_id, value=CaseBase().del_flag["OFF"])
def update_members_status(self, members_id=None, value=None): self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=CaseBase().status["ON"])
session = self.db_session()
sql = DataMembers().update_status(session=session, _id=members_id, value=value)
return sql
@allure.step("调用接口:hosttype.create")
def hostType_create(self, token=None, title=None, parentId=None, templateIds=None, interfaces=None, description=None,
sortid=None):
api = HostTypeCreate(_host=self.host)
api.token = token
api.title = title
api.parentId = parentId
api.templateIds = templateIds
api.interfaces = interfaces
api.description = description
api.sortid = sortid
api.get_response()
return api.response
@allure.step("调用接口:hosttype.delete")
def hostType_delete(self, token=None, hosttypeids=None):
api = HostTypeDelete(_host=self.host)
api.token = token
api.hosttypeids = hosttypeids
api.get_response()
return api.response
@allure.step("创建测试数据")
def case_create(self, num, parentId, description):
self.title = self.base_title + num
response = self.hostType_create(token=self.token, title=self.title, parentId=parentId, description=description)
self.host_type_id = UtilsResponse().get_data(response=response)
return self.host_type_id
@allure.step("获取token")
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") @allure.step("连接数据库:Argus")
def db_session(self): def db_session(self):
...@@ -127,70 +78,58 @@ class TestHostTypeDelete(object): ...@@ -127,70 +78,58 @@ class TestHostTypeDelete(object):
sql = self.select_hosttype(_id=hosttype_id) sql = self.select_hosttype(_id=hosttype_id)
assert sql == [] assert sql == []
@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("hosttype.delete:token未传") @allure.title("hosttype.delete:token未传")
@allure.story("删除设备类型:token未传") @allure.story("删除设备类型:token未传")
@allure.severity("blocker") @allure.severity("blocker")
def test_case_01(self): def test_case_01(self):
self.get_base_token() response = self.app.hostType_delete()
self.app.check_code(response=response, code=2001)
response = self.hostType_delete() self.app.check_msg(response=response, msg="无token,请重新登录")
self.check_code(response=response, code=2001)
self.check_msg(response=response, msg="无token,请重新登录")
@allure.title("hosttype.delete:token的用户已删除") @allure.title("hosttype.delete:token的用户已删除")
@allure.story("删除设备类型:token的用户已删除") @allure.story("删除设备类型:token的用户已删除")
@allure.severity("blocker") @allure.severity("blocker")
def test_case_02(self): def test_case_02(self):
self.get_base_token() self.app.update_members_del_flag(session=self.db_session(), members_id=self.base_id, value=CaseBase().del_flag["ON"])
self.update_members_del_flag(members_id=self.base_id, value=CaseBase().del_flag["ON"]) response = self.app.hostType_delete(token=self.token)
response = self.hostType_delete(token=self.token) self.app.check_code(response=response, code=2004)
self.check_code(response=response, code=2004) self.app.check_msg(response=response, msg="用户不存在")
self.check_msg(response=response, msg="用户不存在")
@allure.title("hosttype.delete:token的用户已禁用") @allure.title("hosttype.delete:token的用户已禁用")
@allure.story("删除设备类型:token的用户已禁用") @allure.story("删除设备类型:token的用户已禁用")
@allure.severity("blocker") @allure.severity("blocker")
def test_case_03(self): def test_case_03(self):
self.get_base_token() self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=CaseBase().status["OFF"])
self.update_members_status(members_id=self.base_id, value=CaseBase().status["OFF"]) response = self.app.hostType_delete(token=self.token)
response = self.hostType_delete(token=self.token) self.app.check_code(response=response, code=2003)
self.check_code(response=response, code=2003) self.app.check_msg(response=response, msg="账户已被禁用")
self.check_msg(response=response, msg="账户已被禁用")
@allure.title("hosttype.delete:成功删除一个") @allure.title("hosttype.delete:成功删除一个")
@allure.story("删除设备类型:成功删除一个") @allure.story("删除设备类型:成功删除一个")
@allure.severity("blocker") @allure.severity("blocker")
def test_case_04(self): def test_case_04(self):
self.get_base_token() title = self.base_title + "04"
id_1 = self.case_create(num="04", parentId=0, description=None) host_type_id = self.app.case_create_hostType(title=title, parentId=0, description=None)
response = self.hostType_delete(token=self.token, hosttypeids=[self.host_type_id]) response = self.app.hostType_delete(token=self.token, hosttypeids=[host_type_id])
self.check_code(response=response, code=0) self.app.check_code(response=response, code=0)
self.check_select(hosttype_id=id_1) self.check_select(hosttype_id=host_type_id)
@allure.title("hosttype.delete:成功删除多个") @allure.title("hosttype.delete:成功删除多个")
@allure.story("删除设备类型:成功删除多个") @allure.story("删除设备类型:成功删除多个")
def test_case_05(self): def test_case_05(self):
self.get_base_token() title_1 = self.base_title + "051"
id_1 = self.case_create(num="051", parentId=1, description=None) title_2 = self.base_title + "052"
id_2 = self.case_create(num="052", parentId=1, description=None) title_3 = self.base_title + "053"
id_3 = self.case_create(num="053", parentId=1, description=None) host_type_id_1 = self.app.case_create_hostType(title=title_1, parentId=0, description=None)
host_type_id_2 = self.app.case_create_hostType(title=title_2, parentId=0, description=None)
response = self.hostType_delete(token=self.token, hosttypeids=[id_1, id_2, id_3]) host_type_id_3 = self.app.case_create_hostType(title=title_3, parentId=0, description=None)
self.check_code(response=response, code=0)
self.check_select(hosttype_id=id_1) response = self.app.hostType_delete(token=self.token, hosttypeids=[host_type_id_1, host_type_id_2, host_type_id_3])
self.check_select(hosttype_id=id_2) self.app.check_code(response=response, code=0)
self.check_select(hosttype_id=id_3) self.check_select(hosttype_id=host_type_id_1)
self.check_select(hosttype_id=host_type_id_2)
self.check_select(hosttype_id=host_type_id_3)
if __name__ == "__main__": if __name__ == "__main__":
......
...@@ -9,6 +9,7 @@ from __future__ import division ...@@ -9,6 +9,7 @@ from __future__ import division
import pytest import pytest
from WorkCase import CaseBase from WorkCase import CaseBase
from WorkCase.APP import AppBase
from WorkUtils.UtilsLog import UtilsLog from WorkUtils.UtilsLog import UtilsLog
from WorkUtils.UtilsDataBase import UtilsDataBase from WorkUtils.UtilsDataBase import UtilsDataBase
from WorkUtils.UtilsResponse import UtilsResponse from WorkUtils.UtilsResponse import UtilsResponse
...@@ -37,7 +38,7 @@ class TestHostTypeList(object): ...@@ -37,7 +38,7 @@ class TestHostTypeList(object):
base_id = 10 base_id = 10
base_password = "123456" base_password = "123456"
base_title = "SS自动化设备类型名称" base_title = "SS 自动化专用设备类型"
@classmethod @classmethod
def setup_class(cls): def setup_class(cls):
...@@ -51,67 +52,17 @@ class TestHostTypeList(object): ...@@ -51,67 +52,17 @@ class TestHostTypeList(object):
def setup_method(self): def setup_method(self):
self.log.debug("测试用例执行开始...") self.log.debug("测试用例执行开始...")
self.update_members_del_flag(members_id=self.base_id, value=CaseBase().del_flag["OFF"])
self.update_members_status(members_id=self.base_id, value=CaseBase().status["ON"]) self.app = AppBase(host=self.host)
self.app.update_members_del_flag(session=self.db_session(), members_id=self.base_id, value=CaseBase().del_flag["OFF"])
self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=CaseBase().status["ON"])
self.token = self.app.get_base_token(login_name=self.login_name, base_password=self.base_password)
def teardown_method(self): def teardown_method(self):
self.log.debug("测试用例执行结束...") self.log.debug("测试用例执行结束...")
self.update_members_del_flag(members_id=self.base_id, value=CaseBase().del_flag["OFF"])
self.update_members_status(members_id=self.base_id, value=CaseBase().status["ON"])
@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 -- 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") self.app.update_members_del_flag(session=self.db_session(), members_id=self.base_id, value=CaseBase().del_flag["OFF"])
def update_members_status(self, members_id=None, value=None): self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=CaseBase().status["ON"])
session = self.db_session()
sql = DataMembers().update_status(session=session, _id=members_id, value=value)
return sql
@allure.step("调用接口:hosttype.create")
def hostType_create(self, token=None, title=None, parentId=None, templateIds=None, interfaces=None, description=None,
sortid=None):
api = HostTypeCreate(_host=self.host)
api.token = token
api.title = title
api.parentId = parentId
api.templateIds = templateIds
api.interfaces = interfaces
api.description = description
api.sortid = sortid
api.get_response()
return api.response
@allure.step("调用接口:hosttype.list")
def hostType_list(self, token=None, parentId=None):
api = HostTypeList(_host=self.host)
api.token = token
api.parentId = parentId
api.get_response()
return api.response
@allure.step("创建测试数据")
def case_create(self, num, parentId, description):
self.title = self.base_title + num
response = self.hostType_create(token=self.token, title=self.title, parentId=parentId, description=description)
self.host_type_id = UtilsResponse().get_data(response=response)
return self.host_type_id
@allure.step("获取token")
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") @allure.step("连接数据库:Argus")
def db_session(self): def db_session(self):
...@@ -133,58 +84,44 @@ class TestHostTypeList(object): ...@@ -133,58 +84,44 @@ class TestHostTypeList(object):
assert y.parent_id == w["parentId"] assert y.parent_id == w["parentId"]
assert w["parentId"] == parent_id assert w["parentId"] == parent_id
@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("hosttype.list:token未传") @allure.title("hosttype.list:token未传")
@allure.story("查询设备类型:token未传") @allure.story("查询设备类型:token未传")
@allure.severity("blocker") @allure.severity("blocker")
@pytest.mark.skip(reason="此接口未加入token验证") @pytest.mark.skip(reason="此接口未加入token验证")
def test_case_01(self): def test_case_01(self):
self.get_base_token() response = self.app.hostType_list()
self.app.check_code(response=response, code=2001)
response = self.hostType_list() self.app.check_msg(response=response, msg="无token,请重新登录")
self.check_code(response=response, code=2001)
self.check_msg(response=response, msg="无token,请重新登录")
@allure.title("hosttype.list:token的用户已删除") @allure.title("hosttype.list:token的用户已删除")
@allure.story("查询设备类型:token的用户已删除") @allure.story("查询设备类型:token的用户已删除")
@allure.severity("blocker") @allure.severity("blocker")
@pytest.mark.skip(reason="此接口未加入token验证") @pytest.mark.skip(reason="此接口未加入token验证")
def test_case_02(self): def test_case_02(self):
self.get_base_token() self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=CaseBase().del_flag["ON"])
self.update_members_del_flag(members_id=self.base_id, value=CaseBase().del_flag["ON"]) response = self.app.hostType_list(token=self.token)
response = self.hostType_list(token=self.token) self.app.check_code(response=response, code=2004)
self.check_code(response=response, code=2004) self.app.check_msg(response=response, msg="用户不存在")
self.check_msg(response=response, msg="用户不存在")
@allure.title("hosttype.list:token的用户已禁用") @allure.title("hosttype.list:token的用户已禁用")
@allure.story("查询设备类型:token的用户已禁用") @allure.story("查询设备类型:token的用户已禁用")
@allure.severity("blocker") @allure.severity("blocker")
@pytest.mark.skip(reason="此接口未加入token验证") @pytest.mark.skip(reason="此接口未加入token验证")
def test_case_03(self): def test_case_03(self):
self.get_base_token() self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=CaseBase().status["OFF"])
self.update_members_status(members_id=self.base_id, value=CaseBase().status["OFF"]) response = self.app.hostType_list(token=self.token)
response = self.hostType_list(token=self.token) self.app.check_code(response=response, code=2003)
self.check_code(response=response, code=2003) self.app.check_msg(response=response, msg="账户已被禁用")
self.check_msg(response=response, msg="账户已被禁用")
@allure.title("hosttype.list:parentId成功查询") @allure.title("hosttype.list:parentId成功查询")
@allure.story("查询设备类型:parentId成功查询") @allure.story("查询设备类型:parentId成功查询")
@allure.severity("blocker") @allure.severity("blocker")
def test_case_04(self): def test_case_04(self):
self.get_base_token() title = self.base_title + "04"
self.case_create(num="04", parentId=998, description=None) self.app.case_create_hostType(title=title, parentId=998, description=None)
response = self.hostType_list(token=self.token, parentId=998) response = self.app.hostType_list(token=self.token, parentId=998)
self.check_code(response=response, code=0) self.app.check_code(response=response, code=0)
self.check_select(response=response, parent_id=998) self.check_select(response=response, parent_id=998)
......
...@@ -9,6 +9,7 @@ from __future__ import division ...@@ -9,6 +9,7 @@ from __future__ import division
import pytest import pytest
from WorkCase import CaseBase from WorkCase import CaseBase
from WorkCase.APP import AppBase
from WorkUtils.UtilsLog import UtilsLog from WorkUtils.UtilsLog import UtilsLog
from WorkUtils.UtilsDataBase import UtilsDataBase from WorkUtils.UtilsDataBase import UtilsDataBase
from WorkUtils.UtilsResponse import UtilsResponse from WorkUtils.UtilsResponse import UtilsResponse
...@@ -50,59 +51,17 @@ class TestHostTypeTree(object): ...@@ -50,59 +51,17 @@ class TestHostTypeTree(object):
def setup_method(self): def setup_method(self):
self.log.debug("测试用例执行开始...") self.log.debug("测试用例执行开始...")
self.update_members_del_flag(members_id=self.base_id, value=CaseBase().del_flag["OFF"])
self.update_members_status(members_id=self.base_id, value=CaseBase().status["ON"]) self.app = AppBase(host=self.host)
self.app.update_members_del_flag(session=self.db_session(), members_id=self.base_id, value=CaseBase().del_flag["OFF"])
self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=CaseBase().status["ON"])
self.token = self.app.get_base_token(login_name=self.login_name, base_password=self.base_password)
def teardown_method(self): def teardown_method(self):
self.log.debug("测试用例执行结束...") self.log.debug("测试用例执行结束...")
self.update_members_del_flag(members_id=self.base_id, value=CaseBase().del_flag["OFF"])
self.update_members_status(members_id=self.base_id, value=CaseBase().status["ON"])
@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 -- 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") self.app.update_members_del_flag(session=self.db_session(), members_id=self.base_id, value=CaseBase().del_flag["OFF"])
def update_members_status(self, members_id=None, value=None): self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=CaseBase().status["ON"])
session = self.db_session()
sql = DataMembers().update_status(session=session, _id=members_id, value=value)
return sql
@allure.step("调用接口:hosttype.create")
def hostType_create(self, token=None, title=None, parentId=None, templateIds=None, interfaces=None, description=None,
sortid=None):
api = HostTypeCreate(_host=self.host)
api.token = token
api.title = title
api.parentId = parentId
api.templateIds = templateIds
api.interfaces = interfaces
api.description = description
api.sortid = sortid
api.get_response()
return api.response
@allure.step("调用接口:hosttype.tree")
def hostType_tree(self, token=None):
api = HostTypeTree(_host=self.host)
api.token = token
api.get_response()
return api.response
@allure.step("获取token")
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") @allure.step("连接数据库:Argus")
def db_session(self): def db_session(self):
...@@ -120,7 +79,7 @@ class TestHostTypeTree(object): ...@@ -120,7 +79,7 @@ class TestHostTypeTree(object):
data = UtilsResponse().get_data(response=response) data = UtilsResponse().get_data(response=response)
for q, w in enumerate(data): for q, w in enumerate(data):
if w["id"] == 120: if w["id"] == 120:
assert w["title"] == "SS设备" assert w["title"] == "标准网络设备"
ids = [] ids = []
# 校验2个集合 # 校验2个集合
for x, y in enumerate(w["children"]): for x, y in enumerate(w["children"]):
...@@ -130,56 +89,41 @@ class TestHostTypeTree(object): ...@@ -130,56 +89,41 @@ class TestHostTypeTree(object):
for x, y in enumerate([self.base_type_id_1, self.base_type_id_2]): for x, y in enumerate([self.base_type_id_1, self.base_type_id_2]):
assert y in ids assert y in ids
@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("hosttype.tree:token未传") @allure.title("hosttype.tree:token未传")
@allure.story("查询资产类型树:token未传") @allure.story("查询资产类型树:token未传")
@allure.severity("blocker") @allure.severity("blocker")
@pytest.mark.skip(reason="此接口未加入token验证") @pytest.mark.skip(reason="此接口未加入token验证")
def test_case_01(self): def test_case_01(self):
self.get_base_token() response = self.app.hostType_tree()
self.app.check_code(response=response, code=2001)
response = self.hostType_tree() self.app.check_msg(response=response, msg="无token,请重新登录")
self.check_code(response=response, code=2001)
self.check_msg(response=response, msg="无token,请重新登录")
@allure.title("hosttype.tree:token的用户已删除") @allure.title("hosttype.tree:token的用户已删除")
@allure.story("查询资产类型树:token的用户已删除") @allure.story("查询资产类型树:token的用户已删除")
@allure.severity("blocker") @allure.severity("blocker")
@pytest.mark.skip(reason="此接口未加入token验证") @pytest.mark.skip(reason="此接口未加入token验证")
def test_case_02(self): def test_case_02(self):
self.get_base_token() self.app.update_members_del_flag(session=self.db_session(), members_id=self.base_id, value=CaseBase().del_flag["ON"])
self.update_members_del_flag(members_id=self.base_id, value=CaseBase().del_flag["ON"]) response = self.app.hostType_tree(token=self.token)
response = self.hostType_tree(token=self.token) self.app.check_code(response=response, code=2004)
self.check_code(response=response, code=2004) self.app.check_msg(response=response, msg="用户不存在")
self.check_msg(response=response, msg="用户不存在")
@allure.title("hosttype.tree:token的用户已禁用") @allure.title("hosttype.tree:token的用户已禁用")
@allure.story("查询资产类型树:token的用户已禁用") @allure.story("查询资产类型树:token的用户已禁用")
@allure.severity("blocker") @allure.severity("blocker")
@pytest.mark.skip(reason="此接口未加入token验证") @pytest.mark.skip(reason="此接口未加入token验证")
def test_case_03(self): def test_case_03(self):
self.get_base_token() self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=CaseBase().status["OFF"])
self.update_members_status(members_id=self.base_id, value=CaseBase().status["OFF"]) response = self.app.hostType_tree(token=self.token)
response = self.hostType_tree(token=self.token) self.app.check_code(response=response, code=2003)
self.check_code(response=response, code=2003) self.app.check_msg(response=response, msg="账户已被禁用")
self.check_msg(response=response, msg="账户已被禁用")
@allure.title("hosttype.tree:无参数调用") @allure.title("hosttype.tree:无参数调用")
@allure.story("查询资产类型树:无参数调用") @allure.story("查询资产类型树:无参数调用")
@allure.severity("blocker") @allure.severity("blocker")
def test_case_04(self): def test_case_04(self):
self.get_base_token() response = self.app.hostType_tree(token=self.token)
response = self.hostType_tree(token=self.token) self.app.check_code(response=response, code=0)
self.check_code(response=response, code=0)
self.check_data(response=response) self.check_data(response=response)
......
...@@ -7,6 +7,7 @@ ...@@ -7,6 +7,7 @@
from __future__ import division from __future__ import division
from WorkCase import CaseBase from WorkCase import CaseBase
from WorkCase.APP import AppBase
from WorkUtils.UtilsLog import UtilsLog from WorkUtils.UtilsLog import UtilsLog
from WorkUtils.UtilsDataBase import UtilsDataBase from WorkUtils.UtilsDataBase import UtilsDataBase
from WorkUtils.UtilsResponse import UtilsResponse from WorkUtils.UtilsResponse import UtilsResponse
...@@ -35,7 +36,7 @@ class TestHostTypeUpdate(object): ...@@ -35,7 +36,7 @@ class TestHostTypeUpdate(object):
base_id = 10 base_id = 10
base_password = "123456" base_password = "123456"
base_title = "SS自动化设备类型名称" base_title = "SS 自动化专用设备类型"
@classmethod @classmethod
def setup_class(cls): def setup_class(cls):
...@@ -49,74 +50,17 @@ class TestHostTypeUpdate(object): ...@@ -49,74 +50,17 @@ class TestHostTypeUpdate(object):
def setup_method(self): def setup_method(self):
self.log.debug("测试用例执行开始...") self.log.debug("测试用例执行开始...")
self.update_members_del_flag(members_id=self.base_id, value=CaseBase().del_flag["OFF"])
self.update_members_status(members_id=self.base_id, value=CaseBase().status["ON"]) self.app = AppBase(host=self.host)
self.app.update_members_del_flag(session=self.db_session(), members_id=self.base_id, value=CaseBase().del_flag["OFF"])
self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=CaseBase().status["ON"])
self.token = self.app.get_base_token(login_name=self.login_name, base_password=self.base_password)
def teardown_method(self): def teardown_method(self):
self.log.debug("测试用例执行结束...") self.log.debug("测试用例执行结束...")
self.update_members_del_flag(members_id=self.base_id, value=CaseBase().del_flag["OFF"])
self.update_members_status(members_id=self.base_id, value=CaseBase().status["ON"])
@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 -- 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") self.app.update_members_del_flag(session=self.db_session(), members_id=self.base_id, value=CaseBase().del_flag["OFF"])
def update_members_status(self, members_id=None, value=None): self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=CaseBase().status["ON"])
session = self.db_session()
sql = DataMembers().update_status(session=session, _id=members_id, value=value)
return sql
@allure.step("调用接口:hosttype.create")
def hostType_create(self, token=None, title=None, parentId=None, templateIds=None, interfaces=None, description=None,
sortid=None):
api = HostTypeCreate(_host=self.host)
api.token = token
api.title = title
api.parentId = parentId
api.templateIds = templateIds
api.interfaces = interfaces
api.description = description
api.sortid = sortid
api.get_response()
return api.response
@allure.step("调用接口:hosttype.update")
def hostType_update(self, token=None, _id=None, title=None, parentId=None, templateIds=None, interfaces=None, description=None,
sortid=None):
api = HostTypeUpdate(_host=self.host)
api.token = token
api.id = _id
api.title = title
api.parentId = parentId
api.templateIds = templateIds
api.interfaces = interfaces
api.description = description
api.sortid = sortid
api.get_response()
return api.response
@allure.step("创建测试数据")
def case_create(self, num, parentId, description):
self.title = self.base_title + num
response = self.hostType_create(token=self.token, title=self.title, parentId=parentId, description=description)
self.host_type_id = UtilsResponse().get_data(response=response)
return self.host_type_id
@allure.step("获取token")
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") @allure.step("连接数据库:Argus")
def db_session(self): def db_session(self):
...@@ -133,6 +77,7 @@ class TestHostTypeUpdate(object): ...@@ -133,6 +77,7 @@ class TestHostTypeUpdate(object):
def check_select(self, response, title, parent_id, template_ids, interfaces, description, sortid): def check_select(self, response, title, parent_id, template_ids, interfaces, description, sortid):
data = UtilsResponse().get_data(response=response) data = UtilsResponse().get_data(response=response)
sql = self.select_hosttype(_id=data) sql = self.select_hosttype(_id=data)
assert sql != []
for x, y in enumerate(sql): for x, y in enumerate(sql):
assert y.title == title assert y.title == title
assert y.parent_id == parent_id assert y.parent_id == parent_id
...@@ -142,67 +87,53 @@ class TestHostTypeUpdate(object): ...@@ -142,67 +87,53 @@ class TestHostTypeUpdate(object):
assert y.sortid == sortid assert y.sortid == sortid
assert x == 0 assert x == 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("hosttype.update:token未传") @allure.title("hosttype.update:token未传")
@allure.story("更新设备类型:token未传") @allure.story("更新设备类型:token未传")
@allure.severity("blocker") @allure.severity("blocker")
def test_case_01(self): def test_case_01(self):
self.get_base_token() response = self.app.hostType_update()
self.app.check_code(response=response, code=2001)
response = self.hostType_update() self.app.check_msg(response=response, msg="无token,请重新登录")
self.check_code(response=response, code=2001)
self.check_msg(response=response, msg="无token,请重新登录")
@allure.title("hosttype.update:token的用户已删除") @allure.title("hosttype.update:token的用户已删除")
@allure.story("更新设备类型:token的用户已删除") @allure.story("更新设备类型:token的用户已删除")
@allure.severity("blocker") @allure.severity("blocker")
def test_case_02(self): def test_case_02(self):
self.get_base_token() self.app.update_members_del_flag(session=self.db_session(), members_id=self.base_id, value=CaseBase().del_flag["ON"])
self.update_members_del_flag(members_id=self.base_id, value=CaseBase().del_flag["ON"]) response = self.app.hostType_update(token=self.token)
response = self.hostType_update(token=self.token) self.app.check_code(response=response, code=2004)
self.check_code(response=response, code=2004) self.app.check_msg(response=response, msg="用户不存在")
self.check_msg(response=response, msg="用户不存在")
@allure.title("hosttype.update:token的用户已禁用") @allure.title("hosttype.update:token的用户已禁用")
@allure.story("更新设备类型:token的用户已禁用") @allure.story("更新设备类型:token的用户已禁用")
@allure.severity("blocker") @allure.severity("blocker")
def test_case_03(self): def test_case_03(self):
self.get_base_token() self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=CaseBase().status["OFF"])
self.update_members_status(members_id=self.base_id, value=CaseBase().status["OFF"]) response = self.app.hostType_update(token=self.token)
response = self.hostType_update(token=self.token) self.app.check_code(response=response, code=2003)
self.check_code(response=response, code=2003) self.app.check_msg(response=response, msg="账户已被禁用")
self.check_msg(response=response, msg="账户已被禁用")
@allure.title("hosttype.update:修改所有字段") @allure.title("hosttype.update:修改所有字段")
@allure.story("更新设备类型:修改所有字段") @allure.story("更新设备类型:修改所有字段")
@allure.severity("blocker") @allure.severity("blocker")
def test_case_04(self): def test_case_04(self):
self.get_base_token() title = self.base_title + "04"
self.case_create(num="04", parentId=0, description=None) host_type_id = self.app.case_create_hostType(title=title, parentId=0, description=None)
response = self.hostType_update(token=self.token, _id=self.host_type_id, title=self.title + "修改", parentId=1, templateIds="templateIds", response = self.app.hostType_update(token=self.token, _id=host_type_id, title=title + "修改", parentId=1, templateIds="templateIds",
interfaces="interfaces", description="description", sortid=999) interfaces="interfaces", description="description", sortid=999)
self.check_code(response=response, code=0) self.app.check_code(response=response, code=0)
self.check_select(response=response, title=self.title + "修改", parent_id=1, template_ids="templateIds", self.check_select(response=response, title=title + "修改", parent_id=1, template_ids="templateIds",
interfaces="interfaces", description="description", sortid=999) interfaces="interfaces", description="description", sortid=999)
@allure.title("hosttype.update:id为空,返回异常") @allure.title("hosttype.update:id为空,返回异常")
@allure.story("更新设备类型:id为空,返回异常") @allure.story("更新设备类型:id为空,返回异常")
def test_case_05(self): def test_case_05(self):
self.get_base_token() title = self.base_title + "05"
self.case_create(num="05", parentId=1, description=None) self.app.case_create_hostType(title=title, parentId=1, description=None)
response = self.hostType_update(token=self.token) response = self.app.hostType_update(token=self.token)
self.check_code(response=response, code=100) self.app.check_code(response=response, code=100)
if __name__ == "__main__": if __name__ == "__main__":
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment