Commit efd531db by sanshi

整个设置代码重构

parent de7fa714
...@@ -8,6 +8,7 @@ from __future__ import division ...@@ -8,6 +8,7 @@ from __future__ import division
from WorkApi.APP.Members.members_create import MembersCreate from WorkApi.APP.Members.members_create import MembersCreate
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.UtilsResponse import UtilsResponse from WorkUtils.UtilsResponse import UtilsResponse
from WorkUtils.UtilsDataBase import UtilsDataBase from WorkUtils.UtilsDataBase import UtilsDataBase
...@@ -32,9 +33,10 @@ class TestSettingsChangePassword(object): ...@@ -32,9 +33,10 @@ class TestSettingsChangePassword(object):
base_id = 10 base_id = 10
login_name = "SS测试用户名" login_name = "SS测试用户名"
base_name = "SS测试用户名--修改密码"
base_password = "123456" base_password = "123456"
base_name = "SS 自动化用户"
@classmethod @classmethod
def setup_class(cls): def setup_class(cls):
cls.log.debug("开始执行测试套件.......") cls.log.debug("开始执行测试套件.......")
...@@ -47,142 +49,69 @@ class TestSettingsChangePassword(object): ...@@ -47,142 +49,69 @@ class TestSettingsChangePassword(object):
def setup_method(self): def setup_method(self):
self.log.debug("测试用例执行开始...") self.log.debug("测试用例执行开始...")
self.log.debug("恢复测试数据...")
self.update_members_del_flag(members_id=self.base_id, value=CaseBase().del_flag["OFF"]) self.app = AppBase(host=self.host)
self.update_members_status(members_id=self.base_id, value=CaseBase().status["ON"]) self.app.update_members_del_flag(session=self.db_session(), members_id=self.base_id, value=CaseBase().del_flag["OFF"])
self.update_members_password(members_id=self.base_id, value=self.base_password) self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=CaseBase().status["ON"])
self.app.update_members_password(session=self.db_session(), members_id=self.base_id, value=self.base_password)
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.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.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"])
@allure.step("调用接口:api.login") self.app.update_members_password(session=self.db_session(), members_id=self.base_id, value=self.base_password)
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("调用接口:settings.changePassword")
def settings_changePassword(self, token=None, memberId=None, oldPassword=None, newPassword=None):
api = SettingsChangePassword(_host=self.host)
api.token = token
api.memberId = memberId
api.oldPassword = oldPassword
api.newPassword = newPassword
api.get_response()
return api.response
@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("连接数据库:Argus") @allure.step("连接数据库:Argus")
def db_session(self): def db_session(self):
session = UtilsDataBase().conn_mysql(db_url=self.db_url, db_port=self.db_port, db_base=self.db_base, db_user=self.db_user, db_pw=self.db_pw) session = UtilsDataBase().conn_mysql(db_url=self.db_url, db_port=self.db_port, db_base=self.db_base, db_user=self.db_user, db_pw=self.db_pw)
return session return session
@allure.step("更新表数据:members -- del_flag")
def update_members_del_flag(self, members_id=None, value=None):
session = self.db_session()
sql = DataMembers().update_del_flag(session=session, _id=members_id, value=value)
return sql
@allure.step("更新表数据:members -- status")
def update_members_status(self, members_id=None, value=None):
session = self.db_session()
sql = DataMembers().update_status(session=session, _id=members_id, value=value)
return sql
@allure.step("更新表数据:members -- password")
def update_members_password(self, members_id=None, value=None):
session = self.db_session()
sql = DataMembers().update_password(session=session, _id=members_id, value=value)
return sql
@allure.step("获取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("调用接口:members.create")
def members_create(self, token=None, name=None, position=None, role=None, password=None,
phone=None, email=None, wechatUrl=None, dingdingUrl=None, remark=None):
api = MembersCreate(_host=self.host)
api.token = token
api.name = name
api.position = position
api.role = role
api.password = password
api.phone = phone
api.email = email
api.wechatUrl = wechatUrl
api.dingdingUrl = dingdingUrl
api.remark = remark
api.get_response()
return api.response
@allure.title("settings.changePassword:token未传") @allure.title("settings.changePassword: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.settings_changePassword()
self.app.check_code(response=response, code=2001)
response = self.settings_changePassword() self.app.check_msg(response=response, msg="无token,请重新登录")
self.check_code(response=response, code=2001)
self.check_msg(response=response, msg="无token,请重新登录")
@allure.title("settings.changePassword:token的用户已删除") @allure.title("settings.changePassword: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.settings_changePassword(token=self.token)
response = self.settings_changePassword(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("settings.changePassword:token的用户已禁用") @allure.title("settings.changePassword: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.settings_changePassword(token=self.token)
response = self.settings_changePassword(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("settings.changePassword:成功修改密码") @allure.title("settings.changePassword:成功修改密码")
@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.members_create(token=self.token, name=name, password=self.base_password, role=0) member_id = self.app.case_create_member(name=name, password=self.base_password, role=0)
memberId = UtilsResponse().get_data(response=response)
new_password = "Test" new_password = "Test"
response = self.settings_changePassword(token=self.token, memberId=memberId, oldPassword=self.base_password, response = self.app.settings_changePassword(token=self.token, memberId=member_id, oldPassword=self.base_password,
newPassword=new_password) newPassword=new_password)
self.check_code(response=response, code=0) self.app.check_code(response=response, code=0)
@allure.title("settings.changePassword:token错误") @allure.title("settings.changePassword:token错误")
@allure.story("变更密码:token错误") @allure.story("变更密码:token错误")
def test_case_05(self): def test_case_05(self):
self.get_base_token() response = self.app.settings_changePassword(token="Test", memberId=self.base_id)
self.update_members_status(members_id=self.base_id, value=1) self.app.check_code(response=response, code=2001)
response = self.settings_changePassword(token="Test", memberId=self.base_id) self.app.check_msg(response=response, msg="token错误,请重新登录")
self.check_code(response=response, code=2001)
self.check_msg(response=response, msg="token错误,请重新登录")
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.UtilsResponse import UtilsResponse from WorkUtils.UtilsResponse import UtilsResponse
from WorkUtils.UtilsDataBase import UtilsDataBase from WorkUtils.UtilsDataBase import UtilsDataBase
...@@ -30,7 +31,7 @@ class TestSettingsGetMember(object): ...@@ -30,7 +31,7 @@ class TestSettingsGetMember(object):
db_base = env["db_base"] db_base = env["db_base"]
base_id = 10 base_id = 10
base_name = "SS测试用户名" login_name = "SS测试用户名"
base_password = "123456" base_password = "123456"
@classmethod @classmethod
...@@ -43,110 +44,63 @@ class TestSettingsGetMember(object): ...@@ -43,110 +44,63 @@ class TestSettingsGetMember(object):
def setup_method(self): def setup_method(self):
self.log.debug("测试用例执行开始...") self.log.debug("测试用例执行开始...")
self.log.debug("恢复测试数据...")
self.update_members_del_flag(members_id=self.base_id, value=CaseBase().del_flag["OFF"]) self.app = AppBase(host=self.host)
self.update_members_status(members_id=self.base_id, value=CaseBase().status["ON"]) 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.log.debug("恢复测试数据...")
self.update_members_del_flag(members_id=self.base_id, value=CaseBase().del_flag["OFF"]) self.app.update_members_del_flag(session=self.db_session(), 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.update_members_status(session=self.db_session(), 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("调用接口:settings.get.member")
def settings_get_member(self, token=None, memberId=None):
api = SettingsGetMember(_host=self.host)
api.token = token
api.memberId = memberId
api.get_response()
return api.response
@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("连接数据库:Argus") @allure.step("连接数据库:Argus")
def db_session(self): def db_session(self):
session = UtilsDataBase().conn_mysql(db_url=self.db_url, db_port=self.db_port, db_base=self.db_base, db_user=self.db_user, db_pw=self.db_pw) session = UtilsDataBase().conn_mysql(db_url=self.db_url, db_port=self.db_port, db_base=self.db_base, db_user=self.db_user, db_pw=self.db_pw)
return session return session
@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.title("settings.get.member:token未传") @allure.title("settings.get.member:token未传")
@allure.story("查询我的设置:token未传") @allure.story("查询我的设置:token未传")
@allure.severity("blocker") @allure.severity("blocker")
def test_case_01(self): def test_case_01(self):
response = self.settings_get_member(memberId=self.base_id) response = self.app.settings_get_member(memberId=self.base_id)
self.check_code(response=response, code=2001) self.app.check_code(response=response, code=2001)
self.check_msg(response=response, msg="无token,请重新登录") self.app.check_msg(response=response, msg="无token,请重新登录")
@allure.title("settings.get.member:token的用户已删除") @allure.title("settings.get.member:token的用户已删除")
@allure.story("查询我的设置:token的用户已删除") @allure.story("查询我的设置:token的用户已删除")
@allure.severity("blocker") @allure.severity("blocker")
def test_case_02(self): def test_case_02(self):
response = self.api_login(name=self.base_name, password=self.base_password) self.app.update_members_del_flag(session=self.db_session(), members_id=self.base_id, value=CaseBase().del_flag["ON"])
data = UtilsResponse().get_data(response=response) response = self.app.settings_get_member(token=self.token, memberId=self.base_id)
self.token = data self.app.check_code(response=response, code=2004)
self.update_members_del_flag(members_id=self.base_id, value=CaseBase().del_flag["ON"]) self.app.check_msg(response=response, msg="用户不存在")
response = self.settings_get_member(token=self.token, memberId=self.base_id)
self.check_code(response=response, code=2004)
self.check_msg(response=response, msg="用户不存在")
@allure.title("settings.get.member:token的用户已禁用") @allure.title("settings.get.member:token的用户已禁用")
@allure.story("查询我的设置:token的用户已禁用") @allure.story("查询我的设置:token的用户已禁用")
@allure.severity("blocker") @allure.severity("blocker")
def test_case_03(self): def test_case_03(self):
response = self.api_login(name=self.base_name, password=self.base_password) self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=CaseBase().status["OFF"])
data = UtilsResponse().get_data(response=response) response = self.app.settings_get_member(token=self.token, memberId=self.base_id)
self.token = data self.app.check_code(response=response, code=2003)
self.update_members_status(members_id=self.base_id, value=CaseBase().status["OFF"]) self.app.check_msg(response=response, msg="账户已被禁用")
response = self.settings_get_member(token=self.token, memberId=self.base_id)
self.check_code(response=response, code=2003)
self.check_msg(response=response, msg="账户已被禁用")
@allure.title("settings.get.member:token错误") @allure.title("settings.get.member:token错误")
@allure.story("查询我的设置:token错误") @allure.story("查询我的设置:token错误")
def test_case_04(self): def test_case_04(self):
response = self.api_login(name=self.base_name, password=self.base_password) self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=1)
data = UtilsResponse().get_data(response=response) response = self.app.settings_get_member(token="Test", memberId=self.base_id)
self.token = data self.app.check_code(response=response, code=2001)
self.update_members_status(members_id=self.base_id, value=1) self.app.check_msg(response=response, msg="token错误,请重新登录")
response = self.settings_get_member(token="Test", memberId=self.base_id)
self.check_code(response=response, code=2001)
self.check_msg(response=response, msg="token错误,请重新登录")
@allure.title("settings.get.member:正常查询") @allure.title("settings.get.member:正常查询")
@allure.story("查询我的设置:正常查询") @allure.story("查询我的设置:正常查询")
@allure.severity("blocker") @allure.severity("blocker")
def test_case_05(self): def test_case_05(self):
response = self.api_login(name=self.base_name, password=self.base_password) response = self.app.settings_get_member(token=self.token, memberId=self.base_id)
self.token = UtilsResponse().get_data(response=response) self.app.check_code(response=response, code=0)
response = self.settings_get_member(token=self.token, memberId=self.base_id)
self.check_code(response=response, code=0)
data = UtilsResponse().get_data(response=response) data = UtilsResponse().get_data(response=response)
assert "管理员角色" == data["roleName"] assert "管理员角色" == data["roleName"]
......
...@@ -26,6 +26,7 @@ from WorkApi.APP.Members.members_create import MembersCreate ...@@ -26,6 +26,7 @@ from WorkApi.APP.Members.members_create import MembersCreate
from WorkApi.APP.Members.members_delete import MembersDelete from WorkApi.APP.Members.members_delete import MembersDelete
from WorkApi.APP.Members.members_get import MembersGet from WorkApi.APP.Members.members_get import MembersGet
from WorkApi.APP.Members.members_list import MembersList from WorkApi.APP.Members.members_list import MembersList
from WorkApi.APP.Settings.Get.settings_get_member import SettingsGetMember
from WorkApi.APP.Settings.settings_changePassword import SettingsChangePassword from WorkApi.APP.Settings.settings_changePassword import SettingsChangePassword
from WorkData.Argus.members import DataMembers from WorkData.Argus.members import DataMembers
from WorkUtils.UtilsResponse import UtilsResponse from WorkUtils.UtilsResponse import UtilsResponse
...@@ -342,6 +343,14 @@ class AppBase(object): ...@@ -342,6 +343,14 @@ class AppBase(object):
api.get_response() api.get_response()
return api.response return api.response
@allure.step("调用接口:settings.get.member")
def settings_get_member(self, token=None, memberId=None):
api = SettingsGetMember(_host=self.host)
api.token = token
api.memberId = memberId
api.get_response()
return api.response
@allure.step("调用接口:members.create") @allure.step("调用接口:members.create")
def members_create(self, token=None, name=None, position=None, role=None, password=None, def members_create(self, token=None, name=None, position=None, role=None, password=None,
phone=None, email=None, wechatUrl=None, dingdingUrl=None, remark=None, phone=None, email=None, wechatUrl=None, dingdingUrl=None, remark=None,
......
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