当前位置: 首页 > news >正文

品牌网站如何建设大学生建设什么网站好

品牌网站如何建设,大学生建设什么网站好,制作ppt的软件叫啥,新乡网站建设策划目录 一.项目背景二.项目简介三.功能测试四.测试用例五.自动化测试脚本(使用Selenium进行Web自动化测试(Python))1.创建驱动对象2.登录界面3.博客列表界面4.博客详情页5.博客发布界面6.注销测试 六.环境准备七.测试总结 一.项目背…

目录

  • 一.项目背景
  • 二.项目简介
  • 三.功能测试
  • 四.测试用例
  • 五.自动化测试脚本(使用Selenium进行Web自动化测试(Python))
    • 1.创建驱动对象
    • 2.登录界面
    • 3.博客列表界面
    • 4.博客详情页
    • 5.博客发布界面
    • 6.注销测试
  • 六.环境准备
  • 七.测试总结

一.项目背景

在当今数字化时代,互联网的迅猛发展已深刻改变了人们的生活与交流方式。信息传播的速度与广度达到了前所未有的程度,人们渴望在这个信息洪流中找到一个能够自由表达自我、分享见解与经验的平台。博客作为一种个人或团体发布内容的网络日志形式,应运而生并迅速风靡全球。

二.项目简介

本项目基于SSM框架实现,包含4个界面:登录界面、博客发表界面、博客列表界面以及博客详情界面。
登录后即可查看自己已发布的博客,也可以发布博客,通过使用Selenium定位web元素、对获取到的元素进行操作等,对个人博客系统进行测试,测试的核心内容包括用户登录、博客列表、用户信息、查看全文、详情页内容、发布博客、退出账号等。该博客系统可以实现发布个人博客,记录博客发布日期、时间、标题、博客发布者等信息。

三.功能测试

1. 登录界面
用户名与密码已存储在数据库中,登录成功即可跳转到列表页

在这里插入图片描述

在该项目中暂时只存贮了2个用户名和对应的密码:
用户名:zhangsan 密码:123456
用户名:lisi 密码:123456
在这里插入图片描述

如果用户名错误
在这里插入图片描述
如果密码错误
在这里插入图片描述

如果用户名或密码为空
在这里插入图片描述

2.博客列表界面
用用户名:zhangsan 密码:123456登录成功后,来到博客列表界面
在这里插入图片描述

3.博客详情界面
在博客列表界面中,选择任意一个博客对应的按钮:查看全文,就能进入博客详情界面
在这里插入图片描述

4.博客发布界面
在上面3个界面的任意一个界面里点击右上角的按钮“写博客”,就能进入博客发布界面
在这里插入图片描述


四.测试用例

在这里插入图片描述

五.自动化测试脚本(使用Selenium进行Web自动化测试(Python))

1.创建驱动对象

不管我们要对哪个界面进行自动化测试,第一步就是要打开浏览器,因此我们将打开浏览器这一步放在一个单独的文件(Utils.py)中(这里我们创建的是edge浏览器驱动的对象)。有时我们想知道自动化测试的结果是什么。就可以截图显示

步骤:

  1. 首先定义一个类Driver
  2. 定义一个类成员和构造函数以及有关截图的函数
import datetime
import os.path
import sys
import time
from selenium import webdriver
from webdriver_manager.microsoft import EdgeChromiumDriverManager
from selenium.webdriver.edge.service import Service as EdgeServiceclass Driver:driver=""def __init__(self):self.driver=webdriver.Edge(service=EdgeService(EdgeChromiumDriverManager().install()))# 隐式等待self.driver.implicitly_wait(3)# 截图def getScreenShot(self):dirname=datetime.datetime.now().strftime("%Y-%m-%d")# 如果不存在../images/dirname,就创建该目录if not os.path.exists("../images/"+dirname):os.mkdir("../images/"+dirname)filename=datetime.datetime.now().strftime("%Y-%m-%d-%H%M%S")# 能知道调用本接口的接口名funcname=sys._getframe().f_back.f_code.co_name+"-"# 目标:../images/2025-3-14/接口名-2025-3-14-202101.pngself.driver.save_screenshot("../images/"+dirname+"/"+funcname+filename+".png")# 创建Driver对象
BolgDriver=Driver()

创建1个运行文件RunTest(即程序的主入口),运行各个测试类中的函数

if __name__=="__main__":

