护林员——Alpha冲刺测试随笔

forest_rangers 团队 2024-05-14 23:50:29
这个作业属于哪个课程福州大学-202302软件工程实践
这个作业要求在哪里团队作业——alpha冲刺
这个作业的目标Alpha冲刺测试随笔
置顶集合随笔护林员——Alpha冲刺置顶集合随笔
团队名称护林员
团队项目福大树洞

目录

  • 一、测试工作安排
  • 1. 前端
  • 2. 后端
  • 二、测试工具选择和运用
  • 1. 测试工具的选择
  • 2. 测试工具的使用
  • 3. 具体测试样例
  • 3.1 单元测试
  • 3.2 自动化测试
  • 3.3 压力测试
  • 三、测试用例文档
  • 四、测试体会
  • 1. 222100434
  • 2. 222100129
  • 3. 222100101
  • 4. 222100128
  • 5. 222100221
  • 6. 222100304
  • 7. 222100404
  • 8. 222100411
  • 五、项目测试评述/总结

一、测试工作安排

1. 前端

  • 我们这次做了一个比较胆大的决定:用vue3去做移动应用开发。首先最大的问题就是把代码能够利用工具打包成apk文件并安装能运行。很早以前就写了一个小demo,测试这个打包工具的使用。这次代码写的差不多以后,再次打包成apk文件时,出现软件安装后打开是白屏的现象。然后在社区中搜索解决办法,修改代码以后重新打包,忐忑的心终于落下了,打包成功。
  • 但是因为组员的手机都是苹果手机,而打包成苹果系统的软件,需要其他的配置和申请,时间上已经来不及了。所以我们在验证可以打包成apk以后,测试的同学仍然在浏览器上面进行测试。以下是我们的测试工具。
学号工作内容
222100101测试页面之间跳转响应
222100128测试树洞聊天模块
222100129测试接口
222100404测试课程评价模块

2. 后端

由于正确使用了工具,后端的测试变得极其简单。SpringBoot和apifox也是十分适配,二者结合起来极大的加快了后端的开发。

成员工作内容
222100434树洞聊天模块
222100221登录模块、个人中心模块
222100304课程评价模块
222100411文档的检查和截图的打包

二、测试工具选择和运用

1. 测试工具的选择

测试内容测试工具
前端Edge浏览器、谷歌浏览器、荣耀手机、人工
后端apifox、人工

2. 测试工具的使用

  • 工具:apifox
  • 起因:因为极限编程时因为接口文档原因十分痛苦,同时每次前后端集成测试,只要发现bug,就都需要重新部署到服务器上,过程繁琐且费时,希望能有个能在本地环境就可以测试的工具,同时希望接口文档可以上云,实时同步到各个成员
  • 使用:
    • 前期,因为大家都不太熟悉以及对新工具学习的恐惧,可能不知如何下手,只能硬着头皮学习,试着将接口文档搬运到apifox上后,逐渐了解了使用方法,不过因为不太会用,也为后期的问题埋下了伏笔。
    • 中期,因为该工具的使用,后端可以随时随地的本地测试,极大的加快了编程的速度,加上之前几天技术都累计,后端依靠着apifox的测试能力和接口文档实时同步能力,快速的完成了接口,并且确定了开发流程。
      ① 前端撰写接口文档
      ② 后端根据接口文档的要求进行编写代码
      ③ 后端使用该接口进行测试并根据实际输出修改接口文档
      ④ 确认没问题后将状态改为联调中
      ⑤ 前端负责前后端数据传输的同学筛选联调中的接口,撰写前端代码
      ⑥ 前端完成后将状态改为已发布,如果在测试中发现后端传输数据有误,将状态改为有异常。
    • 后期,项目上服务器,前端进行测试,但是发现有的接口文档和实际需求相异,一些前期的遗留问题在这个阶段才被发现,需要修改接口文档,这就导致牵一发而动全身,前后端代码都需要更改,这种情况应该会在Beta有所改善。因为大家已经熟悉了工具的使用,并且掌握了自动测试的撰写流程,让每次测试更加简单,不需要再一个借口一个接口测试。

3. 具体测试样例

3.1 单元测试

  1. 搜索帖子

    img

  2. 帖子所有回复

    img

3.2 自动化测试

  1. 树洞聊天

    img

  2. 课程评价

    img

  3. 个人中心

    img

3.3 压力测试

  • 因为后端有做IP访问次数限制,所以无法测试太多次
  1. 登录接口

    img

  2. 获取课程

    img

三、测试用例文档

测试用例文档地址

