目录
一、项目背景
想写一个可以留存信息与资料的秘密基地。主要的功能:用户可以登陆、注册。可以在广场看见所有人发布的信息,对于自己发布的信息可以进行修改、删除和隐私与公开。
在线链接: (由于买不起长久的服务器,该链接可在一定的时间后不可访问,可以在线问博主最新的链接哦)博客登陆页http://47.93.149.210:8080/blog_login.html
但是在功能实现时,还做了以下的功能,来保证业务的正确性与安全性。
1.强制用户登陆。
2.由于服务器可能在某时刻挂掉,所以在短暂的时间内,服务器重启后,用户仍可以在同一台设备与账号继续进行操作。
3.密码作为私密信息,所以在密码在存储时进行了加密操作(当然,这部分用户是无法感知的)。
4.用户在退出账号时可以选择注销操作,来保证用户账号的安全。
项目的缺点:
1.用户的图像不能自行上传。
2.不同用户进行评论。(当然,技术有限,暂时还达不到,哈哈哈,希望以后有机会学会)。
4.逻辑处理也有点问题,在很多的作品时找不到自己的作品。(后序实现)
等等。
二、项目功能
主要的功能:用户可以登陆、注册。可以在广场看见所有人发布的信息,对于自己发布的信息可以进行修改、删除。
但是,主要的页面有:
(1)页面1:用户注册
用户在输入用户名时,不可以重名,重名就会有提示,密码与确认密码要保持一致,否则会提交后依然会有提示。注册完毕后会跳转到登陆页面。
(2)页面2:登陆页面
用户输入用户名与密码后,后端代码判断输入用户是否存在,以及输入的信息是否正确,来进行校验。校验正确后,会跳转到主页,在主页可以查看所有人的作品大致内容,由于有些作品可能信息过长,在这里会选择进行部分信息截断处理。
(3)页面3:信息主页
用户登陆成功后,可以查看所有人发布的信息。在左边展示自己的个人信息。
(4)页面4:详情页面
在主页点击查看全文后,可以看到博客的全部信息,但会展现两种不同的界面:1.该作品是否为自己发布的。2.该作品是其他用户的。
1.自己的作品:
2.他人的作品:
(5)页面5:修改作品信息
当然,对于自己的作品才可以修改哦!!! 在详情页面,对于自己的作品点击修改按钮才可以进行修改,修改后进行提交,可以跳转到主页。(主要的功能有三项:更新、隐藏、删除、公开)。
修改完成后可点击提交,跳转至主页。
(6)页面6:书写作品界面
输入标题与正文后提交,跳转至主页。(提交后处于公开状态,可在个人作品页面进行私密处理)。
(7)页面7:个人作品页面与个人作品私密页面
由于都是个人作品,跟主页的形式一致,只是在作品范围进行区分。
三、测试计划
测试用例:
(1)功能测试
1.登陆界面:
编写具体测试用例
|--------|-------------------|-----------|--------|---------------|
| 测试用例序号 | 操作 | 用户名 | 密码 | 测试预测结果 |
| 1 | 验证正确结果 | zhangsan | 123456 | 进入主页 |
| 2 | 错误结果(用户名正确,密码错误) | zhangsan | 123456 | 弹出警示框(密码错误) |
| 3 | 错误结果(用户名正确。密码错误) | Zhangsan1 | 123456 | 弹出警示框(用户不存在) |
| 4 | 错误结果(用户名错误,密码错误) | Zhnagsan | 123456 | 弹出警示框(用户不存在) |
| 5 | 错误结果(用户名和密码为空) | | | 弹出警示框请输入正确的内容 |
| 6 | 错误结果(用户名不为空,密码为空) | Zhangsan | | 弹出警示框请输入正确的内容 |
| 7 | 错误结果(用户名为空,密码不为空) | | 123456 | 弹出警示框请输入正确的内容 |
根据测试用例:
(1)测试用例1:
结果:输入正确的用户名与密码之后,跳转至主页。与预期结果一致。
(2)测试用例2:
结果:输入正确的用户名与错误的密码,点击提交,显示密码错误。与预期结果一致。
(3)测试用例5
不输入信息,点击提交,提示输入不合法。
....按照测试用例测试,结果与预期结果一致,在这里就不粘贴图片了哦。
点击注册,即可跳转至注册页面
2.注册功能:
测试用例:
|--------|---------------------|----------|--------|--------|-------------------|
| 测试用例序号 | 操作 | 用户名 | 密码 | 确认密码 | 预期结果 |
| 1 | 注册成功 | 李华 | 123456 | 123456 | 跳转至登陆页面,并登陆成功 |
| 2 | 注册失败,输入已有账号昵称 | zhangsan | 123456 | 123456 | 提示爱称已经被占用,请用户重新输入 |
| 3 | 注册失败,输入两次不一致的密码 | 李华123 | 123456 | 12345 | 提示两次密码不一致,请用户重新输入 |
| 4 | 注册失败,不填写用户名、确认密码与密码 | | | | 提示输入必要的数据 |
| 5 | 注册失败,不填写用户名 | | 123456 | 123456 | 提示输入必要的数据 |
| 6 | 注册失败,不写密码与确认密码 | 李华123 | | | 提示输入必要的数据 |
| 7 | 注册失败,不写密码 | 李华123 | | 123456 | 提示两次密码不一致,请用户重新输入 |
根据测试用例:
(1)测试用例1:
输入用例,跳转至登陆页面,与预期结果一致。
(2)测试用例2:
输入用例,提示爱称已被占用,与预期结果一致。
(3)测试用例3:
输入测试用例,提示两次密码不一致,与预期结果相符。
(4)测试用例4:
不输入信息,提示输入必要信息,与预期结果一致。
... 对于用例5.6.7,与预期结果一致,就不粘贴照片了。
点击登陆,即可跳转至登陆页面。
3.查看主页面功能:
由于主页的信息,与登陆状态有关:
测试用例:
|--------|----------|--------------|
| 测试用例序号 | 操作 | 预期结果 |
| 1 | 未登陆,查看主页 | 跳转至登陆页面 |
| 2 | 登陆,查看主页 | 可查看所有用户公开的信息 |
(1)测试用例1:
输入相关链接,跳转至登陆页面,不可查看作品,与预期一致。
(2)测试用例2:
可查看所有用户公开的信息,与预期结果一致。
4.查看作品详情功能
测试用例:
|--------|------------------|---------------------------------------------------|
| 测试用例序号 | 操作 | 预期结果 |
| 1 | 未登陆,查看详情 | 跳转至登陆页面 |
| 2 | 登陆,查看作品详情,为自己作品时 | 可展示作品的详情,并出现(编辑、删除、公开或私密作品,在作者信息出现个人作品与私密作品用于的超链接 |
| 3. | 登陆,查看作品详情,为他人作品时 | 仅可查看作品的内容 |
(1)测试用例1:
未登录访问链接,直接跳转至登陆页面,与预期结果一致。
(2)测试用例2
展示作品的详情,并出现(编辑、删除、公开或私密作品,在作者信息出现个人作品与私密作品用于的超链接,与预期结果一致。
(3)测试用例3
仅可查看作品的内容,与预期结果一致。
5.更新(编辑)作品功能:
|--------|------------------|--------------|
| 测试用例序号 | 操作 | 预期结果 |
| 1 | 未登陆,更新 | 跳转至登陆页面 |
| 2 | 登陆,点击编辑 | 跳转至更新页面 |
| 3 | 登陆,点击编辑,编辑时不输入标题 | 提示输入错误 |
| 4 | 更新他人作品 | 跳转更新页面,但拒绝修改 |
(1)测试用例1:
未登录即进行编辑,直接跳转至登陆页面,与预期结果一致。
(2)测试用例2:
更新后:
更新成功,与预期结果一致。
(3)测试用例3:
未输入标题,与预期结果一致。
(4)测试用例4:
输入链接,可查看详情,但拒绝修改。与预期结果一致。
6.写作品功能:
测试用例:
|--------|------------------|--------------|
| 测试用例序号 | 操作 | 预期结果 |
| 1 | 未登陆,书写新作品 | 点击提交,跳转至登陆页面 |
| 2 | 登陆,点击书写 | 跳转至主页面 |
| 3 | 登陆,点击书写,编辑时不输入标题 | 提示输入错误 |
(1)测试用例1:
点击提交:
跳转至登陆页面,与预期结果一致。
(2)测试用例2:
即可在主页中找到:
与预期结果一致。
(3)测试用例3
未输入标题,提示输入不合法。
7.私密、公开作品功能:
对于私密作品功能,只可在作品详情页面进行操作。
|--------|------|--------------|
| 测试用例序号 | 操作 | 预期结果 |
| 1 | 点击私密 | 跳转至作者的私密页面 |
| 2 | 点击公开 | 跳转至作者的个人作品页面 |
(1)测试用例1
点击私密:
结果:
与预期结果一致。
(2)测试用例2:
点击公开
跳转至个人作品页面,与预期结果一致。
8.个人作品、私密作品展示功能:
(1)个人作品
显示正常。
(2)私密作品
无私密作品,显示正常,与预期结果一致。
9.删除功能:
仅可在详情页面进行操作,操作完成后,跳转至主页面。
与预期结果一致。
10.注销功能:
点击注销,即可跳转至登陆页面,并且不能访问主页,否则会跳转至登陆页面。
访问主页,跳转至登陆界面:
符合预期。这是个人认为的功能测试,若未覆盖全,可在评论区指出,谢谢。
(2)自动化测试
使用selenium与谷歌浏览器进行编写自动化测试代码。
(3)性能测试
使用jmeter进行自动化测试。
对于自动化测试,可在后序文章出现。over!!!