[BUAA软工]Beta阶段测试报告
Beta阶段测试报告
Bug发现与报告
| BUG | 出现原因 | 解决方案 |
|---|---|---|
| 将shell加上编辑器UI以后,两边显示的文件不同步 | 两边的根目录不一致 | 修改编辑器获取根目录的函数,使其与shell的/home目录一致 |
| 编辑器的语音按钮在某些手机上消失 | 页面布局中按钮的位置属性设置的不对 | 将按钮的位置属性设置为相对于右边缘和下边缘的相对位置 |
| 应用第一次启动特别慢 | shell在初始化时要加载一个bootstrap文件。这个文件在Alpha版本中被设置为了运行时下载。由于服务器带宽比较小,下载速度特别慢,而且容易中途出问题 | 我们把压缩包打包进了应用安装包中 |
| 代码在AndroidStudio的模拟器上无法运行 | 我们在打包上一个问题提到的bootstrap时为了减小安装包的体积,因为手机cpu一般都是aarch64架构,所以没有把x86的相关链接文件复制进去,而AndroidStudio的模拟器却是x86结构的。造成了调试上的不便 | 将x86的相关文件打包进Bootstrap |
| 导出的release版本的apk在手机上闪退,debug版本的却没有问题 | 初步确定为是AndroidStudio导出release版本的代码混淆的问题 | 关掉代码混淆,因为我们本来就是开源的,关掉混淆影响不大,而且能解决问题 |
| 部分终端上的包可能会在Android版本小于7.0(api < 24)的手机上出问题 | 我们将linux上的包交叉编译的时候使用的脚本要求支持的最低的Andoird api 为24 | 没有解决,因为我们的终端只支持最新版的各种软件包,在编译的时候将支持的最低api版本设置为21会导致一大批软件编译不通过,而且根据腾讯的调查报告,现阶段国内android版本24及以上的达到了将近七成,所以24以下的用户不会得到完美的支持。我们上架的时候也会注明主要支持7.0以上的系统 |
| 终端安装软件包的时候apt update会出问题 | 没有找到具体原因,可能是对apt的理解不够深刻,加上我们自己维护了一个apt的源,所以出现了神奇bug | 使用apt-get update可以有效避免问题的产生(这也是为什么说是神奇bug的原因,按理说两者应该是等价的),我们将这一条写进了使用指导中 |
| 编辑文件的时候标题输入无法使用语音 | 每一个Activity下语音输入只能选定一个目标,默认是文件输入的光标位置,无法定位到标题输入的编辑框里。 | 还没有解决,TODO |
场景测试
| 角色 | 使用需求 | 功能设计 |
|---|---|---|
| 张三 手部残疾,初学者 | 低门槛 | 我们为程序文件编辑开发了UI界面,使初学者不必为how to quit vim这样的问题困扰 |
| 李四 程序猿 | 功能专业 | 我们编译了几乎所有linux上的常用包,用户可以配置自己熟悉的环境和软件系统。而且将常用的编程命令和关键词加入了个性词库,提高了语音识别率。 |
| 王五 普通人 | 使用简单 | 我们维护了自己的apt源,用户可以使用自己的网络方便地下载各种软件包 |
回归测试
跟其他组的web不同,我们Beta阶段做的前端编辑器界面和Alpha阶段的shell语音相对独立,唯一的联系就是他们作用于同一个文件系统。所以相互测试主要目标是双方的文件同步
测试场景
- 在编辑器界面新建一个文件hello.py,内容为
print("Hello,world"),回到shell界面,命令ls,检查是否有hello.py,否则测试失败,有则继续python hello.py,检查是否出现Hello,world,有则测试成功,否则失败 - 在shell界面
mkdir newdir,回到编辑器界面,刷新后检查是否有newdir这个文件夹,有则测试成功,否则失败。
测试矩阵
| 手机型号 | 小米6 | 小米8 | 小米8se | 华为mate8 | vivo x23 | vivo x7 | 三星s10 | 华为p30 |
|---|---|---|---|---|---|---|---|---|
| 安卓版本 | 8 | 8 | 8 | 8 | 8 | 6 | 9 | 9 |
| 新建文件 | 正常 | 正常 | 正常 | 正常 | 正常 | 正常 | 正常 | 正常 |
| 修改标题 | 正常 | 正常 | 正常 | 正常 | 正常 | 正常 | 正常 | 正常 |
| 修改内容 | 正常 | 正常 | 正常 | 正常 | 正常 | 正常 | 正常 | 正常 |
| 语音输入文本 | 正常 | 正常 | 正常 | 正常 | 正常 | 正常 | 正常 | 正常 |
| 语音输入命令 | 正常 | 正常 | 正常 | 正常 | 正常 | 正常 | 正常 | 正常 |
| UI和shell切换 | 正常 | 正常 | 正常 | 正常 | 正常 | 失败 | 正常 | 正常 |
| shell初始化 | 正常 | 正常 | 正常 | 正常 | 正常 | 失败 | 正常 | 正常 |
| 执行apt-get update | 正常 | 正常 | 正常 | 正常 | 正常 | 失败 | 正常 | 正常 |
| 执行apt-get install | 正常 | 正常 | 正常 | 正常 | 正常 | 失败 | 正常 | 正常 |
| shell查看当前目录下文件 | 正常 | 正常 | 正常 | 正常 | 正常 | 失败 | 正常 | 正常 |
| shell新建目录 | 正常 | 正常 | 正常 | 正常 | 正常 | 失败 | 正常 | 正常 |
| 返回编辑器查看文件互通 | 正常 | 正常 | 正常 | 正常 | 正常 | 失败 | 正常 | 正常 |
可以看到满足我们支持的android版本的机型基本运行正常
出口条件
我们认为各功能正常,且能在我们支持的安卓版本上(7.0以上)正确运行的即可认为达到出口条件
| 功能大项 | 细分功能 |
|---|---|
| 前端编辑器 | 可以新建文件 |
| 可以修改文件标题 | |
| 可以修改文件内容 | |
| 可以语音输入文本 | |
| 可以语音输入换行,空格等命令 | |
| shell | 可以初始化 |
| 可以执行apt-get update | |
| 可以执行apt-get install | |
| 可以看到前端新建的文件 | |
| 可以新建文件,文件夹 | |
| 可以语音输入文本 | |
| 可以语音输入换行,空格等命令 | |
| 编辑器和shell互通 | 可以从编辑器切换到shell |
| 可以从shell切换到编辑器 | |
| 编辑器可以看到shell中新建的文件,文件夹及内容 | |
| shell中可以看到编辑器中新建的文件及内容 |
[BUAA软工]Beta阶段测试报告的更多相关文章
- [BUAA软工]beta阶段贡献分
团队成员在Beta阶段的角色和具体贡献: 名字 角色 具体的可衡量的可验证的贡献 zpj 前段+ 前后端对接 博客X1 20+ commits ui 设计与实现 bug fixed: 2 推广:10 ...
- [BUAA软工]Alpha阶段测试报告
测试报告 一.测试计划 1.1 功能测试 1.2 UI测试 1.3 测试中发现的bug https://github.com/bingduoduo1/backend/issues/21 https:/ ...
- 2021北航敏捷软工Beta阶段评分与总结
概述 Beta 阶段评分,按照之前的规则,主要组成部分为: 博客部分,基于 Beta 阶段博客的评分(每篇正规博客 10 分,每篇 Scrum5 分,评定方式类比往年) 评审部分,基于 Beta 阶段 ...
- [BUAA软工]Alpha阶段事后分析
设想和目标 虽然我们是从零开始的一个自定义项目,但语音Coding助手从一开始的设计与目标就很明确:加入语音接口使其能在shell端实现命令语音实现以及编辑运行脚本,设计前端编辑器并将后端shell与 ...
- [BUAA软工]Alpha阶段项目展示
[冰多多]Alpha项目展示 冰多多项目: 语音coding 助手, alpha阶段目标: 语音辅助输入 一. 团队成员的简介和个人博客地址 成员 角色 个人博客地址 卓培锦 PM, 后端开发 htt ...
- [BUAA软工]gamma阶段贡献分
Gamma阶段评分 基本公式:贡献度 = 工作量 × 工作的影响力 × 工作的不可替代性 + 对项目有重大意义的idea gamma阶段所有的工作及idea issue/idea/job (repo: ...
- 【BUAA软工】Beta阶段测试报告
项目 内容 班级:北航2020春软件工程 博客园班级博客 作业:Beta阶段测试报告 测试报告 发现的bug Beta阶段的bug [已解决]CPP项目无法进行调试 [已解决] 注册界面注册后不能够自 ...
- [敏捷软工团队博客]Beta阶段测试报告
项目 内容 2020春季计算机学院软件工程(罗杰 任健) 博客园班级博客 作业要求 Beta阶段测试报告 我们在这个课程的目标是 在团队合作中锻炼自己 这个作业在哪个具体方面帮助我们实现目标 对Bet ...
- [敏杰开发]Beta阶段测试报告
[敏杰开发]Beta阶段测试报告 这是一篇软工课程博客 项目 内容 课程:北航-2020-春-软件工程 博客园班级博客 作业要求 Beta阶段测试报告 我们在这个课程的目标是 测试项目 这个作业在哪个 ...
随机推荐
- Idea中编辑后需要重启问题
发布的artifact要用exploded 配置On Update action 和On frame deactivation为Update classes and resources. 编辑完成后, ...
- VIM编辑器使用的小技巧
在命令中输入 vi –t 类型名.结构体名或者函数名 系统就会寻找相应的对象,默认是在当前目录的 tags 中搜索,例如我们想寻找 stat 结构体, 则输入 vi –t stat 然后按 q 退出 ...
- WebStorm eslint插件报错解决 - TypeError: this.CliEngine is not a constructor
将eslint更新版本后,出现TypeError: this.CliEngine is not a constructor的错误. 解决办法: 1.编辑 X:\WebStorm\plugins\Jav ...
- vue组件5 组件和v-for指令
使用v-for遍历一个数组的时候,并且给定的数组变化时vue不会重复生成所有的元素,而是智能的找到需要更改的元素,并只改变这些元素 key属性可以告诉vue数组中的每个元素都应该与页面上的哪个元素相关 ...
- [转] Cache 和 Buffer的区别
程序员开发过程中经常会遇到“缓存”.“缓冲”等相似概念,之前没有特别关注,现在停下来做一下总结,才能更好地前行. 先来下枯燥的概念: 1.Cache:缓存区,是高速缓存,是位于CPU和主内存之间的容量 ...
- Android 使用traceView
Android在做性能优化的时候需要使用traceView进行检测,traceView可以详细的记录下线程执行的时间让我们在做优化的时候可以清楚优化哪些内容.首先我们需要使用这个traceView,在 ...
- Android-----解析xml文件的三种方式
SAX解析方法介绍: SAX(Simple API for XML)是一个解析速度快并且占用内存少的XML解析器,非常适合用于Android等移动设备.SAX解析XML文件采用的是事件驱动,也就是说, ...
- spec开发思路以及理解
一.spec说明 描述:编写SEPC采用创联公司自主开发的CIT语言,它是一种过程化的.类似数据库编码的语言.SPEC中除了关键字外提倡使用中文. 理解:可以理解为业务逻辑层.链接前台页面和后台数据库 ...
- 【MySql】Update批量更新与批量更新多条记录的不同值实现方法
mysql更新语句很简单,更新一条数据的某个字段,一般这样写: UPDATE mytable SET myfield = 'value' WHERE other_field = 'other_valu ...
- Linux Mysql创建新用户并允许远程连接
第一步 登陆mysql: mysql-u 数据库用户名 -h 数据库IP -p 根据提示 输入数据库密码 第二步: GRANT ALL PRIVILEGES ON *.* TO '自定义用户名'@'% ...