四、测试体会

1. 222100434

  • 我们这次的测试相交于Git实战时还算顺利,因为当时并没有意识到接口文档的重要性,导致接口文档一而再再而三地迭代更新,开发者可能开发到一半又要大改代码,这无疑会打击士气影响效率。并且因为问题都需要在部署到服务器上,跟前端配合时才能发现,还不能确定是前端的问题还是后端的问题,这种情况测试就难以进行,更多的时间花费在了打包和部署上。但这次有了apifox之后,后端可以随时测试,保证正确后再部署,这样减少因为发现后端Bug,导致服务器经常性停止的情况发生。

2. 222100129

  • 测试花费的时间真的不比写代码少,尤其对我们这些新手来说,一个简单的bug可能都得很久才找到解决办法。最深刻的例子已经在第10天的冲刺报告说了,前后端同时偷懒对token的判断,在登录注册的时候,后端读取前端传递的空的token,导致身份验证失败。本来预留的时间可能可以完成接口的代码编写,但是完全没想到测试花费的时间超出预期很多。不过在几次的测试中,已经越来越熟练了,不会出现接口问题互相猜疑的情况了。宝贵的时间转换成了一丢丢的但珍贵的经验。

3. 222100101

  • 在参与前端开发项目的测试阶段,我获得了宝贵的实践经验。这次测试让我对项目的整体流程有了更深入的理解,也锻炼了我的问题定位和解决能力。我期待在未来的工作中,能够将这些经验转化为更高质量的代码和更优秀的用户体验。

4. 222100128

  • 在最近的软件测试经历中,我深刻感受到了测试对于提升产品质量和用户体验的关键作用。通过细致的测试,我不仅发现了系统中的BUG,也加深了对测试重要性的认识。我意识到,编码时需要全面考虑各种情况,包括正常和异常操作,以减少BUG的产生。尽管前端测试过程繁琐且耗时,但这是确保产品质量不可或缺的步骤。通过这次实践,我学习到了如何设计有效的测试方案和利用工具辅助测试,为未来在软件测试领域的工作打下了坚实的基础。

5. 222100221

  • 测试次数越多测试参数越多样,能找到的问题和待改进的地方越多,这对于优化项目有很大的帮助。自动化测试很好用,可以大幅度提高测试的效率。

6. 222100304

  • 在这次冲刺中,我进行了接口的白盒测试还有压力测试。在测试的过程中起逐渐意识到测试的重要性,在一次次的发现bug与修改bug中心情也会随着上下起伏,是很难忘的体验。另外,我也明白了测试不是孤立的工作,它需要与团队其他成员紧密合作,因此良好的沟通对于发现和解决问题十分重要。

7. 222100404

  • 测试在进行项目开发时是一个很重要的环节,在进行前端测试时,能够发现之前所写代码的很多细节上的问题。在测试的过程中发现bug并修复,对产品的完善有很重要的意义,可以提高产品的质量和用户体验,并且在进行测试时也是对自己之前写的代码的一次复核,在此过程也可以提高自己的代码能力。

8. 222100411

  • 测试是软件开发过程中至关重要的环节之一。通过测试,我们可以发现系统中存在的问题,提高系统的质量和用户体验。在测试过程中,不仅可以找到已知的 bug,还能发现一些未曾预料到的细节问题,从而让我们更加深入地理解系统的运行机制和用户需求。

五、项目测试评述/总结

  • 测试非常有助于开发者发现在设计时的疏忽或遗漏,以前总想着随便编编数据就得了,测试而已,自己的代码难道自己还不懂哪里有错吗,早在开发时候就改完了。殊不知那是因为之前只编写过极其简单的小应用,这种思路还尚可理解,但只要碰到这种稍微大一些的项目就露馅了。测试是真的需要留出更多的时间去做,因为设计时候是这么设计的,但是用户用的时候不可能按照你的思路去使用,总会有开发者想不到的使用方式导致各种奇奇怪怪的Bug,同时,一但发现Bug就要再修改、再测试、再打包、再重新部署,过程十分繁琐,算是隐形的时间成本。
  • 测试耗费的时间一点不必编写代码少,一些问题看着逻辑很严密,然而到了在实际应用测试中才能发现问题,如果没有给测试一大段时间,软件就很难保证符合预期,同时可能因为匆忙修改一个bug,却“抛玉引砖”,带来了更多的bug,代码也逐渐变得“屎山”,通过这次课程的学习,让我们对测试方面有了更加崭新的看法。
...全文
244 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
内容概要:本文研究了基于Q-Learning自适应强化学习的PID控制器在自主水下航行器(AUV)运动控制中的应用,旨在提升其在复杂海洋环境下的控制性能。通过建立AUV的动力学模型,将Q-Learning算法与传统PID控制相结合,实现控制器参数的在线自适应优化,有效增强了系统的响应速度、稳定性和抗干扰能力。研究采用Matlab进行仿真验证,结果表明该方法在轨迹跟踪与姿态控制方面具有优越表现,为水下机器人智能控制提供了可行的技术路径与理论支持。; 适合人群:具备自动控制理论、强化学习或水下机器人建模背景,从事相关科研工作的研究人员、高校研究生及工程技术开发者。; 使用场景及目标:①应用于高精度、强鲁棒性的水下机器人运动控制系统设计;②开展智能PID控制器在非线性、时变系统中的参数自整定研究;③作为强化学习在复杂工业控制场景中落地的典型案例参考,推动算法与工程实践融合。; 阅读建议:建议结合提供的Matlab代码进行仿真实验,重点剖析Q-Learning与PID融合的架构设计、奖励函数设定及参数收敛过程,可进一步拓展至与其他智能优化算法(如DQN、Actor-Critic)的对比研究,深化对自适应控制机制的理解。
已经博主授权,源码转载自 https://pan.quark.cn/s/a4b39357ea24 Matlab 被视为一种功能卓越的编程平台,特别是在数值运算和数据分析方面展现出广泛的应用价值。在应对多元非线性回归的挑战时,Matlab 拥备多种工具和函数,支持用户对复杂的数据进行构建模型和适配。本指南将重点阐释在 Matlab 环境下如何执行多元非线性回归分析。 我们需要掌握三种关键的回归指令: 1. `polyfit(x,y,n)`:此函数适用于拟合一元幂函数,能够导出一个多项式模型。例如,若知晓数据呈现二次函数形态,可选择`n=2`来适配一个二次曲线。 2. `regress(y,x)`:这是一个多元线性回归指令,能够处理多个自变量对因变量的影响。即便数据并非完全呈现线性特征,该函数也能提供一个线性近似。 3. `nlinfit(x,y,’fun’,beta0)`:这是最为通用的非线性回归指令,适用于适配任何类型的函数,无论是一元或多元,前提是用户能够定义函数形式(`fun`参数)。 回归分析的核心在于寻找一组最优的系数,使得模型能够最恰当地描述数据。这通常涉及选择一个合适的函数形态,随后通过最小化误差平方和来估算系数。在Matlab中,`regress`指令主要用于处理线性模型,而`nlinfit`则处理更为复杂的非线性模型。 对于多元线性回归模型,我们可以用如下形式进行表述: \[ y = \beta_0 + \beta_1x_1 + \beta_2x_2 + \cdots + \beta_px_p + \epsilon \] 其中,\( y \)是因变量,\( x_1, x_2, \ldots, x_p \)是自变量,\( \beta_0, \beta_1, ...
内容概要:本文系统阐述了基于BP神经网络的语音特征信号分类方法,并提供了完整的Matlab代码实现。研究围绕语音信号的数据预处理、特征提取、神经网络结构设计、模型训练与分类测试等核心环节展开,详细展示了BP神经网络在语音识别任务中的应用流程。通过构建多层前馈网络模型,利用误差反向传播算法优化权重,实现了对不同语音类别特征的高效分类,具有较强的工程实践价值和技术可复现性。; 适合人群:具备信号处理与机器学习基础知识,熟悉Matlab编程语言,从事语音识别、模式识别、人工智能等相关领域研究的学生及科研人员;特别适用于开展课程设计、毕业设计或科研项目的初级与中级研究人员。; 使用场景及目标:①深入理解BP神经网络的基本原理及其在语音信号分类中的具体实现过程;②掌握Matlab环境下语音信号特征提取与分类模型构建的全流程技术;③为语音识别、人机交互、智能听觉系统等实际应用场景提供可靠的算法基础与代码参考。; 阅读建议:建议读者结合所提供的Matlab代码逐行分析其实现逻辑,重点关注数据输入格式、网络参数初始化、训练迭代过程及分类性能评估;可通过调整隐含层节点数、学习率、激活函数等超参数,观察模型收敛性与分类准确率的变化,从而深化对神经网络调参策略的理解。

122

社区成员

发帖
与我相关
我的任务
社区描述
FZU-SE
软件工程 高校
社区管理员
  • LinQF39
  • 助教-吴可仪
  • 一杯时间
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