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

网站建设捌金手指下拉二八怎么做网站流量赚钱

网站建设捌金手指下拉二八,怎么做网站流量赚钱,自媒体app推广是做什么的,一级造价师准考证打印时间目录 一.博客相关测试用例1.1.博客系统功能背景1.2.博客系统思维导图 二,博客界面测试分析2.1登录界面测试 三、博客功能测试3.1.登陆测试3.2.主页测试 四、博客自动化测试脚本4.1.配置驱动4.2.创建浏览器对象4.3.登陆测试4.3.1登陆成功测试(LoginSucTes…

目录

  • 一.博客相关测试用例
    • 1.1.博客系统功能背景
    • 1.2.博客系统思维导图
  • 二,博客界面测试分析
    • 2.1登录界面测试
  • 三、博客功能测试
    • 3.1.登陆测试
    • 3.2.主页测试
  • 四、博客自动化测试脚本
    • 4.1.配置驱动
    • 4.2.创建浏览器对象
    • 4.3.登陆测试
      • 4.3.1登陆成功测试(LoginSucTest)
      • 4.3.2登陆失败测试(LoginFalTest)
    • 4.4主页测试
      • 4.4.1写博客
      • 4.4.2主页内容编辑(ListEdiTest)
      • 4.4.3主页内容删除
    • 4.5运行代码
    • 五、BUG分析

一.博客相关测试用例

1.1.博客系统功能背景

博客系统通常具备用户注册、登录、文章发布、编辑、管理、评论互动等功能,同时还提供了丰富的模板和插件,让用户可以根据自己的喜好和需求来定制博客的外观和功能。这些软件的出现,大大降低了博客创建的门槛,使得更多人能够轻松地拥有自己的博客空间。

1.2.博客系统思维导图

为了能够在众多软件中脱颖而出,并且能让用户用的安心以此来获得用户的青睐,从而推动公司的发展,因此一款好的软件一定离不开测试人员通过大量的测试案例来对软件进行BUG分析,对于一款软件简单来说可分为六方面的测试:界面测试、功能测试、安全测试、易用性测试、兼容性测试、性能测试

  • 思维导图

测试案例思维导图
而本章主要对功能测试及界面进行分析

二,博客界面测试分析

2.1登录界面测试

在这里插入图片描述
登录界面的登陆框、用户名、密码、提交等内容与我们编写的思维导图基本一致,符合预期效果,并且提交按钮用绿色框格包围使得用户能更加轻松登录博客。

三、博客功能测试

3.1.登陆测试

  1. 输入错误用户名

在这里插入图片描述

  1. 输入正确用户名和错误密码

在这里插入图片描述

  1. 输入错误用户名正确密码

在这里插入图片描述

  1. 输入正确密码

在这里插入图片描述

  1. 输入正确用户名及正确密码

在这里插入图片描述
通过多次测试用例的输入可以直观发现,密码或用户名为空时会弹出账号或密码不能为空的字样弹窗,而输入错误用户名或错误密码则分别显示用户不存在密码错误等字样弹窗,只有在输入正确用户名和正确密码时才能进入博客主页。

3.2.主页测试

  1. 点击查看全文

在这里插入图片描述

  1. 成功跳转曾经所发表的博客文章,再次点击编辑按钮

在这里插入图片描述

  1. 成功跳转博客编辑页面

在这里插入图片描述

  1. 点击更新文章

在这里插入图片描述

  1. 成功更新

在这里插入图片描述

  1. 点击删除

在这里插入图片描述

  1. 跳出弹窗

在这里插入图片描述

  1. 成功删除

在这里插入图片描述

  1. 点击注销
    在这里插入图片描述
  2. 账号退出且登陆信息清除
    在这里插入图片描述
    人为只能测试极其有限的功能,因此测试人员还需编写测试脚本,通过将大量测试用例交给机器来完善软件功能。

四、博客自动化测试脚本

4.1.配置驱动

Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera,Edge等。
WebDriverManager 是一个开源的 Java 库,用于自动管理 Selenium WebDriver 所需的驱动程序(如 ChromeDriver、GeckoDriver、EdgeDriver 等)。它可以自动下载、设置和维护这些驱动程序,从而简化了 Selenium 测试的配置过程

在pycharm软件的设置中观察是否安装这两个软件包,如果没有可能无法正常驱动打开本地浏览器
在这里插入图片描述

4.2.创建浏览器对象

由于多个功能测试都需要驱动浏览器,因此将其封装成一个类,减少驱动次数造成不必要的浪费,新建一个common文件夹,在untils.py下创建浏览器对象
在这里插入图片描述

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
chrome_path = 'C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe'
driver_path = 'E:\\python_project\\chromedriver-win64\\chromedriver.exe'#创建浏览器对象
class Driver:driver=""def __init__(self):options = webdriver.ChromeOptions()options.binary_location = chrome_path  # 指定本地 Chrome 浏览器路径self.driver = webdriver.Chrome(service=Service(executable_path=driver_path), options=options)#截屏功能def getScreenShot(self):dirname = datetime.datetime.now().strftime('%Y-%m-%d')if not os.path.exists("../images/" + dirname):os.mkdir("../images/" + dirname)filename = sys._getframe().f_back.f_code.co_name + "-" + datetime.datetime.now().strftime('%Y-%m-%d-%H%M%S')+".png"self.driver.save_screenshot(f'../images/{dirname}/' +filename)#实例化Driver
BlogDriver = Driver() 

4.3.登陆测试

url用于获取博客系统网址,get用于进入博客网址

import time
from datetime import datetimefrom selenium.webdriver.common.by import By
#导入驱动浏览器对象
from common.utils import BlogDriver#博客登录
class BlogLogin:url=""driver=""def __init__(self):#打开博客系统self.url="http://8.137.19.140:9090/blog_login.html"self.driver=BlogDriver.driverself.driver.get(self.url)

4.3.1登陆成功测试(LoginSucTest)

  1. find_element()函数通过By.CSS_SELECTOR(选择器查找)分别找出用户名及密码输入框元素。

  2. send_keys()分别输入用户名及密码。

  3. 找出提交按钮元素并用click()函数模拟鼠标点击。

  4. time.sleep(2)强制等待2秒,(脚本运行速度过快可能导致还未出现弹窗便进行下一步操作导致)。

  5. back()返回上一步操作(登陆页面)。

    def LoginSucTest(self):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()time.sleep(2)self.driver.find_element(By.CSS_SELECTOR,"body > div.container > div.left > div > h3")self.driver.back()

没有等待的报错
在这里插入图片描述

4.3.2登陆失败测试(LoginFalTest)

  1. 输入用户名及密码操作和登陆成功测试相同,不同的是如何判断登陆失败,一般登陆失败会出现提示弹窗,然而弹窗元素无法定位,必须通过switch_to.alert切换弹窗模式并通过accept()关闭弹窗
  2. 判断登陆失败只需在脚本关闭弹窗后搜索是否登陆界面信息,如通过text()函数获取登陆字样元素文本信息,并通过assert断言是否存在,如不存在则会报错

在这里插入图片描述

    def LoginFalTest(self):#用户名正确密码错误self.driver.find_element(By.CSS_SELECTOR, "#username").send_keys("zhangsan")self.driver.find_element(By.CSS_SELECTOR, "#password").send_keys("12345")self.driver.find_element(By.CSS_SELECTOR, "#submit").click()time.sleep(2)#等待弹窗#切换弹窗模式alert=self.driver.switch_to.alert#关闭弹窗alert.accept()#获取登陆文本信息text=self.driver.find_element(By.CSS_SELECTOR,"body > div.container-login > div > h3").text#断言是否还处于登录界面assert text=="登陆"#清除用户名及密码信息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()time.sleep(2)  # 等待弹窗# 切换弹窗模式alert = self.driver.switch_to.alert# 关闭弹窗alert.accept()# 获取登陆文本信息text = self.driver.find_element(By.CSS_SELECTOR, "body > div.container-login > div > h3").text# 断言是否还处于登录界面assert text == "登陆"# 清除用户名及密码信息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("")self.driver.find_element(By.CSS_SELECTOR, "#password").send_keys("123456")self.driver.find_element(By.CSS_SELECTOR, "#submit").click()time.sleep(2)  # 等待弹窗# 切换弹窗模式alert = self.driver.switch_to.alert# 关闭弹窗alert.accept()# 获取登陆文本信息text = self.driver.find_element(By.CSS_SELECTOR, "body > div.container-login > div > h3").text# 断言是否还处于登录界面assert text == "登陆"self.driver.quit()

4.4主页测试

4.4.1写博客

  1. 点击主页写博客按钮
  2. 输入标题,点击发布
  3. 断言是否发布成功
    def ListTest(self):self.driver.implicitly_wait(5)#点击写博客按钮self.driver.find_element(By.CSS_SELECTOR,"body > div.nav > a:nth-child(5)").click()time.sleep(2)#填写标题self.driver.find_element(By.CSS_SELECTOR,"#title").send_keys('博客主页测试')#点击发布self.driver.find_element(By.CSS_SELECTOR,"#submit").click()text=self.driver.find_element(By.CSS_SELECTOR,"body > div.container > div.right > div:nth-child(60) > div.title").textBlogDriver.getScreenShot()#断言标题是否发布成功assert text=="博客主页测试"

4.4.2主页内容编辑(ListEdiTest)

  1. 选择任意一篇博客内容,点击查看全文,可以对已经发布的博客进行编辑
  2. 找出编辑按钮元素并点击
  3. 更新博客内容并点击发布后,可以通过获取我们更新的博客标题.text,通过断言判断是否更新成功

在这里插入图片描述

 def ListEdiTest(self):self.driver.implicitly_wait(2)time.sleep(2)#强制等待页面渲染#任选一篇博客self.driver.find_element(By.CSS_SELECTOR,"body > div.container > div.right > div:nth-child(2) > a").click()#点击编辑按钮self.driver.find_element(By.CSS_SELECTOR,"body > div.container > div.right > div > div.operating > button:nth-child(1)").click()time.sleep(2)#强制等待页面渲染#清空原有博客标题self.driver.find_element(By.CSS_SELECTOR,"#title").clear()#更新博客self.driver.find_element(By.CSS_SELECTOR, "#title").send_keys('博客测试')#点击提交self.driver.find_element(By.CSS_SELECTOR,"#submit").click()text=self.driver.find_element(By.CSS_SELECTOR,"body > div.container > div.right > div:nth-child(2) > div.title").texttime.sleep(1)#添加截图BlogDriver.getScreenShot()#断言是否更新成功assert text=='博客测试'

4.4.3主页内容删除

  1. 任选一篇博客内容保存标题
  2. 点击查看全文,查找删除元素并点击
  3. 切换弹窗模式,确定删除博客内容
  4. 断言前后标题是否相同,删除成功
    def ListDelTest(self):self.driver.implicitly_wait(2)#删除前截屏BlogDriver.getScreenShot()#删除前标题text1 = self.driver.find_element(By.CSS_SELECTOR,"body > div.container > div.right > div:nth-child(2) > div.title").text#点击查看全文self.driver.find_element(By.CSS_SELECTOR,"body > div.container > div.right > div:nth-child(2) > a").click()#点击删除self.driver.find_element(By.CSS_SELECTOR,"body > div.container > div.right > div > div.operating > button:nth-child(2)").click()#切换弹窗模式alert=self.driver.switch_to.alertalert.accept()#删除后标题text2=self.driver.find_element(By.CSS_SELECTOR,"body > div.container > div.right > div:nth-child(2) > div.title").text#断言是否删除assert not text1==text2#删除后截屏BlogDriver.getScreenShot()

4.5运行代码

from common.utils import BlogDriver
from test import BlogLogin
from test import BlogList
if __name__ == "__main__":# 登陆失败BlogLogin.BlogLogin().LoginFalTest()#成功登陆BlogLogin.BlogLogin().LoginSucTest()#写博客BlogList.BlogList().ListTest()#编辑博客BlogList.BlogList().ListDelTest()#删除博客BlogList.BlogList().ListDelTest()#退出BlogDriver.driver.quit()

五、BUG分析

  1. 虽然用特殊符合隐藏用户密码保证了用户信息安全,但缺少显示密码可见功能,当用户设置的密码比较繁琐时,并不利于用户正确输入密码。
  2. 在写博客并发表后,博客内容更新是从下往上更新不便查找更新内容。
  3. 少数博客发表后出现不可编辑及删除功能。
http://www.dtcms.com/a/509904.html

相关文章:

  • 自已做的网站怎么做域名解析做市场调查的网站
  • 做微视频的网站建设网站需要哪些备案
  • 百度只更新快照不收录网站宜城市城乡建设局网站
  • 网站流量如何转化为钱互联网行业未来发展趋势
  • 企业网站建设流程图wordpress 字体颜色
  • 杨浦网站建设_网站外包wordpress 虾米音乐播放器
  • 网站备案的作用为什么要用h5建站
  • 网站没收录的几大原因江西南昌网站建设服务
  • 网站搭建需要什么如何用手机免费创建网站
  • 青岛网站设计企业上市公司网站维护
  • 网站背景图片优化网站开发用不用写交互
  • 云盘可以做网站吗网站制作多少钱方案
  • 网站建设域名和空间续费网站首页seo关键词布局
  • 淘宝 网站建设教程视频教程煤炭建设协会官方网站
  • 微商城网站建设平台天津建设局网站
  • 可以发描文本的网站网站logo设计创意
  • 美工怎么做网站效果图中国企业集成网网址
  • 建立网站的步骤和费用学校网站建设模板
  • 签证网站建设大楼物流公司网站源码
  • 如何做网站进行推广网站空间数据丢失
  • 网站建设包含以下哪些建设阶段威海seo优化公司
  • 问答论坛网站建设品牌形象设计的意义
  • 西安网站建设开发公司织梦系统如何做网站地图
  • 湖南企业网站营销设计wordpress toptheme
  • 建网站需要了解哪些网站建设知识wordpress 段代码
  • php能开发大型网站怎样制作自己网站
  • 怀宁县住房和建设局网站网站布局方案
  • git 网站开发应用企业网站建设与管理作业
  • 网站开发 网站建设一个ip上绑多个网站
  • 网站举报在哪举报办公管理系统oa