上一篇文章已經(jīng)知道如何使用python來實現(xiàn)修改一門課程自動化用例,本篇文章繼續(xù)來鞏固“如何實現(xiàn)刪除一門課程自動化用例”。希望感興趣的小伙伴可以堅持看下去同時歡迎提出寶貴的意見讓我們一起進步!
01:刪除課程接口自動化測試用例
(1)用例名稱:刪除一門培訓課程的信息
(2)操作步驟:
1.使用工具調(diào)用刪除課程API來刪除一門課程
2.使用工具調(diào)用列出課程API查看課程是否正確刪除
(3)期望結(jié)果:
1.返回結(jié)果成功桩卵,http消息體內(nèi)容如下:{ "retcode": 0}
2.列出課程接口返回的結(jié)果少一門已刪除的課程信息
02:刪除課程接口自動化實例化操作
1)URL寫在config配置文件中
api_server='localhost'
2)定義刪除課程函數(shù)
import requests
from pprint import pprint
import src.api.config as config
#刪除改課程
def delete_course(cid):
body={
'action': 'delete_course',
'id':cid}
res = requests.delete(f'http://{config.api_server}/api/mgr/sq_mgr/',
data=body,
cookies={'sessionid':g_sessionid})
ret_obj = res.json()
pprint(ret_obj)
return ret_obj
3)調(diào)用登錄馋艺、創(chuàng)建課程打掘、列出課程棘钞、刪除課程函數(shù)且處理響應數(shù)據(jù)
import random
from src.api.lib.api_lib import add_course, list_course, login,delete_course
import traceback
try:
# 登錄
login('auto', 'sdfsdfsdf')
#先添加一門課程再進行刪除
courselist1 = list_course()['retlist']
course_name = 'python_' + str(random.randint(0, 100000000))
addret_obj = add_course(course_name,
'python基礎課程',
'1')
#獲取增加的課程id
cid=addret_obj['id']
#刪除課程之前列出課程缭付,獲取返回結(jié)果
courselist1 = list_course()['retlist']
#再刪除課程
delete_ret=delete_course(cid)
#檢查刪除的課程retcode是否為0
assert delete_ret['retcode']==0
#刪除課程之后列出課程鉴竭,獲取返回結(jié)果
courselist2 = list_course()['retlist']
#遍歷找出刪除的課程歧譬,判斷后一個比前一個少一門課程
courselist = []
for one in courselist1:
if one not in courselist2:
courselist.append(one)
# 檢查數(shù)量是否相同
assert len(courselist)==1
for course in courselist:
assert course['id'] == cid
print('\n********用例003執(zhí)行通過********\n')
except :
print('\n********用例003執(zhí)行失敗********\n',traceback.format_exc())