#业务场景性能测试:注册,登录,查询
import csv
import datetime
import os
from locust import HttpUser,task,TaskSet
class UseTasker(TaskSet):
@task
def test_re(self):
# 定义测试数据
for i in range(1, 41):
user = "tt" + str(i)
registerdata = {"email":user +"@126.com",
"username": user,
"password": "123456",
"repassword": "123456"
}
response = self.client.post("/index.php?controller=simple&action=reg_act",data=registerdata).text
loc = response.find("恭喜")
if loc >= 0:
print("注册测试成功")
else:
print("注册测试失败aaaaaaaaaaaaaaaaaaaaaaaaaaa")
@task
def test_login(self):
# 定义登录的测试数据
for i in range(1, 101):
username = "dabai"+str(i)
logindata = {"login_info": username,
"password": "123456"}
# 发送首页请求给服务器
response = self.client.post("/index.php?controller=simple&action=login_act", data=logindata).text
loc=response.find(username)
if loc >= 0:
print(username + "登录测试成功")
else:
print(username + "登录测试失败aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")
@task
def test_search(self):
file = open("data.csv","r")
file1 = open("search_result.csv","a")
row = csv.reader(file)
for word in row:
response = self.client.get("/index.php?controller=site&action=search_list&word=" + str(word)).text
loc = response.find(str(word))
te = datetime.datetime.now()
if loc >= 0:
r = (str(te)+str(word) + '测试成功')
file1.write(r + "\n")
else:
r = (str(te)+str(word) + "测试失败")
file1.write(r + "\n")
file1.close()
#tasks = {test_login:1,test_search:1,test_reg:1}
class WebUser(HttpUser):
host="http://localhost/iwebshop/"
tasks=[UseTasker]
#若已存在search_result.csv文件,先执行删除
result=os.path.exists("search_result.csv")
if result:
os.remove("search_result.csv")
min_wait=2000
max_wait=5000
locust业务场景测试脚本
最新推荐文章于 2024-04-23 14:47:06 发布