测试库优化
创建已经存在的一个部门的数据环境--需求部
import pytest
@pytest.fixture(scope=‘session‘)
def init_organiz(empty_organization):
org=org_api.add(name=‘需求部‘)
yield org
org_api.delete(org[‘_id‘])
在当前环境下创建测试用例模块--test_organizations.py
def test_tc_000002(empty_organization,init_organiz):
org_api=empty_organization
#创建一个研发部
org=org_api.add(name=‘研发部‘)
#列出所有
orgs=org_api.list_all()
#断言
assert org in orgs
测试完成需要做用例的清除操作,需要对用例进行改进
import pytest
#init_organiz只为了构造一个数据环境,没有利用返回值,放在函数参数里面就行
@pytest.fixture()
def before_tc_000002(empty_organization,init_organiz):
org_api =empty_organization
yield org_api
org_api.delete(org[‘_id‘])
def test_tc_000002(before_tc_000002):
global org
org_api=before_tc_000002
#创建一个研发部
org=org_api.add(name=‘研发部‘)
#列出所有
orgs=org_api.list_all()
#断言
assert org in orgs
如果不需要用到返回值,可以把fixture设置为autouse=True
@pytest.fixture(scope=‘session‘,autouse=True)
def init_organiz(empty_organization):
@pytest.fixture()
def before_tc_000002(empty_organization):
测试修改功能
当前公司已经有分部--test_organizations.py
#测试修改功能--已经有分部--id存在
@pytest.fixture()
def before_tc_000051(empty_organization):
org_api=empty_organization
org1=org_api.add(name=‘产品部‘)
yield org1,org_api
org_api.delete(org1[‘_id‘])
def test_tc_000051(before_tc_000051):
org1,org_api=before_tc_000051
#修改,修改成功没有返回值,修改前后id没有变化
org_api.edit(org1[‘_id‘],name=‘测试部‘)
orgs=org_api.list_all()
for org in orgs:
if org[‘_id‘]==org1[‘_id‘]:
assert org[‘name‘]==‘测试部‘
break
#测试修改功能--已经有分部--id不存在
def test_tc_000052(empty_organization):
org_api = empty_organization
before_orgs=org_api.list_all()
org_api.edit(‘66666‘,name=‘大数据部‘)
after_orgs=org_api.list_all()
assert before_orgs==after_orgs
测试删除功能
当前公司没有分部--test_organizapi.py
@pytest.fixture()
def before_tc000091(empty_organization):
org_api = empty_organization
org=org_api.add(name=‘采购部‘)
yield org,org_api
#测试删除用例--没有分部--id存在
def test_tc000091(before_tc000091):
org,org_api=before_tc000091
org_api.delete(org[‘_id‘])
orgs=org_api.list_all()[1:]#排除总公司
assert orgs==[] #返回结果公司分部列表为空
当前公司已经有分部--test_organizations.py
#测试删除功能--已经有分部--id不存在
def test_tc_000092(empty_organization):
org_api = empty_organization
before_orgs=org_api.list_all()
org_api.delete(‘666‘)
after_orgs=org_api.list_all()
assert before_orgs==after_orgs