2.登录界面

  1. 创建博客登录的测试文件BlogLogin.py
  2. 引入Utils文件(需要浏览器驱动)和其它依赖
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions
from selenium.webdriver.support.wait import WebDriverWaitfrom common.Utils import BolgDriverclass BlogLogin:url=""driver=""def __init__(self):self.url="http://8.137.19.140:9090/blog_login.html"self.driver=BolgDriver.driverself.driver.get(self.url)#正常登录def LoginSucTest(self):#先清空输入框self.driver.find_element(By.CSS_SELECTOR,"#username").clear()self.driver.find_element(By.CSS_SELECTOR,"#password").clear()#输入正确的账号和密码self.driver.find_element(By.CSS_SELECTOR, "#username").send_keys("zhangsan")self.driver.find_element(By.CSS_SELECTOR, "#password").send_keys("123456")self.driver.find_element(By.CSS_SELECTOR, "#submit").click()#查找头像,用户名和github地址self.driver.find_element(By.CSS_SELECTOR,"body > div.container > div.left > div > img")self.driver.find_element(By.CSS_SELECTOR,"body > div.container > div.left > div > h3")self.driver.find_element(By.CSS_SELECTOR,"body > div.container > div.left > div > a")#截图BolgDriver.getScreenShot()#回到登录界面self.driver.back()#异常登录def LoginFailTest(self):# 先清空输入框self.driver.find_element(By.CSS_SELECTOR, "#username").clear()self.driver.find_element(By.CSS_SELECTOR, "#password").clear()# 输入错误的账号self.driver.find_element(By.CSS_SELECTOR, "#username").send_keys("zhang")self.driver.find_element(By.CSS_SELECTOR, "#password").send_keys("123456")self.driver.find_element(By.CSS_SELECTOR, "#submit").click()#出现警告弹窗:用户不存在WebDriverWait(self.driver,3).until(expected_conditions.alert_is_present())alert=self.driver.switch_to.alertassert alert.text=="用户不存在"alert.accept()#截图BolgDriver.getScreenShot()# 输入正确的账号和错误的密码self.driver.find_element(By.CSS_SELECTOR, "#username").clear()self.driver.find_element(By.CSS_SELECTOR, "#password").clear()self.driver.find_element(By.CSS_SELECTOR, "#username").send_keys("zhangsan")self.driver.find_element(By.CSS_SELECTOR, "#password").send_keys("123")self.driver.find_element(By.CSS_SELECTOR, "#submit").click()# 出现警告弹窗:密码错误WebDriverWait(self.driver, 3).until(expected_conditions.alert_is_present())alert = self.driver.switch_to.alertassert alert.text == "密码错误"alert.accept()#截图BolgDriver.getScreenShot()# 输入空的账号self.driver.find_element(By.CSS_SELECTOR, "#username").clear()self.driver.find_element(By.CSS_SELECTOR, "#password").clear()self.driver.find_element(By.CSS_SELECTOR, "#password").send_keys("123456")self.driver.find_element(By.CSS_SELECTOR, "#submit").click()# 出现警告弹窗:账号或密码不能为空WebDriverWait(self.driver, 3).until(expected_conditions.alert_is_present())alert = self.driver.switch_to.alertassert alert.text == "账号或密码不能为空"alert.accept()#截图BolgDriver.getScreenShot()# 输入空的密码self.driver.find_element(By.CSS_SELECTOR, "#username").clear()self.driver.find_element(By.CSS_SELECTOR, "#password").clear()self.driver.find_element(By.CSS_SELECTOR, "#username").send_keys("zhang")self.driver.find_element(By.CSS_SELECTOR, "#submit").click()# 出现警告弹窗:账号或密码不能为空WebDriverWait(self.driver, 3).until(expected_conditions.alert_is_present())alert = self.driver.switch_to.alertassert alert.text == "账号或密码不能为空"alert.accept()#截图BolgDriver.getScreenShot()

RuntTest.py

from tests import BlogLoginfrom common.Utils import BolgDriverif __name__=="__main__":BlogLogin.BlogLogin().LoginSucTest()BlogLogin.BlogLogin().LoginFailTest()BolgDriver.driver.quit()

运行成功
在这里插入图片描述

3.博客列表界面

  1. 创建博客列表的测试文件BlogList.py
  2. 引入Utils文件(需要浏览器驱动)和其它依赖
