24
08

蜗牛学院第一届测试开发方向学员项目竞赛投票啦!谁是冠军你说了算

为了加强小蜗牛们的竞争意识、团队协作能力、模拟更加真实的企业项目实战环境,并将在蜗牛学院每一阶段所学技术真正的运用到产品研发或测试开发中去,我们特意新增了一项“学员项目竞赛”活动。

各位老铁,大家好~


为了加强小蜗牛们的竞争意识、团队协作能力、模拟更加真实的企业项目实战环境,并将在蜗牛学院每一阶段所学技术真正的运用到产品研发或测试开发中去,我们特意新增了一项“学员项目竞赛”活动。


目前第二届Java开发方向的学员项目竞赛正在火热开展中,预计下周开始进行评分。本次主要是为第一届测试开发方向学员项目竞赛进行网络评选并投票计分。


网络投票占总分数20%,分数计算公式如下

(票数/总票平均值)*20

Ps:总票平均值=总票数/参赛项目数;分子大于分母的项目组,即直接获得20分,反之按数据正常计算。




本次竞赛中,小蜗牛们需要测试两个项目,一个是Web端蜗牛学院自研项目BOSS系统,另一个是第一届Java开发方向学员项目竞赛中成都校区获奖的“电影票务WoniuTicketApp,或者“共享车位WoniuParkApp

最终需要提交的产出物如下:

Web:《测试计划》、《测试方案》、《测试需求提取文档》、《测试用例》、《缺陷报告单》、《测试报告》、UI自动化脚本、接口自动化脚本、《性能测试方案》《性能测试报告》

App:《测试用例》、《APP测试报告(包含专项测试)》

 

下面是重庆、西安、成都三校区参加全国总决赛的优秀项目组提交的部分产出物,快来为你喜欢的作品投上一票吧




重庆校区


测试项目

WoniuBoss系统,电影票务WoniuTicket


主要使用的技术


  • 使用 Android Debug Bridge 帮助完成移动 APP 项目的测试,包括安装、Monkey 等;

  • 使用 Telegraf + InfluxDB + Grafana 搭建服务器硬件资源实时监控平台;

  • 使用 Telegraf 完成数据采集工作;

  • 使用 InfluxDB 进行数据存储,InfluxDB 是一个时间序列数据库,适合储存设备性能;

  • 使用 Grafana 现 Web 端数据展示,在浏览器实时查看服务器资源使用情况;

  • 使用 Jenkins 进行项目部署,结合 Docker 可以实现项目从从源码到运行的一键部署;

  • 使用 Docker 完成服务器各种依赖环境的搭建;

  • 使用 Jmeter 编写性能测试脚本并在命令行运行脚本进行性能测试;

  • 使用 Robot Framework + Selenium WebDriver 支持包进行 GUI 自动化测试;

  • 使用 Python + requests 包编写数据驱动框架实现接口自动化测试;

  • 使用 Fiddler 抓取接口进行分析并进行基本的接口测试。


项目中遇到的难题及解决办法


1、部署移动端 APP 项目时的环境配置问题。

经过老师的介绍和讲解引入 Docker 工具配置依赖环境,可以方便的部署各种指定版本的应用程序。服务器中原本使用的是 MySQL 8,但是项目在 MySQL 8 的环境下无法使用,进而使用 Docker 快速切换到 MySQL 5.6,与文档要求一样的版本,这样便解决了依赖环境的问题。


2实时监控服务器资源的问题。

过去监控服务器资源很不方便,而且只能将监控数据导出到本地进行查看,无法实时监控。通过查询资料了解到新的监控服务器资源的解决方案,在多次尝试部署环境并测试后,完美的实现了对服务器资源的实时监控。

项目展示截图(部分)


20191018_140300_015.png


20191018_140311_639.png


20191018_140323_884.png


20191018_140332_485.png


20191018_140342_865.png


项目总结


蜗牛教学资源管理系统测试共耗时12个工作日测试13个大模块,53个小模块系统功能测试用例编写执行1416,禅道提交缺陷131,其中严重缺陷11,一般缺陷107个,意见或建议13个。GUI自动化测试脚本编写,执行用例175用例成功130,占74.28%GUI自动化测试覆盖率12.35%接口测试共测试116个接口总计629条用例用例通过215通过率36.82%系统无致命缺陷,一般缺陷占81.64%,表现为输入框输入内容、格式未限制,部分业务逻辑错误(已销假信息可修改,停用账户可在模块中使用等)接口用例通过率不高是因无接口文档,用例参数的不同设计导致预期结果与实际结果不符而失败。由于版本存在众多缺陷且未解决,故不能上线。


