Files
HAS-SL100_Api/Test_Api_Runner.py
2025-11-03 08:27:02 +00:00

318 lines
11 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# -*- coding: utf-8 -*-
import json
import time
import unittest
import requests
import os
import HtmlTestRunner
from API_Keys import apis
# 用例路径
case_path = os.path.join(os.getcwd(), "case")
# 报告存放路径
report_path = os.path.join(os.getcwd(), "report")
'''API接口测试'''
class TestAPIs(unittest.TestCase):
# 类变量 跟踪登录状态和API实例
_logged_in = False
devapi = None
@classmethod
def setUpClass(cls):
"""初始化API实例首次调用时执行登录"""
cls.devapi = apis()
cls.login() # 初始登录
@classmethod
def login(cls):
"""执行登录并更新登录状态"""
response = cls.devapi.uesrlog()
cls._logged_in = True
return response
@classmethod
def logout(cls):
"""清除登录状态"""
cls._logged_in = False
def test_01_uesrlogerror(self):
'未注册账号登录'
# 如果需要在此测试中重新登录,可以调用:
# TestAPIs.login()
self.devapi.uesrlogerror()
'''用户'''
def test_02_pwdsuser(self):
'<错误密码>'
self.devapi.pwdsuser("dwqdwqwq3")
def test_03_getlog(self):
'<获取用户信息>'
'获取用户头像上传地址'
self.devapi.putAvatar()
def test_05_UpdatePwd(self):
'修改密码'
self.devapi.UpdatePwd()
def test_06_updateInfo(self):
'修改昵称'
self.devapi.getlog()
def test_04_putAvatar(self):
self.devapi.updateInfo()
def test_07_updateInfomax(self):
'修改昵称---30字符'
self.devapi.updateInfomax()
def test_08_updateInfomin(self):
'修改昵称---1字符'
self.devapi.updateInfomin()
def test_09_updateInfoSpecial_symbols(self):
'修改昵称---特殊符号'
self.devapi.updateInfoSpecial_symbols()
def test_10_updateInfoSpecial_Chinese(self):
'''中文字符'''
self.devapi.updateInfoSpecial_Chinese()
"测试连"
def test_11_putClient(self):
'上报登录设备信息'
self.devapi.putClient()
'''设备绑定'''
def test_12_bind(self):
'设备绑定'
self.devapi.bind(
1000,
"设备绑定成功接口正常",
"设备绑定成功接口异常",
"d8:1b:99:ee:c2:62",
"ok"
)
def test_13_bind(self):
'设备绑定-不存在的mac'
self.devapi.bind(
1003,
"不存在的MAC绑定失败接口正常",
"不存在的MAC绑定成功接口异常",
"11:a9:af:01:74:27",
"invalid mac"
)
def test_14_upgradedVersion_Front(self):
'获取设备前板可升级版本'
self.devapi.upgradedVersion_Front()
def test_15_login(self):
'获取设备后板可升级版本'
self.devapi.upgradedVersion_Rear()
def test_16_models(self):
'获取所有设备型号列表'
self.devapi.models()
def test_17_newList(self):
'获取五分钟内绑定的设备'
self.devapi.newList()
def test_18_UpdateName(self):
'修改设备名称----20字符'
self.devapi.UpdateName(self.devapi.randoms(20))
def test_19_UpdateName_max(self):
'修改设备名称--21字符'
self.devapi.UpdateName_max(self.devapi.randoms(21))
def test_20_UpdateName_min(self):
'修改设备名称--1字符'
self.devapi.UpdateName_min(self.devapi.randoms(1))
def test_21_UpdateName_special(self):
'修改名称-特殊字符'
self.devapi.UpdateName_special(self.devapi.randomspecial(5))
def test_22_UpdateName_Chinese(self):
'修改名称-输入中文字符'
self.devapi.UpdateName_Chinese(self.devapi.randomChinese(5))
# def test_23_deletedevices(self):
# '解绑设备'
# self.devapi.deletedevices()
"""设备事件部分"""
def test_24_evenlist(self):
'获取事件列表'
self.devapi.evenlist()
def test_25_eventread(self):
'修改事件消息的读取状态'
self.devapi.eventread()
def test_26_eventunreadNum(self):
'获取事件未读数量'
self.devapi.eventunreadNum()
def test_27_evendel(self):
'删除事件消息'
self.devapi.evendel()
"公共接口"
def test_28_times(self):
'获取服务器当前时间戳'
self.devapi.times()
def test_29_getUrl(self):
'获取服务器地址'
self.devapi.getUrl()
"设备家庭"
def test_30_homeCreate(self):
'创建家庭'
self.devapi.homeCreate(self.devapi.randoms(20))
def test_31_homeCreatepecial(self):
'创建家庭-特殊字符'
self.devapi.homeCreatepecial(self.devapi.randomspecial(6))
def test_32_homeCreateChinese(self):
'创建家庭-中文字符'
self.devapi.homeCreateChinese(self.devapi.randomChinese(6))
def test_33_homeCreateMax(self):
'创建家庭-21字符'
self.devapi.homeCreateMax(self.devapi.randoms(21))
def test_34_homeCreateMin(self):
'创建家庭-1字符'
self.devapi.homeCreateMin(self.devapi.randomChinese(1))
def test_35_homesList(self):
'获取家庭列表'
self.devapi.homeslist()
def test_36_homeDelete(self):
'删除家庭'
for i in range(4):
self.devapi.homeDelete()
def test_37_homeUpdate(self):
'修改家庭名称或者地址'
self.devapi.homeUpdate(self.devapi.randomChinese(5))
def test_38_homeUpdatepecial(self):
'修改家庭名称-特殊字符'
self.devapi.homeUpdatepecial(self.devapi.randoms(10))
def test_39_homeUpdateMax(self):
'修改家庭名称-30字符'
self.devapi.homeUpdateMax(self.devapi.randoms(20))
def test_40_homeChange(self):
'更换设备所属家庭-最后一个'
self.devapi.homeChange()
def test_41_homeChangenoe(self):
'更换设备所属家庭-第一个'
self.devapi.homeChangenoe()
def test_42_homeDevices(self):
'获取家庭下的设备列表'
self.devapi.homeDevices()
def test_43_homeUsers(self):
'获取家庭下的用户'
self.devapi.homeUsers()
def test_44_homeShare(self):
'分享家庭给用户'
self.devapi.homeShare()
def test_45_messageList(self):
'登录被分享账号去获取消息列表'
self.devapi.messagelist()
# time.sleep(3)
def test_46_homeShareFeedback(self):
'用户反馈分享结果接口(同意加入家庭)'
self.devapi.homeShareFeedback(1)
def test_47_homeShareRemove(self):
'删除分享者(主账号登录去删除)'
self.devapi.homeShareRemove()
def test_48_homeShareFeedbackNo(self):
'用户反馈分享结果接口(拒绝加入家庭)'
self.devapi.homeShareFeedbackNo(2)
'''
家庭内添加设备接口功能(已废弃)
def test_48_1_homeAddDevice(self):
'家庭内添加设备'
self.devapi.homeAddDevice("685d3d5c8e2acc38e53eb38a")
def test_48_2_homeAddDevice(self):
time.sleep(1)
self.devapi.homeAddDevice("6865f9dd8e2acc38e53eb69f")
def test_48_3_homeAddDevice(self):
time.sleep(1)
self.devapi.homeAddDevice("687460cb3ca717516d7124a2")
'''
# def test_49_homeDelete(self): #前面有了删除家庭
# '删除家庭'
# # for i in range(4):
# # time.sleep(1)
# self.devapi.homeDelete()
# "云存储"
def test_50_cloudToken(self):
'APP获取文件下载token'
self.devapi.cloudToken()
def test_51_cloudFiles(self):
'APP获取云存储文件信息'
self.devapi.cloudFiles()
def test_52_cloudputToken(self):
'设备获取文件上报token'
self.devapi.cloudputToken()
def test_53_cloudputFiles(self):
'获取设备上云存信息'
self.devapi.cloudputFiles()
"消息部分"
def test_54_messagelist(self):
'获取消息列表'
self.devapi.messagelist()
# time.sleep(3)
def test_55_messageread(self):
'修改消息读取状态'
self.devapi.messageread()
def test_56_messageunreaNum(self):
'获取消息未读数量'
self.devapi.messageunreaNum()
def test_57_mmessagedelete(self):
'删除消息'
self.devapi.messagedelete()
"设备分享"
def test_58_deviceshare(self):
'设备分享'
self.devapi.deviceshare("15814087116")
def test_59_deviceshareUser(self):
'设备分享-不存在的用户'
self.devapi.deviceshareUser("18814087116")
def test_60_deviceshareUser(self):
'分享不存在的设备'
self.devapi.deviceshareDevice("c7e8e360d5c4e8aa9624e1367d2896b")
def test_61_deviceshareRecords(self):
'获取分享列表'
self.devapi.deviceshareRecords()
def test_62_devicesshareFeedback(self):
'用户反馈(拒绝)接受分享'
self.devapi.devicesshareFeedback()
def test_63_devicesshareFeedbackOK(self):
'用户反馈(同意)接受分享'
self.devapi.devicesshareFeedbackOK()
def test_64_deviceshareDelete(self):
'设备主人移除分享'
self.devapi.deviceshareDelete()
def test_65_create(self):
'创建反馈'
self.devapi.create()
def test_66_feedbacklist(self):
'获取创建反馈列表'
self.devapi.feedbacklist()
def test_67_feedbackinfo(self):
'获取反馈详情'
self.devapi.feedbackinfo()
def test_68_feedbacksend(self):
'发送反馈消息'
self.devapi.feedbacksend()
def test_69_leavewordlist(self):
'APP获取留言列表'
self.devapi.leavewordlist()
def test_70_leavewordunreadNumber(self):
'APP获取留言未读数量'
self.devapi.leavewordunreadNumber()
def test_71_leavewordread(self):
'APP设置全部留已读'
self.devapi.leavewordread()
def test_72_leaveworddeviceList(self):
'设备获取留言列表'
self.devapi.leaveworddeviceList()
def test_73_leaveworddeviceUnreadNumber(self):
'设备获取留言未读数量'
self.devapi.leaveworddeviceUnreadNumber()
def test_74_leaveworddeviceRead(self):
# '设备设置留言已读'
self.devapi.leaveworddeviceRead()
def test_75_devicegetAllUser(self):
self.devapi.devicegetAllUser()
def test_76_deviceputAllUser(self):
self.devapi.deviceputAllUser()
def test_77_devicelogin(self):
self.devapi.devicelogin()
#
# def test_02_binmac(self):
# self.devapi.bindmac()
# def test_03_binmacs(self):
# self.devapi.activate()
#
#
if __name__ == '__main__':
unittest.main()