首页 文章 精选 留言 我的

精选列表

搜索[游戏解决方案],共10000篇文章
优秀的个人博客,低调大师

Android自动化测试解决方案

现在,已经有大量的 Android 自动化测试 架构或工具可供我们使用,其中包括:Activity Instrumentation,MonkeyRunner,Robotium,以及Robolectric。另外LessPainful也提供服务来进行真实设备上的自动化测试。 Android自身提供了对instrumentation测试的基本支持,其中之一就是位于android.test包内的ActivityInstrumentationTestCase2类,它扩展了JUnit的TestCase类来提供Android activities的功能测试。在应用测试中,每一个activity首先会被Instrumentation初始化,然后再加载到Android模拟器或设备的Dalvik虚拟机中来执行。 Android SDK自带一个测试工具MonkeyRunner,它提供的API和执行环境可以运行Python语言编写的测试代码。它提供API来连接设备,安装/卸载应用,运行应用,截屏,比对图片来判断特定命令执行后的屏幕是否包含预期信息,以及运行对应用的测试。MonkeyRunner使用ActivityInstrumentationTestCase2,ProviderTestCase,ServiceTestCase,SingleLaunchActivityTestCase及其他类来定义测试用例,并使用InstrumentationTestRunner类来运行测试。 Robotium是另一种通过InstrumentationTestRunner来完成Android交互式测试的架构,它横跨多个activities,支持功能测试,系统测试和接收测试。Robotium支持Activities、Dialogs、Toasts、Menus、Context Menus甚至Honeycomb,并且它可以同Maven和Ant集成来完成持续集成测试。Robotium被称之为针对Android应用的又一个“Selenium“。 Robolectric另辟蹊径,它并不依赖于Android提供的测试功能,它使用了shadow objects并且运行测试于普通的工作站/服务器JVM,不像模拟器或设备需要dexing(Android dex编译器将类文件编译成Android设备上的Dalvik VM使用的格式),打包,部署和运行的过程,大大减少了测试执行的时间。Pivotal实验室声称使用Robolectric可以在28秒内运行1047个测试。 LessPainful将Android测试又推进了一步,它提供了一个多设备平台自动化测试的服务。用户上传应用(*.apk)和用Cucumber(一种业务相关的DSL)编写的测试文件,选择测试运行需要的设备配置,最后测试将自动执行并生成测试报告。它支持的设备包括Garmin Asus,几款HTC,LG,Samsung Galaxy,Sony Xperia和Motorola Motodefy。 为了了解更多LessPainful提供的服务细节,我们采访了LessPainful公司的CEO Jonas Maturana Larsen。下面就是这次简短的访问: InfoQ:在不同版本的Android上运行应用程序,存在什么问题?为了保证程序能正常运行,开发者需要在Android的每一个版本上测试他的应用吗? JML:举个例子,SAXParser在Android 2.2之前有一个bug存在于对ContentHandler.startElement的回调中,它导致应用产生错误的行为。 到目前为止,我们已经在很多方面发现了不同操作系统版本间的差异性。其中一些可能在2.1-update1上导致崩溃,但可以正常运行于2.1-update3和2.2. InfoQ:不同的设备对Android来说,有没有真正的区别?你能否给我们举个例子,比如Android2.2应用可以运行在HTC但不能运行于Samsung?(或其他各种Android版本和设备制造商的组合) JML:在LG手机,HorizontalScrollViews有时会导致子视图上的背景图片消失。这个问题存在于我们测试的所有的LG手机,不管Android版本是多少。 如果你不自己处理这类问题,它将导致你的应用在不同设备上不尽相同。例如,Motorola将会用红色边框来高亮一个输入域。在我曾经参与的一个项目中,我们用同样的红色边框来表示输入有误。 还有一些问题,与其说和制造商相关,不如说是和硬件相关:比如,一些手机使用了较小的RAM和高分辨率的摄像头,当你处理手机上的图像时就会将导致崩溃。 InfoQ:这些测试是如何执行的? JML:测试就如同运行一个ActivityInstrumentationTestCase2,主要使用Robotium来运行。我们对应用所做的唯一修改就是去掉已有的签名,再为它重新生成我们的签名文件。 在测试运行完成后,应用会被卸载,而手机也会被恢复到初始设置。 InfoQ:与MonkeyRunner,Robotium和Robolectric相比,你们所提供的服务有什么优势呢? JML:LessPainful是一种服务,而并不仅仅是一种架构。我们希望创建一种服务,不但使测试能够进行,并且比起其他任何一种架构,它能够节省我们大量测试时间,还能够帮助我们发现更多的bug。 另外,我们相信使用Cucumber,可以清晰地定义高层次测试描述,同时可以更好地被开发团队以外的人员共享。 以Git领域为例,我们更希望成为像是GitHub那样,而不只是通常的git库。 InfoQ:你们有计划未来要支持更多的设备吗? JML:是的。我们计划继续增加对更多设备的支持。如果有这样的要求提出,我们就会努力完成它。 目前,我们也在着手于对iOS设备的支持,希望beta版能在今年秋季发布。 InfoQ:什么是LessPainful企业版? JML:我们将提供一个工具集,它就类似于一个Mac Mini,但我们会非常灵活的满足顾客的需求。LessPainful企业版目前还没有正式推出,所以敬请期待。 本文出自seven的测试人生公众号最新内容请见作者的GitHub页:http://qaseven.github.io/

优秀的个人博客,低调大师

报警分析云上集成解决方案

背景: 本实践是以化工业的安全生产为背景,随着工业企业的日益大型化和复杂化,非正常事件(下称故障)不仅影响了企业效益,更带来了很多的安全问题。据非正常状况管理联盟(Abnormal Situation Management,简称ASM)的统计,美国由于故障在石油化工领域造成的经济损失一年就高达200 亿美元,而炼油厂平均每三年就发生一次重大事故,平均损失8 千万美元。 化工业具有较高的自动化程度,DCS和现场总线广泛应用,各种单点报警也被大量使用,它们对提高系统安全性起到很好的作用,然而随着装置的大型化和复杂化,报警数量的众多和无序以及设计的随意性使得真正有用的报警信息淹没在大量冗余和虚假的报警信号中,特别是故障发生的时刻,大量相关的报警信号突然出现,让操作人员无法有效的分辨真实的报警源头,称之为报警泛滥(Ala

优秀的个人博客,低调大师

Android和Unity混合开发——解决方案

按这篇文章来做 http://blog.csdn.net/a369414641/article/details/53436477 要注意的地方 1.app是Android Libray,否则无法打包出.aar包 你可以自已在工程里加Android Libray,名字无所谓 2.文章中没有说manifest怎么修改lauch activty,只 说拿Unity安装目录下的manifest.xml,本人修改后出错 提示un merge,大意是无法合并的意思,目前不知如何解决 所以本人未修改,然后可以生成APK 收获是虽然启动时不能指定自已的MainActivety,但是代码里用AndroidJavaClass可以调用到.aar包里面的类

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册