Commit 04ece5f5 by sanshi

整个地址簿代码重构

parent 527fcdbb
...@@ -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 WorkData.Zabbix.drules import DataDrules from WorkData.Zabbix.drules import DataDrules
from WorkUtils.UtilsLog import UtilsLog from WorkUtils.UtilsLog import UtilsLog
from WorkUtils.UtilsDataBase import UtilsDataBase from WorkUtils.UtilsDataBase import UtilsDataBase
...@@ -36,7 +37,7 @@ class TestAddressBookCreate(object): ...@@ -36,7 +37,7 @@ class TestAddressBookCreate(object):
base_id = 10 base_id = 10
base_password = "123456" base_password = "123456"
base_name = "SS自动化测试地址簿-创建" base_name = "SS 自动化专用地址簿"
base_iplist = "192.168.0.1-254" base_iplist = "192.168.0.1-254"
@classmethod @classmethod
...@@ -54,49 +55,17 @@ class TestAddressBookCreate(object): ...@@ -54,49 +55,17 @@ class TestAddressBookCreate(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")
def update_members_status(self, members_id=None, value=None):
session = self.db_session()
sql = DataMembers().update_status(session=session, _id=members_id, value=value)
return sql
@allure.step("调用接口:addressbook.create") self.app.update_members_del_flag(session=self.db_session(), members_id=self.base_id, value=CaseBase().del_flag["OFF"])
def addressbook_create(self, token=None, name=None, iplist=None, available=None, delay=None): self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=CaseBase().status["ON"])
api = AddressBookCreate(_host=self.host)
api.token = token
api.name = name
api.iplist = iplist
api.available = available
api.delay = delay
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):
...@@ -139,68 +108,50 @@ class TestAddressBookCreate(object): ...@@ -139,68 +108,50 @@ class TestAddressBookCreate(object):
assert x == 0 assert x == 0
assert sql_r != [] assert sql_r != []
@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("addressbook.create:token未传") @allure.title("addressbook.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.addressbook_create()
self.app.check_code(response=response, code=2001)
response = self.addressbook_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("addressbook.create:token的用户已删除") @allure.title("addressbook.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.addressbook_create(token=self.token)
response = self.addressbook_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("addressbook.create:token的用户已禁用") @allure.title("addressbook.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.addressbook_create(token=self.token)
response = self.addressbook_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("addressbook.create:创建可用地址簿") @allure.title("addressbook.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()
name = self.base_name + "04" name = self.base_name + "04"
response = self.addressbook_create(token=self.token, name=name, iplist=self.base_iplist, available=CaseBase().available["ON"], response = self.app.addressbook_create(token=self.token, name=name, iplist=self.base_iplist,
delay="1h") available=CaseBase().available["ON"], delay="1h")
self.check_code(response=response, code=0) self.app.check_code(response=response, code=0)
self.check_select(response=response, name=name, available=CaseBase().available["ON"]) self.check_select(response=response, name=name, available=CaseBase().available["ON"])
@allure.title("addressbook.create:创建禁用地址簿") @allure.title("addressbook.create:创建禁用地址簿")
@allure.story("创建地址簿:创建禁用地址簿") @allure.story("创建地址簿:创建禁用地址簿")
@allure.severity("blocker") @allure.severity("blocker")
def test_case_05(self): def test_case_05(self):
self.get_base_token()
name = self.base_name + "05" name = self.base_name + "05"
response = self.addressbook_create(token=self.token, name=name, iplist=self.base_iplist, available=CaseBase().available["OFF"], response = self.app.addressbook_create(token=self.token, name=name, iplist=self.base_iplist,
delay="1h") available=CaseBase().available["OFF"], delay="1h")
self.check_code(response=response, code=0) self.app.check_code(response=response, code=0)
self.check_select(response=response, name=name, available=CaseBase().available["OFF"]) self.check_select(response=response, name=name, available=CaseBase().available["OFF"])
......
...@@ -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
...@@ -38,7 +39,7 @@ class TestAddressBookDelete(object): ...@@ -38,7 +39,7 @@ class TestAddressBookDelete(object):
base_id = 10 base_id = 10
base_password = "123456" base_password = "123456"
base_name = "SS自动化测试地址簿-删除" base_name = "SS 自动化专用地址簿"
base_iplist = "192.168.1.1-254" base_iplist = "192.168.1.1-254"
@classmethod @classmethod
...@@ -56,57 +57,17 @@ class TestAddressBookDelete(object): ...@@ -56,57 +57,17 @@ class TestAddressBookDelete(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")
def update_members_status(self, members_id=None, value=None):
session = self.db_session()
sql = DataMembers().update_status(session=session, _id=members_id, value=value)
return sql
@allure.step("调用接口:addressbook.create") self.app.update_members_del_flag(session=self.db_session(), members_id=self.base_id, value=CaseBase().del_flag["OFF"])
def addressbook_create(self, token=None, name=None, iplist=None, available=None, delay=None): self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=CaseBase().status["ON"])
api = AddressBookCreate(_host=self.host)
api.token = token
api.name = name
api.iplist = iplist
api.available = available
api.delay = delay
api.get_response()
return api.response
@allure.step("调用接口:addressbook.delete")
def addressbook_delete(self, token=None, bookids=None):
api = AddressBookDelete(_host=self.host)
api.token = token
api.bookids = bookids
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):
...@@ -131,85 +92,65 @@ class TestAddressBookDelete(object): ...@@ -131,85 +92,65 @@ class TestAddressBookDelete(object):
return sql return sql
@allure.step("校验查询结果") @allure.step("校验查询结果")
def check_select(self, bookid): def check_select(self, bookid, name):
sql = self.select_address_book(address_id=bookid) sql = self.select_address_book(address_id=bookid)
assert sql == [] assert sql == []
sql_r = self.select_drule(name=self.name) sql_r = self.select_drule(name=name)
assert sql_r == [] assert sql_r == []
@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 case_create(self, num, available):
self.name = self.base_name + num
response = self.addressbook_create(token=self.token, name=self.name, iplist=self.base_iplist, available=available, delay="1h")
self.check_code(response=response, code=0)
self.address_id = UtilsResponse().get_data(response=response)
return self.address_id
@allure.title("addressbook.delete:token未传") @allure.title("addressbook.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.addressbook_delete()
self.app.check_code(response=response, code=2001)
response = self.addressbook_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("addressbook.delete:token的用户已删除") @allure.title("addressbook.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.addressbook_delete(token=self.token)
response = self.addressbook_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("addressbook.delete:token的用户已禁用") @allure.title("addressbook.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.addressbook_delete(token=self.token)
response = self.addressbook_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("addressbook.delete:删除一个") @allure.title("addressbook.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() name = self.base_name + "04"
bookid_1 = self.case_create(num="04", available=0) bookid_1 = self.app.case_create_addressbook(name=name, iplist=self.base_iplist, available=CaseBase().available["ON"])
response = self.addressbook_delete(token=self.token, bookids=[bookid_1]) response = self.app.addressbook_delete(token=self.token, bookids=[bookid_1])
self.check_code(response=response, code=0) self.app.check_code(response=response, code=0)
self.check_select(bookid=bookid_1) self.check_select(bookid=bookid_1, name=name)
@allure.title("addressbook.delete:删除多个") @allure.title("addressbook.delete:删除多个")
@allure.story("删除地址簿:删除多个") @allure.story("删除地址簿:删除多个")
def test_case_05(self): def test_case_05(self):
self.get_base_token() name_1 = self.base_name + "051"
bookid_1 = self.case_create(num="051", available=0) name_2 = self.base_name + "052"
bookid_2 = self.case_create(num="052", available=0) name_3 = self.base_name + "053"
bookid_3 = self.case_create(num="053", available=0) bookid_1 = self.app.case_create_addressbook(name=name_1, iplist=self.base_iplist, available=CaseBase().available["ON"])
bookid_2 = self.app.case_create_addressbook(name=name_2, iplist=self.base_iplist, available=CaseBase().available["ON"])
response = self.addressbook_delete(token=self.token, bookids=[bookid_1, bookid_2, bookid_3]) bookid_3 = self.app.case_create_addressbook(name=name_3, iplist=self.base_iplist, available=CaseBase().available["ON"])
self.check_code(response=response, code=0)
self.check_select(bookid=bookid_1) response = self.app.addressbook_delete(token=self.token, bookids=[bookid_1, bookid_2, bookid_3])
self.check_select(bookid=bookid_2) self.app.check_code(response=response, code=0)
self.check_select(bookid=bookid_3) self.check_select(bookid=bookid_1, name=name_1)
self.check_select(bookid=bookid_2, name=name_2)
self.check_select(bookid=bookid_3, name=name_3)
if __name__ == "__main__": if __name__ == "__main__":
......
...@@ -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
...@@ -38,7 +39,7 @@ class TestAddressBookDisabled(object): ...@@ -38,7 +39,7 @@ class TestAddressBookDisabled(object):
base_id = 10 base_id = 10
base_password = "123456" base_password = "123456"
base_name = "SS自动化测试地址簿-禁用" base_name = "SS 自动化专用地址簿"
base_iplist = "192.168.6.1-254" base_iplist = "192.168.6.1-254"
@classmethod @classmethod
...@@ -56,57 +57,17 @@ class TestAddressBookDisabled(object): ...@@ -56,57 +57,17 @@ class TestAddressBookDisabled(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")
def update_members_status(self, members_id=None, value=None):
session = self.db_session()
sql = DataMembers().update_status(session=session, _id=members_id, value=value)
return sql
@allure.step("调用接口:addressbook.create") self.app.update_members_del_flag(session=self.db_session(), members_id=self.base_id, value=CaseBase().del_flag["OFF"])
def addressbook_create(self, token=None, name=None, iplist=None, available=None, delay=None): self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=CaseBase().status["ON"])
api = AddressBookCreate(_host=self.host)
api.token = token
api.name = name
api.iplist = iplist
api.available = available
api.delay = delay
api.get_response()
return api.response
@allure.step("调用接口:addressbook.disable")
def addressbook_disabled(self, token=None, bookids=None):
api = AddressBookDisabled(_host=self.host)
api.token = token
api.bookids = bookids
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):
...@@ -148,78 +109,58 @@ class TestAddressBookDisabled(object): ...@@ -148,78 +109,58 @@ class TestAddressBookDisabled(object):
assert x == 0 assert x == 0
assert sql_r != [] assert sql_r != []
@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 case_create(self, num, available):
self.name = self.base_name + num
response = self.addressbook_create(token=self.token, name=self.name, iplist=self.base_iplist, available=available, delay="1h")
self.check_code(response=response, code=0)
self.address_id = UtilsResponse().get_data(response=response)
return self.address_id
@allure.title("addressbook.disabled:token未传") @allure.title("addressbook.disabled: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.addressbook_disabled()
self.app.check_code(response=response, code=2001)
response = self.addressbook_disabled() self.app.check_msg(response=response, msg="无token,请重新登录")
self.check_code(response=response, code=2001)
self.check_msg(response=response, msg="无token,请重新登录")
@allure.title("addressbook.disabled:token的用户已删除") @allure.title("addressbook.disabled: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.addressbook_disabled(token=self.token)
response = self.addressbook_disabled(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("addressbook.disabled:token的用户已禁用") @allure.title("addressbook.disabled: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.addressbook_disabled(token=self.token)
response = self.addressbook_disabled(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("addressbook.disabled:禁用一个") @allure.title("addressbook.disabled:禁用一个")
@allure.story("禁用地址簿:禁用一个") @allure.story("禁用地址簿:禁用一个")
@allure.severity("blocker") @allure.severity("blocker")
def test_case_04(self): def test_case_04(self):
self.get_base_token() name = self.base_name + "04"
bookid_1 = self.case_create(num="04", available=0) bookid_1 = self.app.case_create_addressbook(name=name, iplist=self.base_iplist, available=CaseBase().available["ON"])
response = self.addressbook_disabled(token=self.token, bookids=[bookid_1]) response = self.app.addressbook_disabled(token=self.token, bookids=[bookid_1])
self.check_code(response=response, code=0) self.app.check_code(response=response, code=0)
self.check_select(bookid=bookid_1, available=1) self.check_select(bookid=bookid_1, available=CaseBase().available["OFF"])
@allure.title("addressbook.disabled:禁用多个") @allure.title("addressbook.disabled:禁用多个")
@allure.story("禁用地址簿:禁用多个") @allure.story("禁用地址簿:禁用多个")
def test_case_05(self): def test_case_05(self):
self.get_base_token() name_1 = self.base_name + "051"
bookid_1 = self.case_create(num="051", available=0) name_2 = self.base_name + "052"
bookid_2 = self.case_create(num="052", available=0) name_3 = self.base_name + "053"
bookid_3 = self.case_create(num="053", available=0) bookid_1 = self.app.case_create_addressbook(name=name_1, iplist=self.base_iplist, available=CaseBase().available["ON"])
bookid_2 = self.app.case_create_addressbook(name=name_2, iplist=self.base_iplist, available=CaseBase().available["ON"])
response = self.addressbook_disabled(token=self.token, bookids=[bookid_1, bookid_2, bookid_3]) bookid_3 = self.app.case_create_addressbook(name=name_3, iplist=self.base_iplist, available=CaseBase().available["ON"])
self.check_code(response=response, code=0)
self.check_select(bookid=bookid_1, available=1) response = self.app.addressbook_disabled(token=self.token, bookids=[bookid_1, bookid_2, bookid_3])
self.check_select(bookid=bookid_2, available=1) self.app.check_code(response=response, code=0)
self.check_select(bookid=bookid_3, available=1) self.check_select(bookid=bookid_1, available=CaseBase().available["OFF"])
self.check_select(bookid=bookid_2, available=CaseBase().available["OFF"])
self.check_select(bookid=bookid_3, available=CaseBase().available["OFF"])
if __name__ == "__main__": if __name__ == "__main__":
......
...@@ -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
...@@ -38,7 +39,7 @@ class TestAddressBookEnable(object): ...@@ -38,7 +39,7 @@ class TestAddressBookEnable(object):
base_id = 10 base_id = 10
base_password = "123456" base_password = "123456"
base_name = "SS自动化测试地址簿-启用" base_name = "SS 自动化专用地址簿"
base_iplist = "192.168.5.1-254" base_iplist = "192.168.5.1-254"
@classmethod @classmethod
...@@ -56,57 +57,17 @@ class TestAddressBookEnable(object): ...@@ -56,57 +57,17 @@ class TestAddressBookEnable(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")
def update_members_status(self, members_id=None, value=None):
session = self.db_session()
sql = DataMembers().update_status(session=session, _id=members_id, value=value)
return sql
@allure.step("调用接口:addressbook.create") self.app.update_members_del_flag(session=self.db_session(), members_id=self.base_id, value=CaseBase().del_flag["OFF"])
def addressbook_create(self, token=None, name=None, iplist=None, available=None, delay=None): self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=CaseBase().status["ON"])
api = AddressBookCreate(_host=self.host)
api.token = token
api.name = name
api.iplist = iplist
api.available = available
api.delay = delay
api.get_response()
return api.response
@allure.step("调用接口:addressbook.enable")
def addressbook_enabled(self, token=None, bookids=None):
api = AddressBookEnabled(_host=self.host)
api.token = token
api.bookids = bookids
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):
...@@ -148,78 +109,58 @@ class TestAddressBookEnable(object): ...@@ -148,78 +109,58 @@ class TestAddressBookEnable(object):
assert x == 0 assert x == 0
assert sql_r != [] assert sql_r != []
@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 case_create(self, num, available):
self.name = self.base_name + num
response = self.addressbook_create(token=self.token, name=self.name, iplist=self.base_iplist, available=available, delay="1h")
self.check_code(response=response, code=0)
self.address_id = UtilsResponse().get_data(response=response)
return self.address_id
@allure.title("addressbook.enabled:token未传") @allure.title("addressbook.enabled: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.addressbook_enabled()
self.app.check_code(response=response, code=2001)
response = self.addressbook_enabled() self.app.check_msg(response=response, msg="无token,请重新登录")
self.check_code(response=response, code=2001)
self.check_msg(response=response, msg="无token,请重新登录")
@allure.title("addressbook.enabled:token的用户已删除") @allure.title("addressbook.enabled: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.addressbook_enabled(token=self.token)
response = self.addressbook_enabled(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("addressbook.enabled:token的用户已禁用") @allure.title("addressbook.enabled: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.addressbook_enabled(token=self.token)
response = self.addressbook_enabled(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("addressbook.enabled:启用一个") @allure.title("addressbook.enabled:启用一个")
@allure.story("启用地址簿:启用一个") @allure.story("启用地址簿:启用一个")
@allure.severity("blocker") @allure.severity("blocker")
def test_case_04(self): def test_case_04(self):
self.get_base_token() name = self.base_name + "04"
bookid_1 = self.case_create(num="04", available=1) bookid_1 = self.app.case_create_addressbook(name=name, iplist=self.base_iplist, available=CaseBase().available["OFF"])
response = self.addressbook_enabled(token=self.token, bookids=[bookid_1]) response = self.app.addressbook_enabled(token=self.token, bookids=[bookid_1])
self.check_code(response=response, code=0) self.app.check_code(response=response, code=0)
self.check_select(bookid=bookid_1, available=0) self.check_select(bookid=bookid_1, available=CaseBase().available["ON"])
@allure.title("addressbook.enabled:启用多个") @allure.title("addressbook.enabled:启用多个")
@allure.story("启用地址簿:启用多个") @allure.story("启用地址簿:启用多个")
def test_case_05(self): def test_case_05(self):
self.get_base_token() name_1 = self.base_name + "051"
bookid_1 = self.case_create(num="051", available=1) name_2 = self.base_name + "052"
bookid_2 = self.case_create(num="052", available=1) name_3 = self.base_name + "053"
bookid_3 = self.case_create(num="053", available=1) bookid_1 = self.app.case_create_addressbook(name=name_1, iplist=self.base_iplist, available=CaseBase().available["OFF"])
bookid_2 = self.app.case_create_addressbook(name=name_2, iplist=self.base_iplist, available=CaseBase().available["OFF"])
response = self.addressbook_enabled(token=self.token, bookids=[bookid_1, bookid_2, bookid_3]) bookid_3 = self.app.case_create_addressbook(name=name_3, iplist=self.base_iplist, available=CaseBase().available["OFF"])
self.check_code(response=response, code=0)
self.check_select(bookid=bookid_1, available=0) response = self.app.addressbook_enabled(token=self.token, bookids=[bookid_1, bookid_2, bookid_3])
self.check_select(bookid=bookid_2, available=0) self.app.check_code(response=response, code=0)
self.check_select(bookid=bookid_3, available=0) self.check_select(bookid=bookid_1, available=CaseBase().available["ON"])
self.check_select(bookid=bookid_2, available=CaseBase().available["ON"])
self.check_select(bookid=bookid_3, available=CaseBase().available["ON"])
if __name__ == "__main__": if __name__ == "__main__":
......
...@@ -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
...@@ -38,8 +39,8 @@ class TestAddressBookGet(object): ...@@ -38,8 +39,8 @@ class TestAddressBookGet(object):
base_id = 10 base_id = 10
base_password = "123456" base_password = "123456"
base_name = "SS自动化测试地址簿-查询" base_name = "SS 自动化专用地址簿"
base_iplist = "192.168.1.1-254" base_iplist = "192.168.5.1-254"
@classmethod @classmethod
def setup_class(cls): def setup_class(cls):
...@@ -56,58 +57,17 @@ class TestAddressBookGet(object): ...@@ -56,58 +57,17 @@ class TestAddressBookGet(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")
def update_members_status(self, members_id=None, value=None):
session = self.db_session()
sql = DataMembers().update_status(session=session, _id=members_id, value=value)
return sql
@allure.step("调用接口:addressbook.create") self.app.update_members_del_flag(session=self.db_session(), members_id=self.base_id, value=CaseBase().del_flag["OFF"])
def addressbook_create(self, token=None, name=None, iplist=None, available=None, delay=None): self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=CaseBase().status["ON"])
api = AddressBookCreate(_host=self.host)
api.token = token
api.name = name
api.iplist = iplist
api.available = available
api.delay = delay
api.get_response()
return api.response
@allure.step("调用接口:addressbook.get")
def addressbook_get(self, token=None, name=None, available=None):
api = AddressBookGet(_host=self.host)
api.token = token
api.name = name
api.available = available
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):
...@@ -151,108 +111,68 @@ class TestAddressBookGet(object): ...@@ -151,108 +111,68 @@ class TestAddressBookGet(object):
assert x == 0 assert x == 0
assert sql_r != [] assert sql_r != []
@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 case_create(self, num, available):
self.name = self.base_name + num
response = self.addressbook_create(token=self.token, name=self.name, iplist=self.base_iplist, available=available, delay="1h")
self.check_code(response=response, code=0)
self.address_id = UtilsResponse().get_data(response=response)
return self.address_id
@allure.title("addressbook.get:token未传") @allure.title("addressbook.get: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.addressbook_get()
self.app.check_code(response=response, code=2001)
response = self.addressbook_get() self.app.check_msg(response=response, msg="无token,请重新登录")
self.check_code(response=response, code=2001)
self.check_msg(response=response, msg="无token,请重新登录")
@allure.title("addressbook.get:token的用户已删除") @allure.title("addressbook.get: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.addressbook_get(token=self.token)
response = self.addressbook_get(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("addressbook.get:token的用户已禁用") @allure.title("addressbook.get: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.addressbook_get(token=self.token)
response = self.addressbook_get(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("addressbook.get:无参数调用") @allure.title("addressbook.get:无参数调用")
@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.addressbook_get(token=self.token)
self.case_create(num="04", available=0) self.app.check_code(response=response, code=0)
response = self.addressbook_get(token=self.token)
self.check_code(response=response, code=0)
@allure.title("addressbook.get:name模糊查询")
@allure.story("查询地址簿:name模糊查询")
def test_case_05(self):
self.get_base_token()
self.case_create(num="05", available=0)
response = self.addressbook_get(token=self.token, name=self.base_name)
self.check_code(response=response, code=0)
self.check_select(response=response)
@allure.title("addressbook.get:name精确查询") @allure.title("addressbook.get:name精确查询")
@allure.story("查询地址簿:name精确查询") @allure.story("查询地址簿:name精确查询")
def test_case_06(self): def test_case_05(self):
self.get_base_token() name = self.base_name + "05"
self.case_create(num="06", available=0) self.app.case_create_addressbook(name=name, iplist=self.base_iplist, available=CaseBase().available["ON"])
response = self.addressbook_get(token=self.token, name=self.name) response = self.app.addressbook_get(token=self.token, name=name)
self.check_code(response=response, code=0) self.app.check_code(response=response, code=0)
self.check_select(response=response) self.app.check_data_keyValue(response=response, _key="name", _value=name)
assert UtilsResponse().get_data(response=response)["list"][0]["id"] == self.address_id
@allure.title("addressbook.get:available=0查询") @allure.title("addressbook.get:available=0查询")
@allure.story("查询地址簿:available=0查询") @allure.story("查询地址簿:available=0查询")
def test_case_07(self): def test_case_06(self):
self.get_base_token() name = self.base_name + "06"
self.case_create(num="07", available=0) self.app.case_create_addressbook(name=name, iplist=self.base_iplist, available=CaseBase().available["ON"])
response = self.addressbook_get(token=self.token, name=self.name, available=0) response = self.app.addressbook_get(token=self.token, available=CaseBase().available["ON"])
self.check_code(response=response, code=0) self.app.check_code(response=response, code=0)
self.check_select(response=response) self.app.check_data_keyValue(response=response, _key="available", _value=CaseBase().available["ON"])
assert UtilsResponse().get_data(response=response)["list"][0]["id"] == self.address_id
assert UtilsResponse().get_data(response=response)["list"][0]["available"] == 0
@allure.title("addressbook.get:available=1查询") @allure.title("addressbook.get:available=1查询")
@allure.story("查询地址簿:available=1查询") @allure.story("查询地址簿:available=1查询")
def test_case_08(self): def test_case_07(self):
self.get_base_token() name = self.base_name + "07"
self.case_create(num="08", available=1) self.app.case_create_addressbook(name=name, iplist=self.base_iplist, available=CaseBase().available["OFF"])
response = self.addressbook_get(token=self.token, name=self.name, available=1) response = self.app.addressbook_get(token=self.token, available=CaseBase().available["OFF"])
self.check_code(response=response, code=0) self.app.check_code(response=response, code=0)
self.check_select(response=response) self.app.check_data_keyValue(response=response, _key="available", _value=CaseBase().available["OFF"])
assert UtilsResponse().get_data(response=response)["list"][0]["id"] == self.address_id
assert UtilsResponse().get_data(response=response)["list"][0]["available"] == 1
if __name__ == "__main__": if __name__ == "__main__":
......
...@@ -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
...@@ -38,7 +39,7 @@ class TestAddressBookUpdate(object): ...@@ -38,7 +39,7 @@ class TestAddressBookUpdate(object):
base_id = 10 base_id = 10
base_password = "123456" base_password = "123456"
base_name = "SS自动化测试地址簿-更新" base_name = "SS 自动化专用地址簿"
base_iplist = "192.168.3.1-254" base_iplist = "192.168.3.1-254"
base_update_iplist = "192.168.4.1-254" base_update_iplist = "192.168.4.1-254"
...@@ -57,60 +58,17 @@ class TestAddressBookUpdate(object): ...@@ -57,60 +58,17 @@ class TestAddressBookUpdate(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")
def update_members_status(self, members_id=None, value=None):
session = self.db_session()
sql = DataMembers().update_status(session=session, _id=members_id, value=value)
return sql
@allure.step("调用接口:addressbook.create") self.app.update_members_del_flag(session=self.db_session(), members_id=self.base_id, value=CaseBase().del_flag["OFF"])
def addressbook_create(self, token=None, name=None, iplist=None, available=None, delay=None): self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=CaseBase().status["ON"])
api = AddressBookCreate(_host=self.host)
api.token = token
api.name = name
api.iplist = iplist
api.available = available
api.delay = delay
api.get_response()
return api.response
@allure.step("调用接口:addressbook.update")
def addressbook_update(self, token=None, bookid=None, name=None, iplist=None, available=None):
api = AddressBookUpdate(_host=self.host)
api.token = token
api.bookid = bookid
api.name = name
api.iplist = iplist
api.available = available
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):
...@@ -135,10 +93,10 @@ class TestAddressBookUpdate(object): ...@@ -135,10 +93,10 @@ class TestAddressBookUpdate(object):
return sql return sql
@allure.step("校验查询结果") @allure.step("校验查询结果")
def check_select(self, address_id, available): def check_select(self, address_id, name, available):
sql = self.select_address_book(address_id=address_id) sql = self.select_address_book(address_id=address_id)
for x, y in enumerate(sql): for x, y in enumerate(sql):
assert y.name == self.name + "修改" assert y.name == name + "修改"
assert y.iplist == self.base_update_iplist assert y.iplist == self.base_update_iplist
assert y.available == available assert y.available == available
assert y.delay == "1h" assert y.delay == "1h"
...@@ -152,94 +110,75 @@ class TestAddressBookUpdate(object): ...@@ -152,94 +110,75 @@ class TestAddressBookUpdate(object):
assert x == 0 assert x == 0
assert sql_r != [] assert sql_r != []
@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 case_create(self, num, available):
self.name = self.base_name + num
response = self.addressbook_create(token=self.token, name=self.name, iplist=self.base_iplist, available=available, delay="1h")
self.check_code(response=response, code=0)
self.address_id = UtilsResponse().get_data(response=response)
return self.address_id
@allure.title("addressbook.update:token未传") @allure.title("addressbook.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.addressbook_update()
self.app.check_code(response=response, code=2001)
response = self.addressbook_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("addressbook.update:token的用户已删除") @allure.title("addressbook.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.addressbook_update(token=self.token)
response = self.addressbook_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("addressbook.update:token的用户已禁用") @allure.title("addressbook.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.addressbook_update(token=self.token)
response = self.addressbook_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("addressbook.update:修改必填字段") @allure.title("addressbook.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() name = self.base_name + "04"
self.case_create(num="04", available=0) bookid_1 = self.app.case_create_addressbook(name=name, iplist=self.base_iplist, available=CaseBase().available["OFF"])
response = self.addressbook_update(token=self.token, bookid=self.address_id, name=self.name + "修改", iplist=self.base_update_iplist,) response = self.app.addressbook_update(token=self.token, bookid=bookid_1, name=name + "修改", iplist=self.base_update_iplist,)
self.check_code(response=response, code=0) self.app.check_code(response=response, code=0)
self.check_select(address_id=self.address_id, available=0) self.check_select(address_id=bookid_1, name=name, available=CaseBase().available["OFF"])
@allure.title("addressbook.update:修改available从0=1") @allure.title("addressbook.update:修改available从启用=禁用")
@allure.story("更新地址簿:name模糊查询") @allure.story("更新地址簿:修改available从启用=禁用")
def test_case_05(self): def test_case_05(self):
self.get_base_token() name = self.base_name + "05"
self.case_create(num="05", available=0) bookid_1 = self.app.case_create_addressbook(name=name, iplist=self.base_iplist, available=CaseBase().available["ON"])
response = self.addressbook_update(token=self.token, bookid=self.address_id, name=self.name + "修改", iplist=self.base_update_iplist, available=1) response = self.app.addressbook_update(token=self.token, bookid=bookid_1, name=name + "修改", iplist=self.base_update_iplist,
self.check_code(response=response, code=0) available=CaseBase().available["OFF"])
self.check_select(address_id=self.address_id, available=1) self.app.check_code(response=response, code=0)
self.check_select(address_id=bookid_1, name=name, available=CaseBase().available["OFF"])
@allure.title("addressbook.update:修改available从1=0") @allure.title("addressbook.update:修改available从禁用=启用")
@allure.story("更新地址簿:name精确查询") @allure.story("更新地址簿:修改available从禁用用=启用")
def test_case_06(self): def test_case_06(self):
self.get_base_token() name = self.base_name + "06"
self.case_create(num="06", available=1) bookid_1 = self.app.case_create_addressbook(name=name, iplist=self.base_iplist, available=CaseBase().available["OFF"])
response = self.addressbook_update(token=self.token, bookid=self.address_id, name=self.name + "修改", iplist=self.base_update_iplist, available=0) response = self.app.addressbook_update(token=self.token, bookid=bookid_1, name=name + "修改", iplist=self.base_update_iplist,
self.check_code(response=response, code=0) available=CaseBase().available["ON"])
self.check_select(address_id=self.address_id, available=0) self.app.check_code(response=response, code=0)
self.check_select(address_id=bookid_1, name=name, available=CaseBase().available["ON"])
@allure.title("addressbook.update:修改available不变") @allure.title("addressbook.update:修改available不变")
@allure.story("更新地址簿:修改available不变") @allure.story("更新地址簿:修改available不变")
def test_case_07(self): def test_case_07(self):
self.get_base_token() name = self.base_name + "07"
self.case_create(num="07", available=1) bookid_1 = self.app.case_create_addressbook(name=name, iplist=self.base_iplist, available=CaseBase().available["ON"])
response = self.addressbook_update(token=self.token, bookid=self.address_id, name=self.name + "修改", iplist=self.base_update_iplist) response = self.app.addressbook_update(token=self.token, bookid=bookid_1, name=name + "修改", iplist=self.base_update_iplist,
self.check_code(response=response, code=0) available=CaseBase().available["ON"])
self.check_select(address_id=self.address_id, available=1) self.app.check_code(response=response, code=0)
self.check_select(address_id=bookid_1, name=name, available=CaseBase().available["ON"])
if __name__ == "__main__": if __name__ == "__main__":
......
from WorkApi.APP.AddressBook.addressbook_create import AddressBookCreate
from WorkApi.APP.AddressBook.addressbook_delete import AddressBookDelete
from WorkApi.APP.AddressBook.addressbook_disabled import AddressBookDisabled
from WorkApi.APP.AddressBook.addressbook_enabled import AddressBookEnabled
from WorkApi.APP.AddressBook.addressbook_get import AddressBookGet
from WorkApi.APP.AddressBook.addressbook_update import AddressBookUpdate
from WorkApi.APP.Api.api_login import ApiLogin from WorkApi.APP.Api.api_login import ApiLogin
from WorkApi.APP.Businesses.Type.businesses_type_create import BusinessesTypeCreate from WorkApi.APP.Businesses.Type.businesses_type_create import BusinessesTypeCreate
from WorkApi.APP.Businesses.Type.businesses_type_delete import BusinessesTypeDelete from WorkApi.APP.Businesses.Type.businesses_type_delete import BusinessesTypeDelete
...@@ -124,6 +130,61 @@ class AppBase(object): ...@@ -124,6 +130,61 @@ class AppBase(object):
api.get_response() api.get_response()
return api.response return api.response
@allure.step("调用接口:addressbook.create")
def addressbook_create(self, token=None, name=None, iplist=None, available=None, delay=None):
api = AddressBookCreate(_host=self.host)
api.token = token
api.name = name
api.iplist = iplist
api.available = available
api.delay = delay
api.get_response()
return api.response
@allure.step("调用接口:addressbook.delete")
def addressbook_delete(self, token=None, bookids=None):
api = AddressBookDelete(_host=self.host)
api.token = token
api.bookids = bookids
api.get_response()
return api.response
@allure.step("调用接口:addressbook.disable")
def addressbook_disabled(self, token=None, bookids=None):
api = AddressBookDisabled(_host=self.host)
api.token = token
api.bookids = bookids
api.get_response()
return api.response
@allure.step("调用接口:addressbook.enable")
def addressbook_enabled(self, token=None, bookids=None):
api = AddressBookEnabled(_host=self.host)
api.token = token
api.bookids = bookids
api.get_response()
return api.response
@allure.step("调用接口:addressbook.get")
def addressbook_get(self, token=None, name=None, available=None):
api = AddressBookGet(_host=self.host)
api.token = token
api.name = name
api.available = available
api.get_response()
return api.response
@allure.step("调用接口:addressbook.update")
def addressbook_update(self, token=None, bookid=None, name=None, iplist=None, available=None):
api = AddressBookUpdate(_host=self.host)
api.token = token
api.bookid = bookid
api.name = name
api.iplist = iplist
api.available = available
api.get_response()
return api.response
@allure.step("调用接口:device.create") @allure.step("调用接口:device.create")
def device_create(self, token=None, hostName=None, hostType=None, manageLevel=None, iplist=None, dns=None, def device_create(self, token=None, hostName=None, hostType=None, manageLevel=None, iplist=None, dns=None,
monitorInterface=None, monitorType=None, parentHost=None, businessIds=None, monitorInterface=None, monitorType=None, parentHost=None, businessIds=None,
...@@ -214,6 +275,13 @@ class AppBase(object): ...@@ -214,6 +275,13 @@ class AppBase(object):
business_id = UtilsResponse().get_data(response=response) business_id = UtilsResponse().get_data(response=response)
return business_id return business_id
@allure.step("创建测试数据")
def case_create_addressbook(self, name, iplist, available):
response = self.addressbook_create(token=self.token, name=name, iplist=iplist, available=available, delay="1h")
self.check_code(response=response, code=0)
address_id = UtilsResponse().get_data(response=response)
return address_id
@allure.step("断言返回结果") @allure.step("断言返回结果")
def check_code(self, response, code): def check_code(self, response, code):
_code = UtilsResponse().get_code(response=response) _code = UtilsResponse().get_code(response=response)
......
...@@ -58,6 +58,6 @@ class CaseBase: ...@@ -58,6 +58,6 @@ class CaseBase:
} }
self.available = { self.available = {
"ON": 1, "ON": 0,
"OFF": 0 "OFF": 1
} }
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