from selenium.webdriver.common.by import Byfrom common.Utils import BolgDriverclass BlogList:url = ""driver = ""def __init__(self):self.url = "http://8.137.19.140:9090/blog_list.html"self.driver = BolgDriver.driverself.driver.get(self.url)# 正常登录def BlogListByLogin(self):# 查找头像,用户名和github地址self.driver.find_element(By.CSS_SELECTOR, "body > div.container > div.left > div > img")self.driver.find_element(By.CSS_SELECTOR, "body > div.container > div.left > div > h3")self.driver.find_element(By.CSS_SELECTOR, "body > div.container > div.left > div > a")# 截图BolgDriver.getScreenShot()# 异常登录def BlogListByNotLogin(self):self.driver.back()# 截图BolgDriver.getScreenShot()#如果成功回到登录界面,那么找不到头像self.driver.find_element(By.CSS_SELECTOR,"body > div.container > div.left > div > img")

RuntTest.py

from common.Utils import BolgDriver
from tests import BlogLogin
from tests import BlogListif __name__=="__main__":BlogLogin.BlogLogin().LoginSucTest()BlogList.BlogList().BlogListByLogin()BolgDriver.driver.quit()

运行成功
在这里插入图片描述

4.博客详情页

  1. 创建博客列表的测试文件BlogDetail.py
  2. 引入Utils文件(需要浏览器驱动)和其它依赖
from selenium.webdriver.common.by import Byfrom common.Utils import BolgDriverclass BlogDetail:url = ""driver = ""def __init__(self):self.url = "http://8.137.19.140:9090/blog_detail.html?blogId=24712"self.driver = BolgDriver.driverself.driver.get(self.url)def BlogDeatilByLogin(self):# 查找博客标题、时间、内容和“编辑”“删除”按钮self.driver.find_element(By.CSS_SELECTOR,"body > div.container > div.right > div > div.title")self.driver.find_element(By.CSS_SELECTOR,"body > div.container > div.right > div > div.date")self.driver.find_element(By.CSS_SELECTOR,"#h2-u5728u8FD9u91CCu5199u4E0Bu4E00u7BC7u535Au5BA2")self.driver.find_element(By.CSS_SELECTOR,"body > div.container > div.right > div > div.operating > button:nth-child(1)")self.driver.find_element(By.CSS_SELECTOR,"body > div.container > div.right > div > div.operating > button:nth-child(2)")# 截图BolgDriver.getScreenShot()

RuntTest.py

from common.Utils import BolgDriver
from tests import BlogLogin
from tests import BlogList
from tests import BlogDetailif __name__=="__main__":BlogLogin.BlogLogin().LoginSucTest()BlogList.BlogList().BlogListByLogin()BlogDetail.BlogDetail().BlogDeatilByLogin()BolgDriver.driver.quit()

运行成功
在这里插入图片描述

5.博客发布界面

  1. 创建博客列表的测试文件BlogDetail.py
  2. 引入Utils文件(需要浏览器驱动)和其它依赖
from selenium.webdriver.common.by import Byfrom common.Utils import BolgDriverclass BlogPublish:url = ""driver = ""def __init__(self):self.url = "http://8.137.19.140:9090/blog_edit.html"self.driver = BolgDriver.driverself.driver.get(self.url)# 正常登录def BlogPublishByLogin(self):# 填写博客标题,按“发布文章“按钮self.driver.find_element(By.CSS_SELECTOR,"#title").send_keys("aa")self.driver.find_element(By.CSS_SELECTOR,"#submit").click()# 如果博客列表的最下面的博客标题是”aa“,说明发布成功text=self.driver.find_element(By.CSS_SELECTOR,"body > div.container > div.right > div:nth-child(792) > div.title").textassert text=="aa"# 截图BolgDriver.getScreenShot()# 异常登录def BlogPublishByNotLogin(self):self.driver.back()# 截图BolgDriver.getScreenShot()# 如果成功回到登录界面,那么找不到头像self.driver.find_element(By.CSS_SELECTOR, "body > div.container > div.left > div > img")

RuntTest.py:正常登录时

from common.Utils import BolgDriver
from tests import BlogLogin
from tests import BlogList
from tests import BlogDetail
from tests import BlogPublishif __name__=="__main__":BlogLogin.BlogLogin().LoginSucTest()BlogList.BlogList().BlogListByLogin()BlogDetail.BlogDetail().BlogDeatilByLogin()BlogPublish.BlogPublish().BlogPublishByLogin()BolgDriver.driver.quit()

运行成功
在这里插入图片描述

RuntTest.py:异常登录时,返回登录界面

