简体   繁体   English

iPhone测试自动化 - 基准测试工具?

[英]iPhone test automation - benchmark tools?

Hi we are expanding one of our projects in a major bank to include access via mobile devices. 嗨,我们正在扩大我们在一家大银行的项目之一,包括通过移动设备进行访问。 We are evaluating a few tools - inc. 我们正在评估一些工具 - 公司。 perfecto mobile, experitest and deviceanywhere. perfecto mobile,experitst和devicesanywhere。 From our initial evaluation perfecto and device anywhere cover a larger set of handsets inc feature phones. 从我们最初的评估中,perfecto和设备可以覆盖更多的手机配备功能手机。 Experitest on the other hand is strong and simple to operate with smartphones(iphone, android etc). 另一方面,Experitest非常强大且易于使用智能手机(iphone,android等)。 Can anyone share experience from using these tools for large scale projects? 任何人都可以分享使用这些工具进行大型项目的经验吗? we are mainly concerened re stability, ability to work with QTP and support considerations (support for new devices etc). 我们主要是保持稳定性,使用QTP的能力和支持考虑因素(支持新设备等)。

I have used DeviceAnywhere extensively. 我已广泛使用DeviceAnywhere。 Perfecto, not that much, after a pretty dissapointing trial period. 在经历了相当令人失望的试用期后,Perfecto并没有那么多。 DA has support/add-ins for QTP and QC. DA具有QTP和QC的支持/加载项。 Perfecto does not cover QC. Perfecto不包括QC。 Perfecto is not faster than DA, since most of their devices are in Israel, and not the US. Perfecto并不比DA快,因为他们的大多数设备都在以色列,而不是美国。 DA has a few datacenters in the US and abroad, hence you have a better chance to get better performance. DA在美国和国外都有一些数据中心,因此您有更好的机会获得更好的性能。 DA has an pretty long list of Enterprise and Carrier customers...while Perfecto seems like a very small company. DA拥有相当长的企业和运营商客户名单......而Perfecto似乎是一家非常小的公司。 Compare their website quality-it's pretty obvious which one looks more professional...You should try them both and make up your mind... 比较他们的网站质量 - 很明显哪一个看起来更专业...你应该尝试两者并下定决心......

I have used all 3 platforms many times 我多次使用所有3个平台

Only Perfecto Mobile and DA are robust enough for real testers (at least for enterprise level). 只有Perfecto Mobile和DA足够强大,适合真正的测试人员(至少对于企业级别而言)。

DA have more devices but Perfecto are 100% web based, faster and MUCH cheaper. DA有更多的设备,但Perfecto是100%基于网络,更快,更便宜。 Both offer automation environments with pros and cons but Perfecto offers QTP integration and enhanced security solutions 两者都提供有利有弊的自动化环境,但Perfecto提供QTP集成和增强的安全解决方案

Conclusion - both systems good, Perfecto cheaper, Perfecto much better for enterprises engaging in mobile testing. 结论 - 对于从事移动测试的企业来说,两个系统都很好,Perfecto更便宜,Perfecto更好。

Guido 圭多

Think of coupling a standard software remote control product with a standard software test robot (like QTP). 考虑将标准软件远程控制产品与标准软件测试机器人(如QTP)耦合。

As an alternative, and being a mostly device-independent , but bitmap-dependent solution, you could use one of the many remote controls to bring the mobile's display contents to the desktop. 作为替代方案,您可以使用众多远程控件中的一个将移动设备的显示内容带到桌面,这是一种主要与设备无关依赖于位图的解决方案。 Then, you'd "click around" in that remote control window using you favourite test robot. 然后,使用您最喜欢的测试机器人在该遥控器窗口中“点击”。

Stupid that sounds? 听起来有点愚蠢吗? Well, it has its strong and its weak points: 嗯,它有其强大和弱点:

If QTP is set for you, you'd be stuck on bitmap synchronization, no other useful GUI properties would be visible. 如果为您设置了QTP,您将陷入位图同步,不会看到其他有用的GUI属性。 However, if you have some QTP know-how on board, you could reuse all the know-how for test management integration via QC, test data addressing, and so on, scripting "art" like wait-for-the-right-thing, convert bitmaps to text, and so on. 但是,如果您拥有一些QTP专有技术,您可以通过QC,测试数据寻址等方式重用测试管理集成的所有专有技术,编写“艺术”脚本,例如等待正确的事情,将位图转换为文本,依此类推。 You could even "in real time" verify the results displayed on the mobile to stuff in the corporate backend, or research expected results in some central database after doing some transaction on the mobile -- all that would be easy since your test robot runs as part of the IT infrastructure all the time, so it has easy access to those resources. 您甚至可以“实时”验证移动设备上显示的结果以填充公司后端,或者在移动设备上执行某些事务后在某些中央数据库中研究预期结果 - 这一切都很简单,因为您的测试机器人运行时这是IT基础架构的一部分,因此可以轻松访问这些资源。 And those accesses could be done with all the comfort we got used to on PC-based test robots, like for example QTP's database checkpoint. 这些访问可以通过我们在基于PC的测试机器人上习惯的所有舒适度来完成,例如QTP的数据库检查点。

The positive aspect would be: Using such a scenario, you are largely independent of the mobile's technical details, and could support a lot of different devices by just using different sets of expected bitmaps. 积极的方面是:使用这样的场景,您在很大程度上独立于移动设备的技术细节,并且可以通过使用不同的预期位图集来支持许多不同的设备。 (Provided the workflows are exactly the same, which of course is not always the case.) (如果工作流程完全相同,当然并非总是如此。)

