童海峰
【摘 要】本文针对软件测试课程教学的问题,论述目前国内众测平台的发展现状,分析在软件测试课程中引入众测平台的可行性,从而对软件测试课程的内容设置、教学方法、考核方式等方面进行改革研究,致力于激发软件专业学生对于软件测试的兴趣,培养软件测试人才. 【期刊名称】《电子世界》 【年(卷),期】2018(000)003 【总页数】2页(P95-96)
【关键词】软件测试教学;众测平台;可行性研究 【作 者】童海峰
【作者单位】无锡商业职业技术学院物联网技术学院 【正文语种】中 文
1.软件测试课程教学现状
中国的软件产业,相比国外而言,正处在一个走向成熟的阶段。在国外,开发工程师与测试工程师的岗位比例是1:1,而国内,面临是10:1的局面。中国的软件产业要走向成熟,必将产生对专业软件测试工程师的大量需求。无论从目前就业形势,还是以长远的发展观来看,社会将需要大量的软件测试专业人才。
然而,尽管目前很多高校都开设了软件测试技术课程,但是由于缺少实验和实践的
课程体系,其培养的毕业生却存在着理论知识一知半解、实践操作脱离实际需求的问题,这些问题导致软件测试人才培养与企业需求的脱节,无法符合行业发展所需。 经过对近几年软件测试课程的教学过程及对教学效果的分析,我们发现以上问题是由于目前的软件测试教学中存在的不足所导致的: (1)测试知识框架缺乏系统性。
目前的软件测试课程内容主要是围绕黑盒、白盒等测试方法展开,测试管理略有涉及,讲授
的知识点相对分散,缺乏系统性。对学生而言,对这些知识的认识停留在“是什么”的层面,至于如何利用这些知识、在哪些环境下使用这些知识尚缺乏认知。教学内容的分散既不能让学生从整体上把握软件测试课程的知识体系,也不能让学生系统地掌握软件测试的核心要点。
(2)教学案例陈旧,与实际需求严重脱节。
目前教学中使用的案例仍然是沿用多年的如三角形程序、NextDate函数等,这些案例仅仅用于讲解软件测试的各个知识点,与目前软件测试的主流业务严重脱节,缺乏吸引力,既无法调动学生的学习兴趣和热情,也无法让学生完整体验测试的整个测试流程。
另外,近年来随着软件规模的不断扩大,手工测试的局限性使其已经不能满足软件开发的需要,软件测试行业开始向自动化测试转型,Junit、Load Runner、JMeter等工具在软件测试行业中获得了广泛的应用。但是,许多高校实训室不能及时升级,导致学生在校时无法及时学习和使用这些软件,毕业之后还需要岗前培训才能适应软件测试岗位的要求。 (3)课程学习缺乏持续性。
软件测试课程教学的模式通常是理论教学、实训操作和作业三个部分,这样的教学模式使得学生在完成了课上的教学内容后,就不会再花时间在软件测试技术的研究
上。而事实上,软件测试实践性很强,而且发展迅速,测试领域也在不断扩大,如目前主流的APP测试在原来的课程中就没有涉及到。这就需要学生及时追踪和更新测试知识,提升软件测试的实践经验,否则很难透彻的理解软件测试技术如何具体的运用,软件测试实践能力也得不到极大的提高。另外,软件测试是一个非常重视经验积累的行业,软件企业需要的测试人才都要求有一定的经验,这些经验的积累尤其需要学生在课后持续学习才能完成,但目前的课程知识体系显然无法做到这点。
2.众测平台现状分析
以上软件测试课程在教学知识体系、教学内容、课程教学组织方面存在的问题,归根结底是源于教学与实际的脱节,而众测平台在专业性和实战性方面的优势十分突出,正可以弥补教学不足。下面以Testin众测平台为例,阐述如何借助众测平台融合理论、工具、实战三个维度来构建软件测试教学知识框架,构建学生借助众测平台进行可持续学习策略。 2.1 国内众测平台发展现状
从1996年到现在,Facebook、Google和雅虎就是“众测”的支持者和践行者。所谓众测,就是让将软件测试的任务发布在平台上,由平台上注册为软件测试工程师自主选择参加测试任务,测试者们根据测试要求在真实的网络环境中进行试玩与评估,然后形成测试报告。软件测试是软件发布前的最后且最重要一环。与传统的渗透测试相比,众测是全球范围内,性价比最高、效果最好的测试模式。 例如,传统的渗透测试模式中,1-2名测试人员,花费5天的时间,有时只能帮企业找出一个高危漏洞。而企业往往要花费高达10万元的渗透测试费用。因为测试人员少,没有竞争,发现的问题往往不够全面;很多掩藏的问题,在上线之后才慢慢浮现,带来更大的损失。
而采用众测,企业能规定自己的测试范围,挑选自己的测试人员,让企业的测试成
本降低,并且效率更高。
目前国内存在有很多的众测产品,如腾讯、百度都推出了自己的众测平台。虽然都是叫众测,但是测试的内容和方式并不一样,这些众测平台的侧重点各不相同,详细情况见下表:
乌云众测由乌云网上的白帽子发起,通过众包的方式为客户提供安全测试服务,帮助未上线的产品提前发现安全漏洞,化解上线后的安全危机。SOBUG也是国内一家从事安全测试的众包测试平台,其提出基于效果付费、先行赔付的业务模式适合有安全测试需求的产品。
TestBird是专注手游的云测试平台,其依靠独创的自动化手游测试技术强势崛起,最近开始利用此前积累的丰富手游测试经验发展真人众测服务。旗下真人众测团队“燕子门”已经拥有超过10万玩家注册加入。
班墨云和Testin众测以及AllTesting业务类型比较接近,主要是帮助APP开发者进行功能、性能以及兼容性方面的测试。其工作流程是客户通过平台发布测试任务,测试者在平台上领取任务后按要求进行测试,完成测试后任务发起者向测试者支付一定费用。 2.2 众测平台的优势
首先,众测平台是基于共享经济的测试众包服务平台,测试项目众多,类型多样。这些平台发布的测试项目有web网站也有APP应用,测试类型涵盖功能测试、性能测试、兼容性测试等方面。对任课老师而言,引入这些项目,可以大大丰富软件测试教学案例库,弥补原有教学案例不足的问题。在参与这些项目的过程中,任课老师可以了解到测试形式的多样化和测试岗位的专业化要求,真正从企业的需求出发,以企业岗位用人标准为指导,培养学生的工程能力、职业素质。
其次,这些平台发布的众测项目中不乏大众点评、麦当劳等与学生生活密切关联的
项目,能吸引学生积极参与。对学生而言,在碎片化的时间段利用专业技能来获取收益,这样真实的测试任务更能激发他们的学习热情。同时在这些平台上还能结交来自测试领域的伙伴,在相互的学习交流过程中,不断完成各类测试任务,能获得精神上的满足感。
因此在软件测试教学中引入众测平台一方面可以弥补课程案例不足的窘境,另一方面也可切实提升课程的延续性。 3.在软件测试课程中引入众测平台的思路
引入众测平台的根本目的是培养学生的动手能力和学习能力,培养学生掌握软件测试的基本理念与测试技能,具备一定的软件开发/测试经验,成为满足软件测试岗位要求的实用型软件测试人才。第一,可借鉴众测平台测试工程师的认证标准,重新审核原先的人才培养方案,设定软件测试课程的职业能力培养目标。
第二,由于各众测平台侧重点不同,因此涉及的测试知识点不同,可在众多平台中进行筛选,选择适合的平台进行切入,从而提炼出核心知识,丰富学校现有的软件测试理论课程内容,构成理论教学体系,做到有的放矢。例如, TestIn和AllTesting是国内比较大型的众测平台,这两个平台的业务侧重于APP和网站测试,比较适合软件专业的学生加入。而且,在TestIn平台上还有关于APP Bug探索、应用场景、用例知识的学习和测试环节,只有通过测试才能正式成为该平台的测试工程师,这些内容正好弥补了原来教学体系中没有涉及到APP的测试要点。另外,平台上制定的测试用例、Bug等提交标准也丰富了软件测试项目管理的教学内容。
第三,教师在软件测试课程中缺乏相应的教学工具,难以搭建富有实践意义的应用环境。学生缺乏实训机会,只掌握理论知识难以符合用人单位的实际需求。对此,可引入众测平台相关的主流测试工具,进行软件测试实训室的建设,以此实现软件产业和高等教育的资源对接,探索产教研融合的软件测试专业培养体系,进一步推
进高校软件测试课程的专业建设。以AllTesting平台为例,该平台除进行众测任务发布以外,还发布了其开发的相关测试工具如AutoRunner\\TestCenter等及相关的学习资料。这些均可以用于教师搭建真实的实训环境,有利于学生学习到最前沿的技术。
因此,软件测试课程体系可设计如下:
4.结论与展望
基于软件测试人才的需求以及高校教育的现状,在教学中引入众测平台,构建具有实践意义的软件测试课程体系,对于学校为社会培养实用型人才,提高学生的就业能力,提升学校的教学质量,无论是当前,还是驻足于长远,都将具有非常重大的战略性意义。 参考文献
[1] 陈翔,鞠小林.卓越计划驱动下的软件测试技术课程教学改革[J].计算机教育,2013(13):14-17,21.
[2] 赵涛.基于云计算的软件测试技术探索与研究[D].西安:西安电子科技大学,2014.
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- igat.cn 版权所有 赣ICP备2024042791号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务