啥也不会还做出了机器学习——测试报告

Posted clover-muyou

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了啥也不会还做出了机器学习——测试报告相关的知识,希望对你有一定的参考价值。

写这篇博客的时候真的是,内心百感交集。

从啥也不会,到现在项目收工。一个学期的研究讨论,真的是,所有人都辛苦了。

一群人从0开始完成项目。主要技术岗们疯狂看论文,找文档 ,各种看……大家终于走到了可以测试的环节了

然后就……喵喵喵?我们的算法怎么测试啊?

项目的主要难点在于算法,enas算法本身就是(按照现在的时间算的话)不到一年前才提出的新型算法。测试算法的话只能通过一个代码测试准确率。然后呢……没了。

有点不太对啊……

突然想到我们还有前端界面——微信小程序和后台管理系统。

好,我们可以测试了。


 

 技术分享图片

 

这个测试主要针对的是微信小程序和后台管理系统。而算法本身的准确率具有不可控性。(关于算法准确率的问题会在下面详细说明)

所以 ,关于测试的报告就要……到来啦~

 

 

 

(微信小程序部分)

1.0测试用例设计

我们随机选取了200张/批次的图片进行测试,对于结果进行累计统计。覆盖正例训练的十个类别。

1.1测试环境

1.1.1硬件环境

android6.0及以上设备一台,iPad/iPhone设备一台:用于测试前端界面对于不同系统布局是否正常,软件由于基于微信小程序,故只需正常开启权限即可使用。

1.1.2软件环境

基于微信小程序,微信版本需要能支持小程序运行。主要基于不同的系统,ios和安卓端的不同样式,以及不同的屏幕所展现的不同效果。

1.2 测试工具

    本次测试未用到测试工具。 

1.3测试方法

本项目的测试主要是针对微信小程序进行的测试。

UI测试:小程序的界面展示,字体,按键的方式位置

兼容性:针对不用的操作系统和屏幕尺寸以及微信版本,程序都能较好的适配并且完成既定目标与要求

性能测试:页面渲染时间,资源占用问题——页面是否会在多次跳转后出现长时间卡顿

网络测试:验证在各种网络环境与条件下小程序是否能够照常运行。

功能测试:按照数据流向进行测试,比如图片上传后在下一界面的展示是否正常完整正确。然后是界面跳转功能,各界面的跳转能否正常实现,按钮的功能能否满足要求。在最后的相关论文查看界面,是否能查看/下载论文,能否成功将论文的相关链接引入。

 

(web后台管理部分)

2.1测试环境

2.1.1硬件环境

装有浏览器且能正常上网的电脑和手机(不同系统均可)。

2.1.2软件环境

web部署在装有Ubuntu Server 16.04.1 LTS 64系统的服务器上,运行网页需要设备(手机、电脑)上安装某类浏览器(IE等)。

 

2.2 测试工具

    本次测试未用到测试工具(web安全访问计划采用AppScan测试工具)。

2.3测试方法

本项目的测试主要是针对web后台管理界面进行测试,测试方法如下:

1)   权限测试:用户通过直接输入视图函数绕过登录进行访问系统

2)   UI测试:测试不同浏览器对界面字体图层位置等的影响

3)   兼容性:针对不用的操作系统和屏幕尺寸,程序都能较好的适配并且完成既定目标与要求

4)   性能测试:页面渲染时间,资源占用问题,页面是否能在后台数据量较大时产生卡顿或者渲染失败等问题

5)   功能测试:按照功能模块进行测试,比如点击导航栏目查看不同的反馈数据以及按钮功能是否出现BUG等。

 

测试结果及缺陷分析

3.1 覆盖分析

3.1.1需求覆盖分析

微信小程序部分:

首先进行登录界面验证,成功获得用户的摄像头与头像权限,确认无误。

接下来用户可以对需要识别的类型进行选择(手写体数字或CIFAR10数据集中的十类物品)。用户进行点击后可以成功跳转,并且多次点击不会出现卡顿与生命周期异常,确认无误。

用户选择从相册或相机拍照上传图片,上传后可以成功跳转到下一个页面,有相应反馈给用户,确认无误。

上传后可以正确接收后台传来的识别结果,并保存用户提交的评价数据,识别结果较为精确,确认无误。

此外,在模拟单次传输后,我们对后台进行高IO测试,以200张每批次的测试样例进行测试,得出正确率约90%,确认无误。

需求覆盖率=测试通过需求点/需求总数×100%=5/5×100%=100%

web后台管理系统部分:

登录界面验证,输入系统所分配的账号密码或者超级账号可以进行正常登录;

页面数据请求,点击左侧导航栏可切换不同页面进行访问查看,点击左上方home键可以返回第一页面,点击右上方admin正常下拉,点击切换账号或者退出可正常退出到登录界面。

