Beta - 测试报告

测试过程中发现的bug

  1. Beta阶段的新bug

    我们在Beta阶段的开发过程中就进行了测试,发现了许多bug。这其中后端的bug比较多,在这里我列举一些比较重要的功能性bug。

    • 用户创建项目会抛出异常,没有正确获取浏览器的cookie
    • 用户修改个人密码,后端无法接收到前端的输入
    • 添加好友是单向的
    • 无法删除好友
    • 实体之间的关系在图上显示为ID,而非名称
    • 在图中查找某一实体会导致其他实体丢失
    • 删除某一关系会导致图中所有相同类型的关系都被删除掉
    • 导入文本中文乱码
    • 导出知识图谱信息的文件名无法修改
  2. Alpha阶段没有发现的bug

    • 给同一实体添加过多的关系,实体会在图中消失

    Alpha阶段开发的功能比较简单,所以未发现的bug比较少一点。

场景测试

用户信息 用户情况
姓名 王亨利
用户身份 某高校本科学生
用户动机 希望期末复习时能快速地构建某门课程的知识图谱,帮助加深记忆。
用户困难 构建知识图谱时,手写工作量大;使用画图软件操作别扭,排版比较费时间。
软件对应功能 在阅读过程中实时添加实体,选择两个实体进行关系标注,可对错误的实体进行删除、修改。查看渲染生成的知识图谱,拖拽调整知识图谱结构。导出知识图谱。
预期使用场景 1. 王亨利登录TextMarking网站,使用已经注册号的帐号登录。 2. 王亨利从本地导入了txt文件在网站上,开始进行文本的阅读和标注。 3. 阅读完一阶段的文本,王亨利添加了许多专业术语(实体),他对这些概念之间的关系进行了一些标注(并列、从属、解释,可自定义关系)。 4. 标注完成,王亨利点击“Graph”按钮,查看到了生成的知识图谱,里面列出了所有的概念和概念之间的关系。王亨利觉得生成的图谱不够清晰,自己进行了一些手动调整(修改、删除)。 5. 王亨利下载了知识图谱的数据,在机器学习中作为数据集使用。

李约翰

用户信息 用户情况
姓名 李约翰
用户身份 某高校教师
知识层次/能力 专家
生活/工作 负责某一专业课程的授课
用户动机 某一年课改,准备更新原有的讲义和PPT,要在其中插入专业知识图谱。
用户困难 专业知识体系庞杂,构建知识图谱工作量巨大。
典型场景 李约翰老师找来了几位同事/学生,大家同时在应用中标注实体,可以很快完成知识图谱的构建

回归测试



这对Alpha阶段的代码也进行了单元测试,实现回归测试。

这里给出一个用户登录的测试用例

def test_new_user(self):
self.assertEqual(big_user.objects.count(), 0)
# 注册
response = self.client.post(
path= '/user/register/',
data=
{
'user_id': '13215',
'password': '123456',
'user_name': 'crapbag'
}
) self.assertEqual(response.status_code, 200)
self.assertEqual(big_user.objects.count(), 1) # 用户id已存在
response = self.client.post(
path= '/user/register/',
data=
{
'user_id': '13215',
'password': '12dda56',
'user_name': 'peeweeee'
}
)
self.assertEqual(response.status_code, 200)
response_content = json.loads(response.content)
self.assertEqual(response_content['msg'], '用户id已存在') # 登录成功
response = self.client.post(
path= '/user/sigin/',
data=
{
'user_id': '13215',
'password': '123456'
}
)
self.assertEqual(response.status_code, 200)
response_content = json.loads(response.content)
self.assertEqual(response_content['msg'], '用户已登录')

测试用例对用户注册的几种情况进行了覆盖测试,包括用户ID已存在、用户已登录、登陆成功等集中情况。

压力测试

测试矩阵

页面测试 功能测试
浏览器 版本 实体添加 关系添加 实体修改 关系修改 导入文本 导出数据结构 添加好友 邀请好友标注 修改昵称 修改密码 新建项目 删除项目 注册校验
chrome 81.0.4044.122
edge 81.0.416.64
360安全版 12.1.2633.0
QQ(极速内核) 70.0.3538.25
搜狗 8.6.3.32395
firefox 75.0
IE 11.778.18362.0
猎豹 6.5.115.19659.8001
360极速版(极速内核) 12.0.1247.0
UC浏览器 1.0.739.0 ×

出口条件

  • 可兼容市面上大多数浏览器
  • 功能简洁易用,无明显bug
  • 页面无错位、显示不全等bug
  • 访问速度流畅