from common.Utils import BolgDriver
from tests import BlogLogin
from tests import BlogList
from tests import BlogDetail
from tests import BlogPublishif __name__=="__main__":BlogLogin.BlogLogin().LoginSucTest()BlogPublish.BlogPublish().BlogPublishByNotLogin()BolgDriver.driver.quit()

运行失败在这里插入图片描述

6.注销测试

from selenium.webdriver.common.by import Byfrom common.Utils import BolgDriverclass LogOut:url = ""driver = ""def __init__(self):self.url = "http://8.137.19.140:9090/blog_detail.html?blogId=24713"self.driver = BolgDriver.driverself.driver.get(self.url)def LogOutTest(self):# 点击右上角的“注销”按钮self.driver.find_element(By.CSS_SELECTOR,"body > div.nav > a:nth-child(6)").click()# 如果当前页面的网址是登陆界面的网址,说明注销成功curUrl=self.driver.current_urlassert curUrl=="http://8.137.19.140:9090/blog_login.html"

RuntTest.py

from common.Utils import BolgDriver
from tests import BlogLogin
from tests import BlogList
from tests import BlogDetail
from tests import BlogPublish
from tests import Logoutif __name__=="__main__":BlogLogin.BlogLogin().LoginSucTest()BlogDetail.BlogDetail().BlogDeatilByLogin()Logout.LogOut().LogOutTest()BolgDriver.driver.quit()

在这里插入图片描述

六.环境准备

系统:windows11

浏览器:版本 122.0.2365.92 (正式版本) (64 位)

测试工具:
PyCharm Community Edition 2024.3.4、
​​​Selenium4.9.0 、
WebDriver-manager 4.0.2

七.测试总结

Selenium 支持多种主流浏览器,如 Chrome、Firefox、Safari、Edge 等。 这意味着我们可以使用相同的测试脚本在不同的浏览器上执行测试。本次测试对个人的博客系统的登录,查看全文,发布博客、注销登录等核心功能进行测试。并用selenium编写自动化测试脚本,使某些测试任务大幅度缩短测试周期,比手动测试更高效。避免了手动测试中可能出现的人为疏忽和错误。

总而言之,自动化测试是一种有效的测试方法,可以提高测试效率、降低测试成本、提高测试覆盖率。 但是,自动化测试并非万能的,需要根据具体的项目情况选择合适的测试方法,并合理地利用自动化测试工具。

http://www.dtcms.com/a/583386.html

相关文章:

  • 哈尔滨+做网站公司有哪些wordpress自定义DIV样式
  • 电子商务网站建设汇报PPT网站右下角广告代码
  • 在凡科上做的网站无法加载出来网站开发的缓存技术
  • GUI自动化测试--自动化测试的意义和应用场景
  • ZCC7151S替代LTC7151S:高效静默,赋能未来电源设计——20V/15A同步降压稳压解决方案​
  • cocos打包的web-mobile(web手机端)在浏览器无法运行的原因和解决方法
  • 多种时间序列预测算法的MATLAB实现
  • 营销网站和展示型网站昆明做网站哪家公司好
  • 网站建设w亿玛酷1负责手机做炫光图头像的网站
  • 【JAVA虚函数与多态的底层实现】
  • 只做男士衬衫的网站建设网站公司怎么分工
  • 麦德龙网站建设目标网站页面布局用什么做
  • 3.1、Python-列表
  • 网站设计师培训做网站域名怎么选有利于seo
  • 餐饮网站建设方案书炫客网站建设
  • ABB RobotStudio许可功能premium不可用(从布局创建系统不成功)解决办法
  • 网站设置反爬虫的主要原因建筑网格布是用什么材料
  • 滕州网站建设 助企网络做相册网站logo
  • 潍坊网站建设 世纪环球16楼大航母网站建设在哪里
  • 九江网站网站建设兰州网站制作要多少钱
  • 东莞做网站公司首选高端建站方案
  • 一个人是否可以做公司网站把公司建设成为 现代化企业
  • 2025-11-07 ZYZ28-NOIP模拟赛-Round3 hetao1733837的record
  • 零知IDE——STM32F407VET6驱动SHT40温湿度传感器与ST7789实现智能环境监测系统
  • 中国人做的比较好的shopify网站公司网页怎么关闭
  • 大语音模型有什么作用和特点
  • 网站建设公司的市场定位专业的移动网站建设公
  • wordpress 选择插件南昌网络排名优化
  • wordpress 注册 密码专业搜索引擎seo公司
  • mipi dsi图像