If you don't have to buy an extra test robot, this solution might be unbeatable cheap. 如果您不需要购买额外的测试机器人,这种解决方案可能是无与伦比的便宜。 Most Windows mobile devices for example can be used with Microsoft's free remote control, and there are lots of commercial vendors offering remote control functionality for a variety of devices in one package. 例如,大多数Windows移动设备可以与Microsoft的免费远程控制一起使用,并且有许多商业供应商在一个包中为各种设备提供远程控制功能。

Also, you could develop test scripts using emulators emulating the mobile device, because the test robot would not know the difference between a display being fetched from the real thing, or being shown by the emulator. 此外,您可以使用模拟移动设备的仿真器来开发测试脚本,因为测试机器人不会知道从真实物体获取的显示器或模拟器显示的显示器之间的区别。

I've done all that with various remote controls and PDA/smartphone devices, using CitraTest or QTP as the test robot. 我已经使用CitraTest或QTP作为测试机器人,使用各种遥控器和PDA /智能手机设备完成了所有这些工作。 I was very happy not having to mess around with yet-another-specialized tool, or even more than one of them, each with their own language, or methodology. 我很高兴不必使用另一种专业工具,甚至不止一种工具,每种工具都有自己的语言或方法。

Biggest hurdles besides the ones already mentioned were: 除了已经提到的障碍之外,最大的障碍是:

  • find a remote control that is versatile, fast and reliable 找到一个多功能,快速和可靠的遥控器
  • find a way to let the mobile use its "normal" communication path (for example, cellular connection) for all applications while, for performance reasons (and to minimize side effects), the remote control is connected through a direct connection (USB, propretiary synch cable, network...whatever the mobile supports). 找到一种让移动设备为所有应用程序使用其“正常”通信路径(例如,蜂窝连接)的方法,同时由于性能原因(并最大限度地减少副作用),远程控制通过直接连接(USB,propretiary)连接同步电缆,网络...无论移动支持什么)。
  • create a scripting "standard" which is sufficiently exact to keep test robot and mobile app execution synchronized while avoiding re-capturing expected bitmap for all supported devices too often (this can be partly automated) 创建一个足够精确的脚本“标准”,以保持测试机器人和移动应用程序执行同步,同时避免过于频繁地重新捕获所有支持设备的预期位图(这可以部分自动化)
  • timing problems -- when you are on the bitmap level, it is hard to tell if you waited "long enough" for some message to appear, disappear, or whatever. 计时问题 - 当您处于位图级别时,很难判断您是否等待“足够长时间”某些消息出现,消失或其他任何情况。
  • cover exotics like "app continues only after you took a photo with the mobile camera". 覆盖外来物品,例如“应用程序仅在您使用移动相机拍照后继续”。 Generally speaking: Control the built-in periphery (what a contradiction...) of the mobile (in my case, I had to make the barcode scanner "see" specific images -- quite difficult and usually very device-dependent to automate) 一般来说:控制移动设备的内置外围设备(多么矛盾...)(在我的情况下,我必须让条形码扫描器“看到”特定的图像 - 非常困难,通常非常依赖于设备自动化)

It's feasable, though, and such a solution can be very stable and realiable, with a sufficient grade of cost-efficiency in terms of test maintenance effort (depending on what changes how frequently in the app-to-test, of course). 但是,它是可行的,并且这样的解决方案可以非常稳定和可靠,在测试维护工作方面具有足够的成本效率等级(当然,取决于应用程序测试中的频率变化)。

jQuery runs a lot of tests automatically on both feature phones and smart phones, maybe you can use their test system. jQuery在功能手机和智能手机上自动运行大量测试 ,也许你可以使用他们的测试系统。 As a side note, check if jQuery mobile is for you, it seems very cool. 作为旁注,检查jQuery mobile是否适合您,看起来非常酷。

To the best of my knowledge Perfecto Mobile has made some major improvments to its offering and currently offers some major benefits over the others, including price. 据我所知,Perfecto Mobile已经对其产品进行了一些重大改进,目前提供了一些主要优势,包括价格。 In the last few months they've added popular devices like Lenovo nePaone. 在过去的几个月里,他们增加了联想nePaone等流行设备。 You can see the full list om their website:www.perfectomobile.com. 您可以在他们的网站上看到完整列表:www.perfectomobile.com。 Since they use differentontrol technology than Device Anywhere they are capabable of supporting new devices really quickly. 由于他们使用与Device Anywhere不同的控制技术,因此他们可以非常快速地支持新设备。 Regarding stability and QTP they also have many advantages over the others. 关于稳定性和QTP,它们也具有许多优点。 For instance, tools to record your own specific user scenarios and test them repeatedly across devices - this is a great automation tool for large scale projects. 例如,用于记录您自己的特定用户场景并跨设备重复测试的工具 - 这是一个适用于大型项目的强大自动化工具。

If you are testing bank application you should consider the security issue. 如果您正在测试银行应用程序,则应考虑安全问题。 How do you protect your application and application data. 您如何保护您的应用程序和应用程序数据。 Once you release a phone, someone else can get control over it. 一旦您释放手机,其他人就可以控制它。 My recommendation is to use the on-site capabilities I believe all the above solutions have. 我的建议是使用我相信上述所有解决方案的现场功能。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM