Commit 185f1a32 by sanshi

登录

parent b04befbb
...@@ -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
...@@ -41,41 +42,22 @@ class TestApiLogin(object): ...@@ -41,41 +42,22 @@ class TestApiLogin(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"])
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("连接数据库: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("断言返回结果:校验排序") @allure.step("断言返回结果:校验排序")
def check_sortfield(self, response, possible): def check_sortfield(self, response, possible):
result = UtilsResponse().get_result(response=response) result = UtilsResponse().get_result(response=response)
...@@ -105,40 +87,40 @@ class TestApiLogin(object): ...@@ -105,40 +87,40 @@ class TestApiLogin(object):
@allure.story("登录:用户密码正确成功登录") @allure.story("登录:用户密码正确成功登录")
@allure.severity("blocker") @allure.severity("blocker")
def test_case_01(self): def test_case_01(self):
response = self.api_login(name=self.base_name, password=self.base_password) response = self.app.api_login(name=self.base_name, password=self.base_password)
self.check_code(response=response, code=0) self.app.check_code(response=response, code=0)
@allure.title("api.login:用户不存在无法登录") @allure.title("api.login:用户不存在无法登录")
@allure.story("登录:用户不存在无法登录") @allure.story("登录:用户不存在无法登录")
def test_case_02(self): def test_case_02(self):
response = self.api_login(name="Test", password=self.base_password) response = self.app.api_login(name="Test", password=self.base_password)
self.check_code(response=response, code=2004) self.app.check_code(response=response, code=2004)
self.check_msg(response=response, msg="用户不存在") self.app.check_msg(response=response, msg="用户不存在")
@allure.title("api.login:密码不正确无法登录") @allure.title("api.login:密码不正确无法登录")
@allure.story("登录:密码不正确无法登录") @allure.story("登录:密码不正确无法登录")
def test_case_03(self): def test_case_03(self):
response = self.api_login(name=self.base_name, password="Test") response = self.app.api_login(name=self.base_name, password="Test")
self.check_code(response=response, code=2002) self.app.check_code(response=response, code=2002)
self.check_msg(response=response, msg="账户不存在或密码错误") self.app.check_msg(response=response, msg="账户不存在或密码错误")
@allure.title("api.login:已删除的用户无法登录") @allure.title("api.login:已删除的用户无法登录")
@allure.story("登录:已删除的用户无法登录") @allure.story("登录:已删除的用户无法登录")
def test_case_04(self): def test_case_04(self):
self.update_members_del_flag(members_id=self.base_id, value=1) self.app.update_members_del_flag(session=self.db_session(), members_id=self.base_id, value=1)
response = self.api_login(name=self.base_name, password=self.base_password) response = self.app.api_login(name=self.base_name, password=self.base_password)
self.check_code(response=response, code=2004) self.app.check_code(response=response, code=2004)
self.check_msg(response=response, msg="用户不存在") self.app.check_msg(response=response, msg="用户不存在")
@allure.title("api.login:已禁用的用户无法登录") @allure.title("api.login:已禁用的用户无法登录")
@allure.story("登录:已禁用的用户无法登录") @allure.story("登录:已禁用的用户无法登录")
def test_case_05(self): def test_case_05(self):
self.update_members_status(members_id=self.base_id, value=0) self.app.update_members_status(session=self.db_session(), members_id=self.base_id, value=0)
response = self.api_login(name=self.base_name, password=self.base_password) response = self.app.api_login(name=self.base_name, password=self.base_password)
self.check_code(response=response, code=2003) self.app.check_code(response=response, code=2003)
self.check_msg(response=response, msg="账户已被禁用") self.app.check_msg(response=response, msg="账户已被禁用")
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