• 小熊听书项目的测试


    目录

    一.测试用例的详细测试用例

    二、测试的开发与执行

    1.用python脚本对项目进行自动化测试

    1.1对首页进行的测试

    1.2对登陆、注册页面进行的测试

    三、小熊听书项目测试用例:

     测试总结:


    一.测试用例的详细测试用例

    测试环境;

    操作系统:Windows 10家庭版

    项目运行:IDEA2021.3.2、maven、JDK1.8

    浏览器:Chorme、Edge、FireFox

    自动化脚本环境:PyCharm2021.2.3

    网络:127.0.0.1:8080

    测试技术: 主要采用自动化测试以及手工测试

    测试人员: 我

    二、测试的开发与执行

    1.用python脚本对项目进行自动化测试

    1.1对首页进行的测试

    场景1:各功能是否都有响应

    预期结果:都有响应

    部分执行界面展示如下:

    注册界面

    音频录制界面

    实际结果:创作中心各个功能都可以产生正确的响应,与预期结果相同

    代码如下:

    1. #首页的测试用例
    2. driver = webdriver.Firefox()
    3. driver.maximize_window()
    4. driver.get("http://127.0.0.1:8080/studio/index.html")
    5. time.sleep(3)
    6. driver.find_element_by_xpath("/html/body/div[1]/div[1]/a[1]").click()
    7. time.sleep(6)
    8. driver.find_element_by_xpath("/html/body/div[1]/div[2]/a[2]").click()
    9. time.sleep(3)
    10. driver.find_element_by_xpath("/html/body/div[1]/div[1]/a[3]").click()
    11. time.sleep(3)
    12. driver.find_element_by_xpath("/html/body/div[3]/div[3]/a[1]").click()
    13. time.sleep(3)
    14. driver.find_element_by_xpath("/html/body/div[3]/div[3]/a[2]").click()

    1.2对登陆、注册页面进行的测试

    场景1:输入账号和密码是否可以正常登录,进行页面的跳转

    预期结果:页面实现正常跳转

     实际结果:页面正常跳转,与预期结果相符

    代码如下:

    1. #登录界面,输入密码
    2. driver = webdriver.Firefox()
    3. driver.maximize_window()
    4. driver.get("http://127.0.0.1:8080/studio/user/login.html")
    5. time.sleep(3)
    6. #输入账户名
    7. driver.find_element_by_xpath("/html/body/div[2]/form/input[1]").send_keys("王小熊")
    8. time.sleep(3)
    9. #输入密码
    10. driver.find_element_by_xpath("/html/body/div[2]/form/input[2]").send_keys("123")
    11. time.sleep(3)
    12. driver.find_element_by_id("submit").click()
    13. time.sleep(6)

    场景2:不输入账号和密码是否不会显示任何的音频信息

    预期结果:页面跳转,但不显示任何信息

    实际结果:浏览器呈现了空列表页,与预期结果相同

     本场景与上面代码相似,不做展示 

    场景3.上传音频文件是否可以成功

    场景4:输入文本文件、pdf、word、png等类型的文件是否可以上传成功。

    预期结果:只有audio/mpeg类型的文件可以运行成功

    实际结果:文件上传失败,与预期结果一致

    场景5:一次上传多个音频文件

    预期结果,多次上传只会上传最后一个文件

    实际结果:文件上传失败,一次只可上传一个音频。

    场景3、4、5的自动化测试脚本如下

    1. #文件上传
    2. driver = webdriver.Firefox()
    3. driver.maximize_window()
    4. driver.get("http://127.0.0.1:8080/studio/user/login.html")
    5. time.sleep(3)
    6. #输入账户名
    7. driver.find_element_by_xpath("/html/body/div[2]/form/input[1]").send_keys("王小熊")
    8. time.sleep(3)
    9. #输入密码
    10. driver.find_element_by_xpath("/html/body/div[2]/form/input[2]").send_keys("123")
    11. driver.find_element_by_id("submit").click()
    12. driver.find_element_by_xpath("/html/body/div[1]/div[2]/a[1]").click()
    13. time.sleep(3)
    14. driver.find_element_by_name("title").send_keys("stay")
    15. time.sleep(3)
    16. #file_path="file:///"+os.path.abspath('C:\\Users\\王小熊\\Documents\\Tencent Files\\1048405649\\听书项目\\src\\main\\webapp\\studio\\track\\stay with me.mp3')
    17. # driver.get(file_path)
    18. driver.find_element_by_name("track").send_keys('C:\\Users\\王小熊\\Documents\\Tencent Files\\1048405649\\听书项目\\src\\main\\webapp\\studio\\track\\stay with me.mp3')
    19. time.sleep(3)
    20. #driver.find_element_by_name("track").send_keys('"C:\\Users\\王小熊\\Documents\\Tencent Files\\1048405649\\听书项目\\src\\main\\webapp\\studio\\track\\测试音频.ogg"')
    21. time.sleep(10)
    22. driver.find_element_by_tag_name("button").click()
    23. time.sleep(10)
    24. driver.quit()

    场景6:复选框是否可以选中,并且释放

     自动化测试脚本如下

    1. #复选框测试
    2. driver = webdriver.Firefox()
    3. driver.maximize_window()
    4. driver.get("http://127.0.0.1:8080/studio/user/login.html")
    5. time.sleep(3)
    6. #输入账户名
    7. driver.find_element_by_xpath("/html/body/div[2]/form/input[1]").send_keys("王小熊")
    8. time.sleep(3)
    9. driver.find_element_by_xpath("/html/body/div[2]/form/input[2]").send_keys("123")
    10. driver.find_element_by_id("submit").click()
    11. driver.find_element_by_xpath("/html/body/div[1]/div[3]/a[2]").click()
    12. time.sleep(3)
    13. driver.find_element_by_xpath("/html/body/div[3]/div/table/tbody[3]/tr/td[5]/a").click()
    14. time.sleep(3)
    15. #把滚动条拉到最低端
    16. js="document.documentElement.scrollTop=10000"
    17. driver.find_element_by_id("add").click()
    18. driver.find_element_by_xpath("/html/body/div[3]/form/div/div[2]/input").click()
    19. time.sleep(3)
    20. driver.find_element_by_xpath("/html/body/div[3]/form/div/div[3]/input").click()
    21. time.sleep(3)
    22. driver.find_element_by_xpath("/html/body/div[3]/form/div/div[4]/input").click()
    23. time.sleep(3)
    24. driver.find_element_by_tag_name("button").click()
    25. driver.quit()

     

    小熊听书项目测试用例:

    编号具体内容测试数据步骤预期结果实际结果

    界面测试

    1界面是否成功显示浏览器登录页面127.0.0.1:8080成功显示成功显示
    2布局是否美观易用

    用户名:王小熊

    密码:123

    浏览器登录页面http://127.0.0.1:8080/studio/user/login.html各功能都有响应,且美观易用一致
    3提示信息是否显示正确

    用户名:王小熊

    密码:123

    登录之后,检查各页面的提示信息信息提示正确与预期结果一致
    4图片能否完整显示

    用户名:王小熊

    密码:123

    登录浏览器之后检查各跳转页面图片都完整显示,没有错误与预期结果一致
    5各个界面的显示框的大小、字体是否一致

    用户名:王小熊

    密码:123

    登录浏览器之后检查各跳转页面各显示框大小一致,字体呈现符合设计与预期结果一致
    6录制音频是否可以正常播放

    用户名:王小熊

    密码:123

    进行音乐的上传,并在音频列表页进行收听音频正常播放,歌名与歌曲一致与预期结果一致
    7上传的音频是否可以正常播放

    用户名:王小熊

    密码:123

    进行音频录制并上传,在音频列表页进行收听音频正常播放,歌曲与歌名一致与预期结果一致
    8专辑列表页是否可以进行切歌

    用户名:王小熊

    密码:123

    浏览器登录页面,进入专辑播放,收听专辑,并进行专辑歌曲的切换音频可以进行切换与预期结果一致
    9界面的自适应测试:浏览器大小发生改变,界面是否可以自适应显示。浏览器登录页面,点击浏览器有右上角,缩小窗口,查看是否影响用户操作浏览器页面随着缩小产生了自动的调整,不影响用户使用与预期结果一致
    功能测试
    1输入用户名密码,是否可以登录成功,并实现网页的跳转

    用户名:王小熊

    密码:123

    1.写自动化测试脚本

    2.登录页面,查看是否登陆成功

    3.查看页面是否跳转

    登录成功,并实现跳转与预期结果一致
    2当用户名为空时,页面跳转之后,是否显示空的界面

    用户名:

    密码:123

    1.写自动化测试脚本

    2.登录页面,查看是否登陆成功

    3.查看页面内容

    列表页为空与预期结果一致

    3

    当用户名时,页面跳转之后,是否提示用户输入密码

    用户名:王小熊

    密码:

    1.写自动化测试脚本

    2.登陆页面,查看是否登录成功

    3.查看有无提示信息

    有提示信息与预期结果一致
    4注销之后提示注销成功

    用户名:王淇

    密码:123

    点击注销提示注销成功与预期结果一致
    5是否可以一次上传多个文件

    用户名:王淇

    密码:123

    准备多个音频文件

    1.登录界面

    2.写自动化测试脚本

    3.运行

    4.查看结果

    不可以,一次只可上传一个文件与预期结果一致
    6可以上传的文件最大是多少KB

    用户名:王淇

    密码:123

    准备多个音频文件(大小不一,要有很大的文件100M)

    1.准备很多个容量大小不同,区间很大的文件

    2.写自动化测试脚本进行测试

    3.记录最大上传多少kb

    最大可以上传1000kb以内(之后对数据库进行了扩容,可以容纳100M)与预期结果不一致(已修复)
    7音频是否可以成功录制,并在列表页进行显示

    用户名:王淇

    密码:123

    1.登录界面

    2.录制音频并上传

    3.查看列表页中的文件有无刚才录制的音频

    录制,并上传、显示成功与预期结果一致
    8专辑是否可以创建成功,并且进行显示

    用户名:王淇

    密码:123

    专辑的封面图

    1.登陆界面

    2.创建专辑,上传封面图

    3.查看专辑列表是否有新创建的专辑

    专辑创建成功并封面图上传成功与预期结果一致
    9专辑音频是否可以绑定成功,并给予一定的提示

    用户名:王淇

    密码:123

    1.登录界面

    2.点击专辑列表进行音频的绑定

    3.查看绑定之后的响应

    绑定之后提示绑定成功与预期结果一致
    10上传除音频文件之外的文件,是否可以成功

    用户名:王淇

    密码:123

    准备pdf,word,png等文件

    1.登录界面

    2.准备各种各样的文件

    3.上传文件,并查看结果

    上传失败与预期结果一致
    11专辑复选框是否可以多选

    用户名:王淇

    密码:123

    1.准备自动化测试脚本

    2.登陆界面

    3.运行代码

    可以多选与预期结果一致
    12复选框选了之后是否可以取消

    用户名:王淇

    密码:123

    1.准备自动化测试脚本

    2.登陆界面

    3.运行代码

    可以取消与预期结果一致
    13新建专辑并且名字以符号开头专辑名:*王淇1.登录界面,创建新专辑创建成功与预期结果一致
    14新建专辑并且名字以大写字母开头专辑名:angle1.登录界面,创建新专辑创建成功与预期结果一致
    15新建专辑并且名字以大写字母开头专辑:ABC1.登录界面,创建新专辑创建成功与预期结果一致
    16专辑列表是否可以正常见到创建后的专辑创建专辑1.创建成功后,点击创建成功的列表新创建的专辑可以正常显示在列表中与预期结果一致
    17新建专辑列表中的图片是否可以在列表中显示更新准备图片的url创建专辑,查看专辑列表1.新建专辑查看专辑列表创建成功,图片正常显示与预期结果一致
    兼容性测试
    编号具体内容测试数据步骤预期结果实际结果
    1IE浏览器是否可以正常使用此功能下载最常用的IE浏览器登录界面可以正常使用与预期结果一致
    2QQ浏览器是否可以正常使用此功能下载最常用的QQ浏览器登录界面可以正常使用与预期结果一致
    3Chorme浏览器是否可以正常使用此功能下载最常用的Chrome浏览器登录界面可以正常使用与预期结果一致
    4Firefox浏览器是否可以正常使用此功能下载最常用的Chrome浏览器登录界面可以正常使用与预期结果一致
    5.各个浏览器的不同版本测试(全部测试不现实,推荐测试主流的版本。)IE,Chrome,Edge,火狐,360,搜狗,Safari等浏览器的所有主流版本项目运行后用相关浏览器打开127.0.0.1:8080正常访问并运行相关功能未进行测试
    6.Mac系统访问项目Mac笔记本电脑配置好相关环境项目运行后打开127.0.0.1:8080正常访问并运行相关功能未进行测试
    7.Linux系统访问项目虚拟机或者云服务器是Linux系统并且配置好环境项目运行后打开127.0.0.1:8080正常访问并运行相关功能云服务器可以进行部署,之后所有设备访问服务器网址即可
    8.不同环境下的测试各种环境配置完毕后,使用自动化测试各种环境配置完毕后,使用自动化测试正常测试其相关功能未测试
    9运行在不同的电脑上面是否可以正常运行华硕、联想、苹果、华为等硬件以及操作系统不同的电脑上面连接网络之后,登录界面正常运行未测试
    易用性测试
    1界面是否美观,符合用户的操作习惯

    用户名:王淇

    密码:123

    1.打开网页,查看所有界面美观且各功能正常与预期结果一致
    2图片是否有较高的分辨率

    用户名:王淇

    密码:123

    1.打开网页,查看所有界面分辨率较高与预期结果一致
    3各种快捷键是否可以使用(回车、复制、粘贴等)

    用户名:王淇

    密码:123

    1.进入网页,进行操作可以使用与预期结果一致
    4界面使用的文字大小是否适当

    用户名:王淇

    密码:123

    1.打开网页,查看所有界面适当与预期结果一致
    性能测试
    1登录注册页面的响应速度是否大于三秒

    用户名:王淇

    密码:123

    1.记录执行时间小于三秒与预期结果一致
    2文件上传速度是否在舒适区间

    用户名:王淇

    密码:123

    音频文件

    1.上传速度在三秒内在舒适区间与预期结果一致
    3多个用户同时并发的运行是否会造成系统故障准备多个用户1.loadruuner产生多个虚拟用户,对系统进行访问数量过多会发生故障未测试
    4音频、专辑播放的速度是否大于三秒

    用户名:王淇

    密码:123

    1.记录执行时间小于三秒与预期结果一致
    5界面切换是否流畅

    用户名:王淇

    密码:123

    1.打开网页,查看所有界面很流畅与预期结果一致

     三、测试总结:

    1.用户名、密码在没有输入的情况下页面依旧跳转了,需要改变重定向,提示用户正确的输入用户名和密码。

    2.数据库上传较大的音频文件每次都需要执行下面的sql语句,没有解放程序员的双手。

    SET GLOBAL max_allowed_packet = 500 * 1024 * 1024;

    3.安全系数较低,系统容易受到攻击,要加强对密码的加密,以及对密码的复杂程度进行规定。

    4.性能测试需要在上线之后进行完整的测试

     

     

     

  • 相关阅读:
    spring cloud alibaba - seata分布式事务记录
    【数据结构】Golang 实现单链表
    Nginx访问控制与虚拟主机
    Spring Gateway 网关常见配置说明
    【Python】Python中将字符串中的大写字母转换为小写字母,同时将小写字母转换为大写字母
    [Latex]公式编辑,编号、对齐【持】
    Excel·VBA使用ADO合并工作簿
    frp隧道(流量代理)
    MYSQL 移机重装步骤(windows11)
    计算机毕业设计(附源码)python原创网络文学管理系统
  • 原文地址:https://blog.csdn.net/wxx200008/article/details/126551153