蜗牛影院系统中,Web后台用例编写192,移动APP用例(包含专项)编写460条,发现缺陷共计60个,致命缺陷5严重缺陷11一般缺陷31意见或建议13个。致命缺陷存在于影院APP修改用户个人信息设置存在崩溃BUG,严重缺陷包括登录、注册界面无法获取验证码,影院APP影院界面功能缺失等。一般缺陷包括APP电影页面部分按钮功能的缺失,运行时占用大量内存,以及后台影票信息查询功能的未实现等。由于版本存在致命缺陷和众多未解决的严重、一般缺陷,不能正式上线。


竞赛中印象最深的三件事


事一:解决对服务器资源的实时监控问题。

前在 Liunx 中监控硬件资源只了解 top 命令或 nmon 工具,但是这两种方式都不能实现对服务器资源的实时监控。经过查找资料和咨询,我们找到了一种相对方便并且美观的解决方案:Telegraf + InfluxDB + Grafana,部署在服务器并通过本地浏览器进行访问查看。组长在摸清楚这款工具的使用方法后,手把手教每个组员使用这个工具。


事二:一方有难五方支援。

组员 因病告假当天,刚好遇上老师在引入一个比较重要的工具RF组内的小伙伴们有的录视频,有的记好详细笔记,都把自己的资料发给L,并指导 学习使用RF,比较高效的补上落下的内容。


事三:自费租赁云服务器。

在测试过程中,因各模块的数据要共享,项目各自部署自己的服务器的话,不方便数据流动与共享,只会徒增无用的工作量,降低测试效率。经过协商,由组员负责租赁了一个月的云服务器,将项目部署在云服务器上,很好的解决了这一难题。同时,这也让我们在公司和家里都可以进行工作。


  组员个人心得体会 


直面BUG永不后退  ——李秋雪

解决问题要善于运用搜索引擎  —— 张夏乐

越努力!越幸运! —— 邓涛峰

通过这次做项目,使我对测试有了进一步的认识。做项目的时候,最重要的不是自己如何快速的将自己分配的任务做完,而是要注重团队合作。—— 戴宏伟

不要为小事遮住视线,我们还有更大的世界!——刘陈军

痛并快乐着——孟旭


 

西安校区


测试项目


WoniuBoss系统,以及共享车位WoniuPark


