2020年测试趋势


文章作者:Dmitry Shadrin



介绍


我想分享一下我的顶级测试工具,这些工具每周都会帮助我有效地工作并提高绩效。

我将测试外包,并且必须使用各种类型的产品:移动应用程序和游戏,Web,针对桌面的严肃的加密货币项目等。在本文中,我想选择最方便,最有意义的工具,这些工具可以帮助我在测试移动应用程序时优化我的工作。

移动应用


在测试移动应用程序中需要强调的最重要的事情是功能测试。当您确定产品的制造对象是谁,最终用户是谁时,只有您才能为您的应用程序进行胜任的端到端测试。

我们始终在开始测试时就符合应用程序的要求和设计。一个好的质量检查人员应该知道被测产品的要求,而一个好的质量检查人员应该是设计的朋友。这不仅意味着可以查看Figma,Invision或Zeplin,而且还可以了解其应用程序的UI / UX。
为了更准确地合并所有用户在应用程序屏幕之间的移动,通常会编译思维导图。对于我来说最方便的是,我可以选择xMind,Mindomo和MindMeister。

随着思维导图的出现和更新,测试应用程序变得更加容易,特别方便的是更新和补充测试文档(例如,清单)。

一个好的检查表是基于项目要求,当前实现中分配给团队的功能和任务的文档。心智图使您不会忘记并考虑所有细微差别,从而为端到端测试奠定了良好的基础。一项服务将帮助您找到现成的清单并更新自己的清单:https : //checkvist.com/checklists/476089


验证上述情况所需的工具:

Charles或Fiddler嗅探器,是迄今为止最流行的网络流量分析工具。它们使您可以检查网络故障和Internet弱的情况,查看传出的请求和收到的答案。它们还允许您模拟一些在实际案例中难以重现的情况。

在进一步测试API时,来自嗅探器的数据将派上用场。但是对于使用API​​,我建议您使用专门的工具:Swagger UI,Postman。两种工具都解决了两个问题:请求文档及其交互验证。

值得考虑测试过程的自动化。自动执行移动应用程序的UI测试的最常见解决方案之一是Appium。相对容易入门的门槛和丰富的文档资料,以及庞大的质量保证专家队伍将始终帮助您解答问题。

Appium是一个免费的开源跨平台工具,可帮助自动执行适用于Android和iOS的应用程序。它是用于为智能手机和平板电脑创建自动测试的最广泛使用的工具之一。

Appium的优势无疑是易于使用,以及对许多编程语言的支持:Java,Ruby,Python,C#,PHP。

在开始使用Appium之前,必须从以下组件配置环境:



安装软件后,您可以照管该应用程序。您需要.apk-为Android应用程序提供一个适用于iOS的.ipa文件,以便在运行测试时将该应用程序安装在所选设备上。如果未在设备上安装该应用程序,则测试代码将安装它,然后自己运行测试。

在自动化测试过程中,迟早会出现问题:在真实设备上或使用仿真器进行测试。正如实践和无情的统计数据表明,仿真器不是万能药。当一切都可以在仿真器上完美运行并且所有测试都通过时,情况非常普遍。但是在真实设备上,该应用程序被安全系统,其他应用程序或自定义固件(您好,Android!)的运行所阻止。
我的建议是合并并使用设备场。服务,例如Br​​owserStack,AWS Device Farm,Xamarin Test Cloud。连接到真实设备后,可以将自动测试集成到这些服务中并查看结果。但是,始终将目标设备放置在设备停放区中,以及位于上下限位置的设备(最小允许数量和旗舰数量)始终是值得的。

Appium的一个很好的选择是codecept.io。
如果您更喜欢JS作为开发自动测试的语言,欢迎使用CodeceptJS。详细的文档,测试不会占用太多的屏幕空间(您将理解我的意思),并且所有现代移动操作系统的积极支持都将使您倾向于该工具。

在您的项目进行了大量的自动测试之后,每次构建新版本时都可以自动启动它们。自定义和配置这将帮助您使用现代CI \ CD系统。就个人而言,我更喜欢詹金斯(Jenkins)或Teamcity,但这在这里是一个品味问题。

减少和优化回归测试的另一个工具是依赖性矩阵(它也是跟踪矩阵)。简而言之-这是一个表格,其中记录了系统各元素之间的依赖性。要编译这样的矩阵,您需要了解应用程序代码,这也将有助于咨询项目架构师。但是最终,这样的工具将显着(在我的记忆中-高达40%)减少回归测试的时间。您可以阅读有关矩阵的更多信息。在这里

提示的


给定移动应用程序的具体细节,这是我的一组有用的提示,用于查找最大数量的错误。

  • 始终检查折叠/翻转,从睡眠模式中唤醒并打开/关闭它的情况。对于Android,有一个设置-不保留活动(DNKA)。使用此设置进行测试时,请确保在bug中指出此缩写,以便开发人员更容易重现此缩写。
  • 通知/通知-有本地通知和服务器通知(即与网络连接绑定)。始终值得记住它们并检查其正常运行。它们应始终引导至目标屏幕。或者,您应该放弃它们,直到开发人员找到正确的导航方式。
  • Charles . .
  • , , . . , .
  • . iOS: ipa- . Android , , . .
  • , QA . .
  • . , . , . . . “ ” .
  • . , . 20% . , . , , “ QA”.
  • . .


在本说明中,我想回顾一下日常工作中使用的基本工具和提示。您可以在OTUS培训平台上的移动测试课程中了解有关所有现代工具的更多信息我还邀请您参加一个免费课程,在该课程的框架内,我们将详细讨论针对移动Android / iOS应用程序的现代测试实践,讨论2020年必要的测试人员,并考虑使我们的工作和测试自动化的主题。

All Articles