中山网站建设推广,网站开发属于专利吗,wordpress 4.8.2中文,上海网站设计公司有哪些作者 | 熊一衡 华东师范大学软件工程学院博士 苏亭 华东师范大学软件工程学院教授
版块 | 鉴源论坛 观模 01 什么是面向界面的图形化测试#xff08;GUI Testing#xff09;
图形用户界面(GUI) 是一种通过图形化方式呈现信息、数据、功能和操作的用户界面#xff0c;旨在…作者 | 熊一衡 华东师范大学软件工程学院博士 苏亭 华东师范大学软件工程学院教授
版块 | 鉴源论坛 · 观模 01 什么是面向界面的图形化测试GUI Testing
图形用户界面(GUI) 是一种通过图形化方式呈现信息、数据、功能和操作的用户界面旨在提供更加直观、友好、易用的体验以满足用户的需求和期望。图形用户界面通常由窗口、菜单、按钮、文本框、图标、标签等组件构成用户可以通过鼠标、键盘等输入设备进行交互和操作。GUI界面的设计和布局需要考虑用户的习惯、视觉效果、易用性等因素以提供最佳的用户体验。
面向界面的图形化测试是一种常用的软件测试方法旨在验证用户界面是否符合业务规范和用户需求以及验证应用程序的功能是否正确响应用户操作以保证应用程序的质量和稳定性。图形化测试通常在开发的中后期进行可以确保应用程序的功能和用户界面的质量提高用户体验降低用户投诉和退款率。此技术可以有效地提高测试效率和测试质量在各种应用程序的测试中得到广泛应用。
例如如果一个用户访问京东商城的网站主页(https://www.jd.com/)他将看到导航栏、搜索栏、推荐栏和其他诸多组件。测试人员可以针对不同的关注点来对这个网页进行图形化测试。例如点击“免费注册”按钮网站是否能弹出相应的注册网页包括导航、搜索、表单、购物车、支付等功能是否能正常响应用户操作。 通过图形化测试可以发现应用中的问题和缺陷提高应用的质量和用户体验增强用户的满意度和忠诚度从而提高应用的价值和竞争力。 02 常见的面向界面的图形化测试技术
2.1 基于人工的测试
基于人工的测试是一种传统的软件测试方式测试人员通过手动操作应用程序的用户界面模拟用户的行为和操作来发现和报告应用的问题和缺陷。在实际应用中应用系统级的功能性问题很大程度上是依靠人工测试找到 [1]。基于人工的图形化测试需要有经验的测试人员能够全面地覆盖测试用例和测试场景。然而测试的效率和准确性很大程度上受到测试人员的技能水平和经验的影响。基于人工的测试主要包括以下步骤
1理解项目需求和制定测试计划测试人员必须分析所有的需求文档以便识别软件的预期行为和需要测试的确切内容。测试人员根据需求和规格说明书制定测试计划和测试用例。
2测试环境和测试数据准备测试人员准备测试环境和测试数据包括安装和配置测试软件、准备测试数据、设置测试工具和设备等以确保测试环境的一致性和稳定性。
3手动测试执行测试人员按照测试计划和测试用例手动操作应用程序的用户界面模拟用户的行为和操作包括点击、输入、选择、拖拽等以验证应用程序的功能和性能并记录测试结果和异常情况。
4缺陷报告和总结当测试人员发现缺陷的时候需要根据测试团队所制定的报告模版生成缺陷报告包括缺陷的描述、缺陷分类、缺陷级别等等并跟踪和确认缺陷的修复和验证。在测试完成之后测试人员根据测试的结果生成测试报告并提交给项目团队。
基于人工的测试的优点包括测试灵活性高人工测试可以基于一个功能自己构建不同的测试用例并且适应不同的程序表现测试准确性高自动化测试工具没有测试人员经验丰富人工测试可以更加准确判断一个应用表现是否为一个程序错误测试反馈及时可以及时发现和报告软件缺陷和问题。
然而基于人工的测试也存在一些缺点如测试效率低需要较长的测试时间和测试人员的工作量当短时间内需要生成大量测试用例时不适合用人工测试测试成本高相对于自动化测试人工测试需要耗费大量人力和时间测试可重复性差测试结果可能受到测试人员的主观因素的影响测试覆盖率有限可能无法涵盖所有的测试用例和测试场景。
2.2 基于录制回放的测试
基于录制回放的测试通过记录用户在图形界面上的操作生成测试脚本然后回放测试脚本到目标应用上来模拟用户的操作并验证应用程序的功能。录制回放测试技术属于自动化测试的一种形式不需要人工编写测试脚本减少工作人员的工作量适用于需要重复执行相同测试用例的场景如回归测试、性能测试等。录制回放测试技术主要包括以下步骤
1录制测试脚本测试人员打开测试工具启动录制功能然后在应用程序的用户界面上进行操作和事件如点击按钮、输入文本、选择菜单等测试工具会自动捕捉和记录用户的操作和事件并生成测试脚本。
2编辑测试脚本测试人员可以对生成的测试脚本进行编辑和优化如添加断言、调整等待时间、修改参数等以确保测试脚本能够正确地模拟用户的操作和验证应用程序的功能和性能。
3回放测试脚本测试人员启动回放功能测试工具会自动执行测试脚本模拟用户的操作并验证应用程序的功能和性能同时记录测试结果和异常情况。
4生成测试报告测试人员分析测试结果包括测试通过率、测试覆盖率等发现软件缺陷和问题并向开发团队提供测试报告。
录制回放测试技术的优点包括测试成本低不需要会编写测试脚本的专业人员测试效率高可以根据测试人员的录制自动化生成测试脚本并自动执行测试测试准确性高可以模拟真实用户的操作并验证应用程序的功能和性能测试可维护性高可以快速修改和更新测试脚本和测试数据。
然而录制回放测试技术也存在一些缺点如测试脚本的可靠性和稳定性受到应用程序的变化和测试环境的影响需要保证测试环境的一致性和稳定性测试脚本的维护成本较高应用程序代码和界面在不断变化因此需要不断更新和优化测试脚本和测试数据来适应这些改变测试覆盖度有限依赖于测试人员的录制测试人员一般偏向于录制一些核心功能和核心步骤。
Selenium IDE [2] 是Selenium Suite下的一款非常受欢迎的开源Web自动化测试工具其核心功能是录制回放测试。它不需要用户有任何编程知识只需记录用户与浏览器的交互从而可以快速地创建、执行和调试自动化测试脚本。Selenium IDE提供了一个简单的界面可以通过简单的拖放操作和录制功能快速创建自动化测试脚本无需编写任何代码。它支持多种浏览器包括Chrome、Firefo等。此外Selenium IDE还可以导出测试脚本为多种编程语言的代码如Java、C#和Python等。
2.3 基于模型的测试
基于模型的测试是一种自动化测试方法它利用模型来描述被测试系统的行为和结构从而生成测试用例验证系统的正确性和可靠性。基于模型的测试可以提高测试效率和覆盖率减少测试人员的工作量适用于复杂和多变的应用程序如嵌入式系统、软件系统、网络系统等。
基于模型的测试主要包括以下步骤
1建模测试人员使用建模工具根据需求和规格说明书构建被测试系统的模型包括功能模型、状态模型、数据模型等以描述被测试系统的行为和结构。
2模型分析测试人员对模型进行分析和验证包括模型检查、模型仿真、模型测试等以发现和修复模型中的错误和问题。
3测试用例生成测试人员利用模型生成测试用例包括基于覆盖率的测试用例、随机测试用例、符号执行测试用例等以覆盖模型中的所有路径和状态并达到测试目标和测试要求。
4自动化测试执行测试人员使用自动化测试工具执行生成的测试用例对被测试系统进行自动化测试包括功能测试、性能测试、安全测试等以检验被测试系统的正确性和可靠性。
5测试报告和总结测试人员整理测试结果和问题报告生成测试报告和总结包括测试通过率、测试覆盖率、缺陷统计、测试建议等以提供给项目团队和管理者参考和决策。
基于模型的测试的优点包括测试效率高可以自动生成测试用例和测试脚本并自动执行测试测试覆盖率高可以覆盖模型中的所有路径和状态测试可重复性好可以多次执行相同的测试用例和测试脚本测试结果准确性高可以自动化地验证被测试系统的正确性和可靠性。
然而基于模型的测试也存在一些缺点如模型的建立和维护成本高需要投入大量的人力和物力资源并且需要建模人员非常了解待测试应用门槛高模型的构建需要有非常专业的建模人员熟练使用各种专业技能 [3]模型的应用范围有限可能无法覆盖所有的测试需求和测试场景。因此在实际测试中应根据测试需求和应用程序的特点综合选择不同的测试方法和工具以提高测试效率和质量。
Fastbot [4] 是一款由字节跳动Quality Lab研发的一款开源的基于模型的GUI测试工具用于发现手机app中的稳定性问题。Fastbot将app的GUI信息抽象成模型中的state将执行的动作抽象成模型中的action然后基于构建的模型生成测试用例并提供多种算法策略目标是达到较高的 Activity 覆盖率及较强的问题发现能力。同时Fastbot还支持跨平台测试在海量设备上多机协同测试。Fastbot也利用了图像检测技术来支持较丰富的图像 UI 异常检测能力黑白屏、图像重叠、控件遮挡等等。 03 面向界面的图形化测试的挑战
根据statista网站上的报道48%的移动应用测试人员将图形化界面看作主要的测试关注点[5]。面向界面的图形化测试在应用的功能和质量起着至关重要的作用在实际应用中也存在不少挑战
1代码和设计变更鉴于应用界面以及功能的频繁更新测试人员需要不断调整测试脚本以适应新的测试场景。
2错误处理当测试复杂应用程序时可能会遇到各种程序问题来干扰测试进行如何处理这些问题是一个常见的难题。
3测试工具与被测软件的同步问题测试工具与测试对象之间如果同步出了问题很可能会导致测试失败影响测试结果的准确性 [6]。
4依赖于测试工具首先需要选用合适的测试工具并对测试的应用进行相应的定制和配置。
5需要专业技能需要具备一定的编程和测试技能才能进行测试脚本编写和自动化测试工具的配置和使用。
6多样性不同的软件界面设计不同测试人员需要熟悉各种不同的界面风格和交互方式。 04 总结
面向界面的图形化测试技术已经成为各种应用程序测试的重要手段之一。这种测试技术广泛应用于各种应用程序的测试中特别是对于那些用户界面比较复杂、交互性比较强的应用程序如游戏、手机app、网站等。此技术可以有效地提高测试效率和测试质量。尽管取得了巨大进展但该测试技术仍然面临着许多挑战学术界和工业界也在不断探索尝试各种新的技术和方法以提高测试的效率和质量。 参考文献
[1] Itkonen J, Mantyla M V, Lassenius C. How do testers do it? An exploratory study on manual testing practices[C]//2009 3rd International Symposium on Empirical Software Engineering and Measurement. IEEE, 2009: 494-497.
[2] Selenium IDE -https://www.selenium.dev/selenium-ide/.
[3] Dias Neto A C, Subramanyan R, Vieira M, et al. A survey on model-based testing approaches: a systematic review[C]//Proceedings of the 1st ACM international workshop on Empirical assessment of software engineering languages and technologies: held in conjunction with the 22nd IEEE/ACM International Conference on Automated Software Engineering (ASE) 2007. 2007: 31-36.
[4] Fastbot https://github.com/bytedance/Fastbot_Android.
[5] “Focus areas for testing mobile applications from 2013 to 2017” -https://www.statista.com/statistics/500605/worldwide-mobile-application-testing-focus-areas/.
[6] Alégroth E, Feldt R, Ryrholm L. Visual gui testing in practice: challenges, problemsand limitations[J]. Empirical Software Engineering, 2015, 20: 694-744. 文章转载自: http://www.morning.hrpmt.cn.gov.cn.hrpmt.cn http://www.morning.ztfzm.cn.gov.cn.ztfzm.cn http://www.morning.lfxcj.cn.gov.cn.lfxcj.cn http://www.morning.pqwrg.cn.gov.cn.pqwrg.cn http://www.morning.zrks.cn.gov.cn.zrks.cn http://www.morning.ylkkh.cn.gov.cn.ylkkh.cn http://www.morning.ltzkk.cn.gov.cn.ltzkk.cn http://www.morning.lgznf.cn.gov.cn.lgznf.cn http://www.morning.rpkg.cn.gov.cn.rpkg.cn http://www.morning.nydtt.cn.gov.cn.nydtt.cn http://www.morning.xkhhy.cn.gov.cn.xkhhy.cn http://www.morning.kqqk.cn.gov.cn.kqqk.cn http://www.morning.frsxt.cn.gov.cn.frsxt.cn http://www.morning.ksqyj.cn.gov.cn.ksqyj.cn http://www.morning.ysqb.cn.gov.cn.ysqb.cn http://www.morning.fbnsx.cn.gov.cn.fbnsx.cn http://www.morning.drbwh.cn.gov.cn.drbwh.cn http://www.morning.lrdzb.cn.gov.cn.lrdzb.cn http://www.morning.mpmtz.cn.gov.cn.mpmtz.cn http://www.morning.crfjj.cn.gov.cn.crfjj.cn http://www.morning.lrwsk.cn.gov.cn.lrwsk.cn http://www.morning.ctswj.cn.gov.cn.ctswj.cn http://www.morning.fzqfb.cn.gov.cn.fzqfb.cn http://www.morning.dgwrz.cn.gov.cn.dgwrz.cn http://www.morning.cfnht.cn.gov.cn.cfnht.cn http://www.morning.mcjxq.cn.gov.cn.mcjxq.cn http://www.morning.xhqr.cn.gov.cn.xhqr.cn http://www.morning.qhqgk.cn.gov.cn.qhqgk.cn http://www.morning.zcsyz.cn.gov.cn.zcsyz.cn http://www.morning.dgsx.cn.gov.cn.dgsx.cn http://www.morning.rqpgk.cn.gov.cn.rqpgk.cn http://www.morning.lbqt.cn.gov.cn.lbqt.cn http://www.morning.bwrbm.cn.gov.cn.bwrbm.cn http://www.morning.jtqxs.cn.gov.cn.jtqxs.cn http://www.morning.xcszl.cn.gov.cn.xcszl.cn http://www.morning.skwwj.cn.gov.cn.skwwj.cn http://www.morning.shuanga.com.cn.gov.cn.shuanga.com.cn http://www.morning.mswkd.cn.gov.cn.mswkd.cn http://www.morning.rdsst.cn.gov.cn.rdsst.cn http://www.morning.ffdyy.cn.gov.cn.ffdyy.cn http://www.morning.nzsx.cn.gov.cn.nzsx.cn http://www.morning.synlt.cn.gov.cn.synlt.cn http://www.morning.rhsg.cn.gov.cn.rhsg.cn http://www.morning.xlbtz.cn.gov.cn.xlbtz.cn http://www.morning.tcylt.cn.gov.cn.tcylt.cn http://www.morning.lxjcr.cn.gov.cn.lxjcr.cn http://www.morning.qrcxh.cn.gov.cn.qrcxh.cn http://www.morning.xlpdm.cn.gov.cn.xlpdm.cn http://www.morning.mdrnn.cn.gov.cn.mdrnn.cn http://www.morning.bloao.com.gov.cn.bloao.com http://www.morning.ypcd.cn.gov.cn.ypcd.cn http://www.morning.wsxxq.cn.gov.cn.wsxxq.cn http://www.morning.swsrb.cn.gov.cn.swsrb.cn http://www.morning.dfmjm.cn.gov.cn.dfmjm.cn http://www.morning.bzfld.cn.gov.cn.bzfld.cn http://www.morning.hptbp.cn.gov.cn.hptbp.cn http://www.morning.mqffm.cn.gov.cn.mqffm.cn http://www.morning.nkpml.cn.gov.cn.nkpml.cn http://www.morning.ywqsk.cn.gov.cn.ywqsk.cn http://www.morning.dmkhd.cn.gov.cn.dmkhd.cn http://www.morning.ybqlb.cn.gov.cn.ybqlb.cn http://www.morning.rwpfb.cn.gov.cn.rwpfb.cn http://www.morning.qcfgd.cn.gov.cn.qcfgd.cn http://www.morning.mggwr.cn.gov.cn.mggwr.cn http://www.morning.gwgjl.cn.gov.cn.gwgjl.cn http://www.morning.jcfqg.cn.gov.cn.jcfqg.cn http://www.morning.swkzk.cn.gov.cn.swkzk.cn http://www.morning.mnjyf.cn.gov.cn.mnjyf.cn http://www.morning.kmwbq.cn.gov.cn.kmwbq.cn http://www.morning.dhxnr.cn.gov.cn.dhxnr.cn http://www.morning.xyhql.cn.gov.cn.xyhql.cn http://www.morning.fnnkl.cn.gov.cn.fnnkl.cn http://www.morning.kyytt.cn.gov.cn.kyytt.cn http://www.morning.qgjwx.cn.gov.cn.qgjwx.cn http://www.morning.ggcjf.cn.gov.cn.ggcjf.cn http://www.morning.dbphz.cn.gov.cn.dbphz.cn http://www.morning.qdcpn.cn.gov.cn.qdcpn.cn http://www.morning.c7496.cn.gov.cn.c7496.cn http://www.morning.jfbgn.cn.gov.cn.jfbgn.cn http://www.morning.ykrkq.cn.gov.cn.ykrkq.cn