主要使用的技术


  • 手工测试结合产品规格说明书进行分析需求、设计测试方案、编写测试计划、编写测试用例、执行测试用例、管理缺陷、编写测试报告。

  • 自动化测试

    (1)使用python+requests库结合unittest框架编写接口自动化测试脚本。

    (2)使用Python+selenium库结合unittest框架设计GUI自动化测试脚本。

  • 性能测试使用jmeter工具,设计场景,分析指(响应时间、资源利用率、吞吐量、TPS找到系统的性能瓶颈,最大并发用户数,提升产品质量。


项目中遇到的难题及解决办法


在设计接口自动化测试脚本阶段,由于对接口测试框架设计不熟悉,导致代码优化频繁,组员代码修改工作量增加,代码整合工作量增加,拖缓项目进度。通过与老师和组员的商讨,快速修改测试框架,修改测试数据的规范,各组员加班加点完成负责模块的代码编写,最终成功完成所有模块代码整合,测试脚本顺利跑通。

项目展示截图


20191018_140534_748.png


20191018_140621_446.png


20191018_140628_426.png


20191018_140641_453.png


20191018_140649_949.png


项目总结


项目周期:此项目从2019年99-2019929日,总计20天。

总共设计测试用例1075条,两个版本总共发现缺陷123条,自动化测试覆盖率为42%,各组员分别执行自己负责模块的文档设计、自动化脚本编写,组长最后进行文档和自动化脚本的整合,并执行测试脚本,生成自动化测试结果。



竞赛中印象最深的三件事


事一:培养团队默契。

编写接口测试脚本的阶段,由于小组成员不定时请假,组长在拆分该同学任务模块的同时,速度快的同学主动负担起其余模块的代码编写,组员之间配合默契,按进度结点完成接口测试脚本的编写。


事二:互相帮助,团队协作。

随着接口代码编写的完成,组员之间的默契度有了质的飞跃,这为之后编写UI自动化测试脚本奠定了一定的基础。不过,由于该测试脚本的代码量很大,存在组员认为就这两个版本没必要都进行自动化测试的情况,一度造成工作无法进行。在进行组内商讨和开导后,用最短的时间完成该部分的代码编写。可谓是有惊无险。


事三:一同进退。

在UI测试自动化脚本设计阶段,由于每个组员任务量重,没有在周六提交完成负责模块的测试脚本,周日组长杨晓凡早晨8点在微信群里@所有人来学院完成剩余工作,微信群里顿时炸锅,大家都说"周一再整""好不容易有个休息日"等等,在各种哀怨声中大家九点中还是陆续都来到教室,在小组努力之下,大家都完成自己的任务。 



  组员个人心得体会  


深刻理解项目需求,做好团队分工,项目进行中各组员做好沟通,把握项目的整体进度是一个项目顺利完成的必备因素。——杨晓凡

一个人的力量始终有限,一个团队的力量是无限的。——韩旭辉

一个好的测试框架在测试脚本编写过程中起到事半功倍的功效。——刘江

深刻体会到在产品版本迭代期间,一个稳定性高的自动化测试脚本有多重要,自动化这条路道阻且长,完善技术才是上选。——刘雪

通过这个项目,让我体会到测试活动的重要性,加深了"测试先行"的理念,以及在测试过程中应该细心认真,掌握沟通的技巧。——秦文勃

通过这次软件测试项目,让我体会到了软件测试的真正意义在于发现错误,并不在于验证软件是正确的。——宇文旭



成都校区



测试项目


WoniuBoss系统,电影票务WoniuTicket


主要使用的技术


(1) WoniuBoss项目:

  • GUI测试根据python类反射完成关键字框架搭建和脚本编写。

  • 接口测试使用xlrd读取Excel完成数据驱动框架搭建和脚本编写。

  • 脚本运行日志的生成使用装饰器来高效的完成并调用xlsxwriter生成图表。

  • 性能测试使用无界面版jmeter来生成测试报告。

  • 性能测试使用nmon工具来检测服务器数据并生成图表帮助分析系统瓶颈。

 

(2)蜗牛影院App项目:

  • 此次项目阶段,对蜗牛影院App完成系统测试以及专项测试。

  • app稳定性使用monkey来进行测试并分析运行日志帮助检测软件稳定性。

  • app流量测试使用GTEmmagee工具并检测竞品分析。

  • 使用Charles设置网络进行弱网测试。

  • 电量测试使用adb命令检测并根据竞品来分析电量消耗情况。

  • 安全测试和兼容性测试使用云测来进行。


项目中遇到的难题及解决办法

 

1.系统测试阶段,在班级管理功能因为无法直接在系统进行开班,导致大多数功能模块无法顺利进行测试,后经过分析和指导,直接通过数据库course表修改开班状态字段后即可,也对整个项目阶段做好铺垫。


2.GUI测试阶段会因为组员的疏忽对脚本编写不规范无法准确的统计出用例执行结果,后经过一些说明文档的规范和对框架的异常处理来准确的统计用例执行结果并生成文档。


3.接口测试数据驱动框架搭建阶段,主方法运行时参数传递个数不一致导致装饰器写的日志格式不正确,后通过详细的分析将所有方法的参数接收更改为可变参数,并根据可变参数的下标来进行参数的传递。


项目展示截图



20191018_140818_683.bmp


20191018_140837_004.bmp


20191018_140851_771.bmp


20191018_140902_487.bmp


20191018_140934_318.bmp



项目总结


本次测试共历时3周,其中WoniuBoss4.0项目用时2周,蜗牛影院App项目用时1周,本次测试的重点放在功能测试阶段,其中用例设计耗时较多,用以确保测试用例尽可能多的覆盖测试需求,WoniuBoss项目共发现bug数131,蜗牛影院App共发现bug数18个。


WoniuBoss用例数统计如下图所示:

 


20191018_140945_438.png


WoniuBoss缺陷数分布统计如下图所示:




20191018_140955_093.png


蜗牛影院App用例数与bug



20191018_141004_331.png


竞赛中印象最深的三件事


事一:自己的锅自己背。

系统测试阶段,其中一名组员对主要负责的功能模块理解有偏差,导致需求提取文档和测试用例编写工作进度严重落后于整个项目进度,因为整个项目阶段组长的严格要求,最后这名组员挑灯夜战,经过两个晚上的加班到2点钟最终赶上整个项目进度。


事二:内部评比。

接口测试框架搭建阶段,为了锻炼每个人代码编写能力,组长提议,谁的框架搭建的快就用谁的版本,后经过一下午的比拼,组长率先发布接口测试框架1.0版本,但这个过程当中无疑锻炼了每个组员的代码能力和整个组的团队合作能力。


事三:小失误大延误。

性能测试阶段,负责性能测试的组员搭建好测试环境,并准备设置好线程数和运行时间为36000秒执行压力测试,但第二天分析图表时才发现误将时间设置为3600秒导致了项目周期的后延。



  组员个人心得体会 


实践胜于理论。——李明聪

不以技术为依托的测试开发都是在耍流氓。——何凯

测试的真正意义在于发现缺陷,而不在于验证软件是否正确。——蒲思维

程序猿能写这么多bug真是不容易。——周婉琪

胆大心细,朝着bug前进!——苟强

通过这次做项目,使我对测试有了进一步的认识,做项目最主要的是要注意团队合作。——汪晨


欣赏完作品,下面到了投票时间啦,快为你喜欢的作品投上一票吧~


注:投票截止时间为2019年10月19日中午12:00点整。



为了答谢大家对蜗牛学院的支持,蜗牛学院将会定期对大家免费发放干货,敬请关注蜗牛学院的官方微信。


20190320_095757_834.jpg





版权所有,转载本站文章请注明出处:蜗牛学苑, https://www.woniuxy.cn/article/341