Skip to content

Wuyunfan-BUPT/WebUITest

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

广发招聘页面测试
  • 测试工具

    • 测试语言:python
    • 测试框架:selenium、pytest
  • 运行方式

    直接运行run.py

  • 广发招聘页面功能/需求介绍

    • 页面菜单链接(点击菜单栏实现页面切换/跳转),具体包括:

      菜单栏项 执行前提 点击后效果 是否产生新窗口
      首页 首页面,点击后仍然是首页面
      认识广发 跳转到[认识广发]介绍页
      认识广发/公司概况 鼠标必须悬停在[认识广发]项上才会显示、可点击 跳转到[公司概况]介绍页
      认识广发/企业文化 鼠标必须悬停在[认识广发]项上才会显示、可点击 跳转到[企业文化]介绍页
      认识广发/部门介绍 鼠标必须悬停在[认识广发]项上才会显示、可点击 跳转到[部门介绍]介绍页
      人在广发 跳转到[人在广发]介绍页
      人在广发/员工心声 鼠标必须悬停在[员工心声]项上才会显示、可点击 跳转到[员工心声]介绍页
      人在广发/职业发展 鼠标必须悬停在[职业发展]项上才会显示、可点击 跳转到[职业发展]介绍页
      人在广发/人才培养 鼠标必须悬停在[人才培养]项上才会显示、可点击 跳转到[人才培养]介绍页
      人在广发/福利关怀 鼠标必须悬停在[福利关怀]项上才会显示、可点击 跳转到[福利关怀]介绍页
      人在广发/广发快照 鼠标必须悬停在[广发快照]项上才会显示、可点击 跳转到[广发快照]介绍页
      社会招聘 跳转到[社会招聘]介绍页
      2022暑期实习 跳转到[2022暑期实习]介绍页
      实习生招聘 跳转到[实习生招聘]介绍页
      个人中心 跳转到[个人中心]介绍页
      登录 跳转到[注册]介绍页
      注册 跳转到[登录]介绍页
    • 登录页功能

      前提条件 执行效果
      成功登录 输入正确的用户名、密码、验证码、选中 [我已阅读并同意]框 切换到登录页面,右上角有退出选项
      失败登录 没有输入/输入错误 邮箱地址或登录密码或验证码 为用户提示相关的信息(具体信息看测试用例)
      其他链接 点击[注册用户]、[忘记密码]、[换一种]、[协议]会自动跳转到对应的页面
    • 注册页功能

      前提条件 执行效果
      注册成功 输入正确的信息 切换到个人中心页面
      注册失败 输入错误的信息 提示相关的错误信息条目(详细请见测试用例)
      其他链接 点击[换一种]、[广发互联网协议]会跳转到不同的界面
  • 运行方式:

    • 运行所有测试: run.py。
    • 只允许某个page测试:只需要修改pytest.ini配置文件,然后运行 run.py。
    • 如果想测试完成后自动发送邮件,请设置: config/config.ini中的isSendEmail=Triue。
  • 需求分析

    ​ 测试广发招聘页面,包括的[首页]、[认识广发]、[人在广发]、[社会招聘]、[2022暑期实习]、[实习生招聘]、[个人中心]、[登录]、[注册] 菜单栏功能。按照功能特征可分为以下几个部分:

    • 测试点击跳转的功能。比如:[首页]/[社会招聘]、[2022暑期实习]、[实习生招聘]、[个人中心]、[登录]、[注册]

    • 测试鼠标悬浮才会显示并可点击的功能。即:[认识广发]·[公司概况、企业文化、部门介绍],[人在广发]·[员工心声、职业发展、人才培养、福利关怀、广发快照]

    • 测试登录页功能。即[登录]页面,包括正常登录、错误登录检测等,以及登录页其他选项。

    • 测试注册页功能。即[注册]页面,包括正常注册、数据不合规等,以及注册页其他选项。

    • 设置断言、自动生成测试报告并发送邮件。

  • 测试用例。

    根据需求分析,编写测试用例,分别如下所示。

    • 点击跳转页面功能。

      此项共有7个测试用例。

    跳转成功的结果
    首页 有首页中部有 [广发人才 ]信息
    社会招聘 菜单栏下面有 [社会招聘] 信息
    2022暑期实习 菜单栏下面有 [招聘公告] 这个信息
    实习生招聘 菜单栏下面有 [实习生招聘] 这个信息
    个人中心 菜单栏下面有 [用户登录] 这个信息
    登录 菜单栏下面有 [用户登录] 这个信息
    注册 菜单栏下面有 [用户注册] 这个信息
    • 测试鼠标悬浮才会显示并可点击的功能。

      此项共有8+12=20个测试用例。

    是否鼠标悬浮 预期结果
    认识广发 菜单栏下面有 [认识广发] 这个信息,说明页面跳转成功
    认识广发 菜单栏下面有 [认识广发] 这个信息,说明页面跳转成功
    企业文化 菜单栏下面有 [广发人才] 这个信息,,说明还停留在[首页],页面跳转失败
    企业文化 菜单栏下面有 [公司简介] 这个信息,说明跳转成功
    部门介绍 菜单栏下面有 [广发人才] 这个信息,说明还停留在[首页],选项无法选中,页面跳转失败
    部门介绍 菜单栏下面有 [部门介绍] 这个信息,说明跳转成功
    公司概况 菜单栏下面有 [广发人才] 这个信息,说明还停留在[首页],无法选中,页面跳转失败
    公司概况 菜单栏下面有 [公司简介] 这个信息,说明跳转成功
    附:[公司概况]有重新打开页面的功能 该选项需要切换窗口获取信息,然后再跳转回去
    鼠标悬浮 预期结果
    人在广发 菜单栏下面有 [人在广发] 这个信息,说明页面跳转成功
    人在广发 菜单栏下面有 [人在广发] 这个信息,说明页面跳转成功
    员工心声 菜单栏下面有 [广发人才] 这个信息,说明还停留在[首页],无法选中,页面跳转失败
    员工心声 菜单栏下面有 [员工心声] 这个信息,说明页面跳转成功
    职业发展 菜单栏下面有 [广发人才] 这个信息,说明还停留在[首页],无法选中,页面跳转失败
    职业发展 菜单栏下面有 [职业发展] 这个信息,说明页面跳转成功
    人才培养 菜单栏下面有 [广发人才] 这个信息,说明还停留在[首页],无法选中,页面跳转失败
    人才培养 菜单栏下面有 [人才培养] 这个信息,说明页面跳转成功
    福利关怀 菜单栏下面有 [广发人才] 这个信息,说明还停留在[首页],无法选中,页面跳转失败
    福利关怀 菜单栏下面有 [福利关怀] 这个信息,说明页面跳转成功
    广发快照 菜单栏下面有 [广发人才] 这个信息,说明还停留在[首页],无法选中,页面跳转失败
    广发快照 菜单栏下面有 [广发快照] 这个信息,说明页面跳转成功
    • 测试登录页功能。

    ​ 这里共有个测试用例。

    用例问题 提示信息
    正确输入 右上角有[退出]选项,即退出登录按钮
    错误用例 没有输入邮箱地址 请输入邮箱地址
    错误用例 邮箱地址不正确 邮箱格式不正确
    错误用例 没有输入登录密码 请输入登录密码
    错误用例 输入密码只有字母(位数正常) 密码为6-12位数字与字母组合
    错误用例 输入密码只有数字(位数正常) 密码为6-12位数字与字母组合
    错误用例 输入密码过长(数字+字母) 密码为6-12位数字与字母组合
    错误用例 输入密码过短(数字+字母) 密码为6-12位数字与字母组合
    错误用例 输入密码过长(只有数字) 密码为6-12位数字与字母组合
    错误用例 输入密码过短(只有数字) 密码为6-12位数字与字母组合
    错误用例 输入密码过长(只有字母) 密码为6-12位数字与字母组合
    错误用例 输入密码过短(只有字母) 密码为6-12位数字与字母组合
    错误用例 输入密码含有其他字符(含有_字符) 密码为6-12位数字与字母组合
    错误用例 没有输入验证码 请输入验证码
    错误用例 验证码不正确 请检查验证码输入的正确性
    错误用例 账户/密码错误(账户错误) 用户账号或者密码有误
    错误用例 账户/密码错误(密码错误) 用户账号或者密码有误
    • 测试注册页功能
    用例问题 提示信息
    正确用例 无(数字+小写字母) 右上角有[退出]选项,即退出登录按钮
    正确用例 无(数字+大写字母) 右上角有[退出]选项,即退出登录按钮
    正确用例 无(数字+大写字母+小写字母) 右上角有[退出]选项,即退出登录按钮
    错误用例 没有输入邮箱地址 请输入邮箱地址
    错误用例 邮箱格式错误 邮箱格式不正确
    错误用例 邮箱已经注册 该注册账号已存在,请检查验证码输入的正确性
    错误用例 没有输入密码 请输入登录密码
    错误用例 没有再次输入密码 请再次输入登录密码
    错误用例 两次密码不一致 两次密码不一致,两次输入密码不一致
    错误用例 输入密码只有字母(位数正常) 密码为6-12位数字与字母组合,密码为6-12位数字与字母组合
    错误用例 输入密码只有数字(位数正常) 密码为6-12位数字与字母组合,密码为6-12位数字与字母组合
    错误用例 输入密码过长(字母+数字) 密码为6-12位数字与字母组合,密码为6-12位数字与字母组合
    错误用例 输入密码过短(字母+数字) 密码为6-12位数字与字母组合,密码为6-12位数字与字母组合
    错误用例 输入密码过长(只有字母) 密码为6-12位数字与字母组合,密码为6-12位数字与字母组合
    错误用例 输入密码过短(只有字母) 密码为6-12位数字与字母组合,密码为6-12位数字与字母组合
    错误用例 输入密码过长(只有数字) 密码为6-12位数字与字母组合,密码为6-12位数字与字母组合
    错误用例 输入密码过短(只有数字) 密码为6-12位数字与字母组合,密码为6-12位数字与字母组合
    错误用例 输入密码含有其他字符(含有_字符) 密码为6-12位数字与字母组合,密码为6-12位数字与字母组合
    错误用例 没有输入密码问题 请输入密码问题
    错误用例 没有输入问题答案 请输入问题答案
    错误用例 没有输入验证码 输入项不能为空
    错误用例 输入错误验证码 请检查验证码输入的正确性
    错误用例 没有输入密码和密码问题 请输入登录密码,请输入密码问题
    错误用例 没有输入密码和问题答案 请输入登录密码,请输入问题答案
    错误用例 没有输入邮箱和问题答案 请输入邮箱地址,请输入问题答案
    错误用例 没有输入邮箱、密码和密码问题 请输入邮箱地址,请输入登录密码,请输入密码问题
  • PO设计模式

    ​ PO 模型通过对界面元素的封装减少冗余代码,同时在后期维护中,若元素定位发生变化,只需要调整页面元素封装的代码,提高测试用例额可维护性、可读性。PO将页面分为三层,对象库层、操作层、业务层。本项目也依据这个思想执行,具体为:

    父目录 文件 作用
    对象库层 page/ BasePage.py 对selenium中的元素操作进行封装
    操作层 page/PageObject HomePage.py 初始页面的操作函数,包括悬浮效果、链接页面检测
    page/PageObject LoginPage.py 登录页输入框的功能、登录页的所有链接
    page/PageObject RegisterPage.py 注册页输入框的功能、注册页的所有链接
    业务层 testcase test_homePage.py 测试初始页面各项链接是否正常
    testcase test_loginPage.py 测试登录页各项信息是否正常
    testcase test_registerPage.py 测试注册页各项信息是否正常

    这里进一步将业务层中的数据分离出来写成Excel表格的形式,如有新的测试用例,只需要在Excel表格中插入即可。

  • 邮件发送功能

    主要通过utils包下的sendEmail.py实现,具体参数在config/config.ini 和 conf.py 中设置。conf.py 是对于路径的数字,config.ini是对邮件参数的配置,具体参数如下:

    位置 作用
    REPORT_DIR config/conf.py 设置报告的生成目录
    EMAIL_DIR config/conf.py 设置要发送的邮件所在的目录
    username config/config.ini 发送邮件的用户名
    email config/config.ini 发送方的邮件地址
    password config/config.ini 发送方邮件的授权码
    receiver config/config.ini 接收方邮件地址(接收多个接收方)
  • 性能的考量

    • 使用pytest.fixtrue取代setup和teardowm,是=使程序更加灵活。同时使多个测试进行时只产生一个driver,避免多个driver占用资源过大。
    • 将数据和业务层剥离,使开发人员更灵活的增加/删除测试用例。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages