外卖点餐项目的测试 | 您所在的位置:网站首页 › 微信怎么外卖点餐 › 外卖点餐项目的测试 |
外卖点餐项目的测试
一、测试的流程二、测试用例的编写三、自动化测试登录、退出功能四、测试报告
一、测试的流程
测试计划: 1.第一天,用自动化测试Selenium测试登录、退出功能,以及页面是否可以正常分页展示 2.第二天,手动测试员工管理、分类管理、菜品管理、套餐管理的添加,删除,查询,修改功能测试设计和开发:编写测试用例如下测试的执行:如下报告评估如下:
二、测试用例的编写
unittestDemo from ddt import data,ddt,unpack,file_data from selenium import webdriver import time import unittest import os,sys,csv def getTxt(file_name): rows=[] path=sys.path[0] with open(path+'\\'+file_name,'rt') as f: readers=csv.reader(f,delimiter=',',quotechar='|') next(readers,None) for row in readers: temprows=[] for i in row: temprows.append(i) rows.append(temprows) return rows @ddt class TestUnit(unittest.TestCase): #获取输出库驱动 def setUp(self): self.driver=webdriver.Chrome() self.driver.maximize_window() self.url="http://paulstrong.top:8080/backend/page/login/login.html" self.driver.get(self.url) time.sleep(3) @data(*getTxt('test_data.txt')) @unpack def test_Login(self, value1, value2): driver = self.driver url = self.url driver.get(url) username = driver.find_element_by_xpath("/html/body/div/div/div/form/div[2]/div/div/input") password = driver.find_element_by_xpath("/html/body/div/div/div/form/div[3]/div/div/input") username.clear() username.send_keys(value1) time.sleep(2) password.clear() password.send_keys(value2) driver.find_element_by_class_name("login-btn").click() time.sleep(1) url = driver.current_url try: self.assertEqual(url, "http://paulstrong.top:8080/backend/index.html", msg="登录失败") except: self.save_erroImage(self.driver, "error.png") @data(*getTxt('test_data.txt')) @unpack def test_outLogin(self,value1,value2): driver=self.driver url=self.url driver.get(url) username=driver.find_element_by_xpath("/html/body/div/div/div/form/div[2]/div/div/input") password=driver.find_element_by_xpath("/html/body/div/div/div/form/div[3]/div/div/input") username.clear() username.send_keys(value1) time.sleep(2) password.clear() password.send_keys(value2) driver.find_element_by_class_name("login-btn").click() time.sleep(1) driver.find_element_by_class_name("outLogin").click() time.sleep(1) url=driver.current_url try: self.assertEqual(url, "http://paulstrong.top:8080/backend/page/login/login.html", msg="登录失败") except: self.save_erroImage(self.driver,"error.png") def save_erroImage(self, driver, fileName): if not os.path.exists("./image"): os.makedirs("./image") now=time.strftime("%Y%m%d-%H%M%S",time.localtime(time.time())) driver.get_screenshot_as_file("./image/"+now+"-"+fileName) def tearDown(self): self.driver.quit() if __name__=="__main__": unittest.main()testSuit import unittest from test_demo import unittestDemo def creatSuit(): # 测试套件 disvover #discover(dir,pattern,top_level_dir=None) discover = unittest.defaultTestLoader.discover("../demo",pattern="unittestD*.py",top_level_dir=None) return discover if __name__=="__main__": suite=creatSuit() runner=unittest.TextTestRunner() runner.run(suite)html自动生成 import HTMLTestRunner import os import sys import time import unittest def createsuite(): discovers = unittest.defaultTestLoader.discover("../demo", pattern="unittestD*.py", top_level_dir=None) print(discovers) return discovers if __name__=="__main__": # 文件夹要创建在哪里 curpath = sys.path[0] print(sys.path) print(sys.path[0]) # 1,创建文件夹,创建的这个文件夹干什么 if not os.path.exists(curpath+'/resultreport'): os.makedirs(curpath+'/resultreport') # 2,文件夹的命名,不能让名称重复 # 时间 时分秒 ——》名称绝对不会重复 now = time.strftime("%Y-%m-%d-%H %M %S", time.localtime(time.time())) print(now) print(time.time()) print(time.localtime(time.time())) # 文件名 filename = curpath + '/resultreport/'+ now + 'resultreport.html' with open(filename, 'wb') as fp: runner = HTMLTestRunner.HTMLTestRunner(stream=fp, title=u"测试报告", description=u"用例执行情况", verbosity=2) suite = createsuite() runner.run(suite)登录功能的测试 1.密码用户名全部正确的情况下 ![]() ![]() 3.用户名不存在情况下 错误截图![]() ![]() 4.密码错位情况下 退出功能的测试 (找到退出的元素然后点击)
|
CopyRight 2018-2019 实验室设备网 版权所有 |