【二食堂】Beta - 测试报告的更多相关文章

  1. 【二食堂】Beta - 项目展示

    项目展示 1. 团队介绍 二食堂很难排队 姓名 介绍 职务 刘享 热爱游戏,尤其是RPG和metrovinia类的游戏. 会C/C++, python, java. 后端 左正 一个普通的大学生,Py ...

  2. 【二食堂】Beta - 事后分析

    事后分析 设想和目标 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? Beta阶段我们首先要对文本标注方式进行优化,其次时添加好友系统,实现邀请好友共同标注的功能. ...

  3. 【二食堂】Beta - Scrum Meeting 11

    Scrum Meeting 11 例会时间:5.26 18:30~18:50 进度情况 组员 当前进度 今日任务 李健 1. 文本导入.保存部分的工作比想象中的难,还需要一些时间完成issue 1. ...

  4. 【二食堂】Alpha - 项目展示

    项目展示 1. 团队介绍 二食堂很难排队 姓名 介绍 职务 刘享 热爱游戏,尤其是RPG和metrovinia类的游戏. 会C/C++, python, java. 后端 左正 一个普通的大学生,Py ...

  5. UltraSoft - Beta - 测试报告

    UltraSoft - Beta - 测试报告 在测试过程中发现了多少Bug?有哪些是Beta阶段的新Bug?有哪些是Alpha阶段没有发现的Bug? 很多Bug在开发阶段就已经经过测试了,我们在Be ...

  6. 【二食堂】Beta - 设计和计划

    Beta设计和计划 需求再分析 根据助教.老师.用户以及各个团队PM的反馈意见,我们的项目目前有以下问题: 功能不完整 实用价值不高 两方面的缺陷,所以在Beta阶段,我们工作的中心还是完成项目规划中 ...

  7. 【二食堂】Beta - 发布声明

    Beta - 发布声明 新功能 在Beta阶段,图谱方面的新功能有:自定义关系的添加与删除.实体查找.实体名称的修改.实体之间关系的修改.新增了项目创建与删除功能,此外还增加了好友系统,可以实现好友的 ...

  8. 【二食堂】Beta - Scrum Meeting 10

    Scrum Meeting 10 例会时间:5.25 18:30~18:50 进度情况 组员 当前进度 今日任务 李健 1. 继续文本导入.保存部分的工作issue 2. 完成了技术博客 1. 继续文 ...

  9. 【二食堂】Beta - Scrum Meeting 1

    Scrum Meeting 1 例会时间:5.13 18:30~18:50 进度情况 组员 当前进度 今日任务 李健 1. 查阅资料,解决划词勾选和右键菜单的问题issue2. 修复了Alpha阶段的 ...

随机推荐

  1. Redis的持久化机制与内存管理机制

    1.概述 Redis的持久化机制有两种:RDB 和 AOF ,这两种机制有什么区别?正式环境应该采用哪种机制? 我们的服务器内存资源是有限的,如果内存被Redis的缓存占满了怎么办?这就要看Redis ...

  2. GRE隧道协议

    1. GRE协议简介 GRE(General Routing Encapsulation ,通用路由封装)是对某些网络层协议(如IP和IPX)的数据报文进行封装,使这些被封装的报文能够在另一网络层协议 ...

  3. JS009. 数组去重的多种方法总结与一步步优化

    两层for循环 这种函数的优点是兼容性好比较通用,缺点是时空复杂度都很直观的为O(n2),不利于维护和性能. var array = [1,1,'1','1'] function unique(arr ...

  4. python模块--collections(容器数据类型)

    Counter类(dict的子类, 计数器) 方法 返回值类型 说明 __init__ Counter 传入可迭代对象, 会对对象中的值进行计数, 值为键, 计数为值 .elements() 迭代器 ...

  5. (6)java Spring Cloud+Spring boot+mybatis企业快速开发架构之SpringCloud-Spring Boot项目详细搭建步骤

    ​ 在 Spring Tools 4 for Eclipse 中依次选择 File->New->Maven Project,然后在出现的界面中按图所示增加相关信息. ​ <paren ...

  6. git config 选项

    git config  --global -- global 写入选项:写入全局的 ~/.gitconfig 文件而不是版本库的 .git/config,如果 ~/.gitconfig 文件不存在,则 ...

  7. 羽夏看Win系统内核——简述

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新. 如有好的建议,欢迎反馈.码字不易, ...

  8. 搭建GIT仓库

  9. WebView(网页视图)基本用法

    资料来源于菜鸟教程 啊这官方文档居然失效了,打不开.那我们直接就看相关方法: WebChromeClient:辅助WebView处理Javascript的对话框.网站图标.网站title.加载进度等! ...

  10. 博客主题——element v2

    主题预览 主题下载 gshang.element-v2.rar