数据展示验证,服务器状态页面可正常显示后台服务器信息。反馈统计页面第一部分正常显示统计饼状图,第二部分正常显示用户评价详细信息。日志查看页面正常显示文件信息和文件内容。账户管理可正常查看账户列表,点击删除按钮和复选框可以删除用户,点击添加按钮可以正常添加用户,点击右侧启用/停用按钮可以启用或停用账户。

3.1.2测试覆盖分析

    略

3.2? 缺陷统计与分析

由于小程序未发布,无法进行负载测试与压力测试。

3.2.1缺陷统计

3.2.1.1所有bug列表

web后台管理系统部分:

① 在账户查看时,未点击行前复选框就进行批量删除会导致点击确定按钮无反应(已解决)。

② 左侧导航栏出现BUG,无法正常跳转。

 

3.2.1.2重要解决bug列表

在账户查看时,未点击行前复选框就进行批量删除会导致点击确定按钮无反应(已解决)。

网页左侧导航栏出现BUG,第四个选择的页面只能在第三个窗口打开,其余窗口无法打开。(已解决)

3.2.1.3遗留bug列表

暂无

3.2.2缺陷分析

本次测试发现的主要缺陷在于处理时间过长,导致客户端响应时间过久,用户体验较差。

在后台管理系统的测试中,由于设计时未考虑手机使用后台管理系统的相关情况,所以后台管理系统的网页无法在手机端使用,只能通过电脑网页运行,手机不能使用。

3.2.2.1缺陷综合分析

web后台管理系统部分:

用户登录界面考虑安全问题,对密码进行MD5加密操作,但是加密安全度不高。

在member-add页面进行添加用户时,未对密码和用户名进行加密操作和特殊字符验证。

在数据库评价信息过多时,评价结果展示页面渲染部分较慢,渲染动画未正常显示。

3.2.2.2测试曲线图

本测试曲线图主要用于展示测试的正确率。

 技术分享图片

 

按理来说,作为一个程序识别的准确率应该在95%以上,我们目前只能达到93%以上。但是正如测试图像所示,这个识别的准确率是一个波动上升的曲线,只是由于时间和金钱的限制,导致我们无法继续训练进行识别。相信如果可以继续训练,这个模型的结果可以有更好的结果。

3.3 性能数据与分析

3.3.1性能数据

通过运行记录识别所用的时间,我们对5000张测试集进行测试,输出结果时间。可以看出一次识别的反应时间大概在0.1s左右。对于一个用户来说,这个时间应该还处于可以接受的范围。  

 技术分享图片

 

3.3.2测试结论

测试可以通过。虽然反应有些迟钝,但是还能满足用户的基本识别要求。而关于后台管理系统,虽然手机端不能适用,但是使用电脑可以很好地进行使用和查看管理。所以本小组认为这个程序可以发布使用。

 

测试总结和建议

4.1软件质量

软件开发成功达到预期目标,可以交付使用。

4.2软件风险

目前对于后台的管理审计未进行安全性检查,前端由于托付在微信小程序端,故数据安全性受到微信限制。

4.3测试结论

对测试计划执行情况以及测试结果进行总结,包括:

1.主要测试方面均已涉及,但较为浅层,对于安全性问题未深入考虑,主要功能实现并得到良好测试

2.在测试风险应对方面,积极给出测试方案与样例设计,对可能遇到的边界情况以及数据通路进行了检查

3.完成了预定的测试目标并测试通过

4.可以进行下一阶段的检查

 


 

通过设计,对后台管理系统和微信小程序做了一系列的基本测试。

在测试的过程中,我们尽可能的将所有能想象到的内容完成。但是可能有的时候还没有 很考虑到一些奇葩用户的奇葩需求。已经尽可能的将特殊情况进行想象和测试,并且对过程中出现的bug进行了解决。但是因为没有学过测试的相关内容,对测试实在是不够了解。无法清楚地对项目进行测试,也无法很专业系统的进行测试工作。

本身由于我们项目的特殊性,在完成过程中也多次感觉到了我们的特殊。我们的项目其实需求很简单。名字解释了一切——基于Pytorch图像识别的ENAS。重点在于算法实现,所用框架为Pytorch,其中没有写的就是,网络架构为CNN(卷积神经网络)。简单的需求也注定了我们所得到的结果简单,本身就不具备很高的表面工作量。而最为核心的部分又有代码帮忙进行测试。所以我们的测试结果具体如何还是有些未知的。也算是一系列的未知数。

总结一下——在进行测试的过程中,还是感觉到我们的许多不专业性。最后,就有点玄学了……一切看玄学吧。

以上是关于啥也不会还做出了机器学习——测试报告的主要内容,如果未能解决你的问题,请参考以下文章

向企业解释机器学习模型

机器学习数据分割

微软Excel还可以入门机器学习? 可别低估了这个上分利器

一次简单的报告:机器学习之支持向量机SVM

业界当前的深度学习框架不会改变机器学习的能力增长

乐搏讲自动化测试- Python自动化测试前景怎么样