学 :04191315
姓名:何翔
学院:计算机学院
专业:软件工程
文章链接:https://blog.csdn.net/HXBest/article/details/122083502
完整代码:https://github.com/He-Xiang-best/Software-Quality-Assurance-and-Testing
修订历史记录
| 版本 | 日期 | AMD | 修订者 | 说明 | 
|---|---|---|---|---|
| V1.0 | 2021.12.7 | A | 何翔 | 完成了单元测试和使用Selenium+TestNG+Excel读取数据并测试。功能比较简单,不足之处是没有使用到数据库数据的读取,以及测试失败后提示不全面,也只是简单的判空和页面跳转,没有做断言的处理,没有 告分析。 | 
| V2.0 | 2021.12.21 | A、M | 何翔 | 在V1.0的基础上添加了使用Selenium+TestNG+数据库读取数据并测试。代码基本重构了一遍,好的地方是判断测试用例情况更加全面,且增加了断言处理,有生成代码的测试 告等。不足之处是断言的数据的使用不对,没有增加预期值的字段,反而使用了一些不需要的数据作为是预期的判断。 | 
| V2.0+ | 2021.12.28 | A、M | 何翔 | 代码在V2.0的基础上进行全面优化,增加了预期值的字段,实际值能够在程序运行过程中获取,与我们的数据库给定的预期值做断言比较,测试用例更加全面完善,且所有测试都成功通过,功能模块没有bug产生,测试 告等也全面完成,分析准确到位。 | 
(A-添加,M-修改,D-删除)
一、测试需求
1.1 测试模块
后台登入功能模块
后台指 站或系统用于管理用户数据、 站或系统数据的一部分,一般只允许管理员或特定人员通过后台登录界面进入,对整个 站及系统进行管理,普通用户是没有权限进入的。后台管理主要是用于对 站前台的信息管理,如文字、图片、影音、和其他日常使用文件的发布、更新、删除等操作,同时也包括各种子模块信息的管理。由此可见,后台管理了一个系统相当多至关重要的数据,操控人员一定是需要安全检验认证才可访问的,进而对数据进行管理,因此,设计一个安全严谨的后台的登入功能模块是非常需要的。现对一个设计好的后台登入模块进行登录的测试。
1.2 测试内容
- 
使用【Selenium+Java+数据库】进行数据驱动测试,对自己搭建的Web项目做登入功能测试 
- 
使用【Selenium+Java+Excel】进行数据驱动测试,对自己搭建的Web项目做登入功能测试 
- 
使用【Junit】对自己开发的web程序进行单元测试,实现简单的增删查改操作 
二、测试设计思想
2.1 测试用例
| 字段名称 | 描 述 | 
|---|---|
| 标识符 | UC1 | 
| 测试项 | 登入功能 | 
| 设计者 | 何翔 | 
| 测试环境要求 | 与服务器可以正常连接 ;软件:Chrome浏览器96版本以上 ,jdk1.8+,maven相关依赖以及TestNG相关jar包 | 
| 测试方法 | 黑盒测试 | 
| 输入说明 | (1) 访问后台(2)填写登入信息,其中所填写的“用户名”、“密码”两个输入框不能为空,且登入的用户信息需要和注册保存在数据库里面的数据一致(3)点击登入按钮 | 
| 输出标准 | 界面提示信息: (1)登入成功时有提示,并能够跳转成功的相关页面(2)当输入的信息不符合要求时,要有具体提示(3)登入失败的时,显示登入失败具体失败的具体原因。 | 
| 特殊要求 | 进入到后台登入页面 | 
| 用例之间的依赖性 | 无 | 
2.2 等价类划分
我们可以设用户输入的登入用户名为:input_username,输入的登入密码为:input_password;正确对应存在的登入用户名为:username,正确对应存在的登入密码为:password。
一个用户想要登入进后台管理系统,需要满足以下条件:
- 
登入用户名输入框已填写数据: input_username ≠ 空 
- 
登入密码输入框已填写数据: input_password ≠ 空 
- 
如果表单信息都填写了,还要判断填写的用户名存在: input_username = username 
- 
如果用户名存在,还要判断填写的密码与存在用户的密码一致: input_password = password 
| 输入条件 | 有效等价类编 | 有效等价类 | 无效等价类编 | 无效等价类 | 
|---|---|---|---|---|
| 是否填写用户名 | (1) | input_username ≠ 空 | (2) | input_username = 空 | 
| 是否填写密码 | (3) | input_password ≠ 空 | (4) | input_password = 空 | 
| 是否存在用户 | (5) | input_username = username | (6) | input_username ≠ username | 
| 是否密码一致 | (7) | input_password = password | (8) | input_password ≠ password | 
注:以下的XXX表示的是非正确的随机数据
| 序 | 输入值(input_username/input_password) | 覆盖等价类编 | 输出 | 
|---|---|---|---|
| 1 | (“”,XXX) | (2),(3),(6),(8) | 请输入用户名 | 
| 2 | (“”,“”) | (2),(4),(6),(8) | 请输入用户名 | 
| 3 | (“”,password) | (2),(3),(6),(7) | 请输入用户名 | 
| 4 | (XXX,“ ”) | (1),(4),(6),(8) | 请输入密码 | 
| 5 | (username,“ ”) | (1),(4),(5),(8) | 请输入密码 | 
| 6 | (XXX,XXX) | (1),(3),(6),(8) | 用户不存在 | 
| 7 | (XXX,password) | (1),(3),(6),(7) | 用户不存在 | 
| 8 | (username,XXX) | (1),(3),(5),(8) | 密码输入错误 | 
| 9 | (username,password) | (1),(3),(5),(7) | 登入成功 | 
三、测试数据
| 数据库数据 | Excel数据 | 测试用例说明 | 
|---|---|---|
| 4.1.1 TestNGConfig.java声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢! 
                
                    基于 NIOS-II 软核的流水灯
                
                 
                     上一篇
                    2022年3月6日
                 
                
                    零基础如何学好软件测试?
                
                 
                    下一篇 
                    2022年3月6日
                 |