testcase's People
testcase's Issues
Flex自动化测试工具-ranorex初步使用
到今天,很多flex自动化测试工具已经停止维护,包括一些开源或者商业化的工具,比如Fluorida(08年停止维护),FunFx(10年停止维护),Flex Pilot(11年停止维护),flex-ui-selenium(15年停止维护),FlexMonkey(非开源,15年官方宣布终止),RIATest(非开源,官方宣布终止,许可证用到19年作废)
现在支持flex的,更多的是较为成熟的商业化工具,比如QTP/UTF(只支持Flex在ie上的测试),SilkTest(新版全面支持flex),ranorex(全面支持flex),Selenium(开源,只支持flex在web上的测试)等
本次主要试用了一下Ranorex:
官网https://www.ranorex.com ,最新版本是7.10,该版本尚未破解
经测试,7.10版本在录制后进行回放的过程中,出现较为严重的延迟卡顿,原因尚不明确
对此,采用重装上一版本7.0.1版本(已有破解),延迟卡顿现象极大的缓解。
Ranorex使用教程可以参考https://www.ranorex.com/help/latest/ (官方原版教程) 或 http://www.zengyuetian.com/?p=357 (几年前国人翻译版)
1.待测应用程序环境需求
我们待测目标程序是基于air的flex应用,所以两步设置
(1)将RanorexAutomation.swc(ranorex安装路径的bin目录中)添加到项目的编译参数中,例如
-locale en_US -include-libraries "D:/Program Files (x86)/Ranorex 7.1/Bin/RanorexAutomation.swc"
(2)在应用程序文件的applicationCompleteHandler函数中,添加
import Ranorex.RxAutomation;
RxAutomation.Init();
-
录制回放功能
点击record,选择待测应用就可以开始进行录制.
录制过程中,很容易被其他程序干扰,所以录制应注意关闭不必要的应用,另外,因为录制过程中对应用程序的操作需要有一些记录截图等内容,所以每一步操作可能会等待较长的一段时间,不过在回放的过程中,并不会有很长的等待。
下图是一个之前录制的示例图
如图,记录着之前录制时的每一步操作,可以修改相关的参数进行配置,图中绿色的是一些局部变量,默认是外部无法修改的,可以通过一些绑定操作变成可外部配置(导出exe和配置文件后可配置)
录制好的脚本是不可修改的cs脚本,但是可以修改usercode.cs替代这些脚本
项目可以导出成可执行文件+配置文件,复制到其他机器上同样可以运行
如图所示,配置文件testa.rxtst文件可以设置参数
以下是运行示例
内存稳定性测试(针对domain memory修改部分)
测试内容:
内存稳定性测试
测试版本:
针对”将geometry的vertex和index data移到domain memory”的修改(接口人:陈名来),jenkins引擎库构建记录#4
测试时间:
2017.07.25
测试环境:
测试机①:R7,win7 64位, chrome,ie8
测试机②:intel4000,win7 64位 chrome,ie8
测试步骤:
1.测试机①的ie浏览器,测试机②的chrome浏览器执行TestCase中的WCTest测试,使用的引擎库为未更新domain memory的上一版引擎库
2.测试机②的ie浏览器,测试机①的chrome
浏览器执行TestCase中的WCTest测试,使用的引擎库为更新后的引擎库
3.统计每次切换时的内存使用情况(这里主要统计System.privateMemory),绘制图表进行对比
注:WCTest为不断切换王城场景,每次切换前会将privateMemory通过socket发送给服务器。
测试数据:
图中纵坐标为内存(privateMemory)单位:MB,横坐标为切换次数
测试结果:
图中灰线和蓝线是新版本的库,通过对比可以看出,修改domain memory后,内存占用量明显减少,并且内存仍然相对稳定
内存稳定性测试(针对寻路优化)
测试内容:
内存稳定性测试
测试版本:
针对”寻路优化”的修改(接口人:陈波),jenkins引擎库构建记录#5
测试时间:
2017.07.25
测试环境:
测试机①:R7,win7 64位, chrome,ie8
测试机②:intel4000,win7 64位 chrome,ie8
测试步骤:
1.两台测试机均执行TestCase中的WCTest测试,使用的引擎库为寻路优化后的版本
2.统计每次切换时的内存使用情况(这里主要统计System.privateMemory),绘制图表进行对比
3.提取数据与domain memory版本的测试结果进行对比
注:WCTest为不断切换王城场景,每次切换前会将privateMemory通过socket发送给服务器。
测试数据:
图中纵坐标为内存(privateMemory)单位:MB,横坐标为切换次数
测试结果:
1.通过寻路优化后内存情况可以看出,寻路库优化后,内存仍处于稳定状态(注:ie浏览器由于自身问题,所以波动较大,但峰值是稳定的)
2.通过寻路优化前后对比可以看出,寻路库优化后,不会对增加内存开销(注:二图的对比数据并不是同一时间进行的,因此数据会有误差,二者执行时间相近,误差在可接受范围)
需求:编辑器资源未加载完时,不允许保存资源
编辑器使用批量保存功能保存错误资源时,取消保存操作会导致编辑器无法使用
测试内容:
资源中存在不可用的资源时,使用编辑器批量保存功能进行操作。
测试版本:
ver1.2.281
测试时间:
2017/08/07
测试步骤:
1.将一个非awd文件重命名为awd类型文件(创建一个空文本文件aaa.txt重命名为aaa.awd)
2.在编辑器中使用“File-批量保存”功能,加载该文件,之后点击取消按钮
测试结果:
1.对于错误文件,如果不点击取消按钮,编辑器会一直处于保存“aaa.awd”的状态中,不会自动中断,也不会继续保存下一个
2.点击取消按钮后后,批量保存界面关闭,但是鼠标样式并未恢复(一个时钟样式),且鼠标无法操作出菜单栏之外的功能,如图所示
期望结果:
1.保存错误资源时,期望能自动停止保存操作
2.取消批量保存后,编辑器应恢复可使用状态
chrome浏览器进行御龙游戏,反复将flash切换到后台,会出现失去焦点、画面卡主的问题
问题描述:
chrome浏览器中,进行御龙游戏,反复将flash切换到后台,会出现失去焦点、画面卡主的情况。
如图所示,游戏界面静止不动,鼠标和键盘操作均无效,可以通过缩放浏览器窗口恢复
画面卡主过程中,鼠标点击界面上的UI,UI实际上会被触发,但只有画面恢复之后才会看到相关变化(问题反馈,收藏有礼等会直接弹出窗口)
画面恢复后,一定几率会导致人物位置出现错误
在scout中查看,发现无报错,帧数仍在继续
测试版本:
引擎库:2017.07.27_19.10.26_release_final
游戏版本:482.17.13.10.2
测试时间:
2017.07.28
测试环境:
win7 64位,Chrome 浏览器:版本 59.0.3071.115(正式版本) (32 位)
地址:http://168.168.44.130/index_debug.html 测试服
账号 : wangl145
测试步骤:
通过反复讲游戏置于后台的方式,比如浏览器中新建页签,然后拖拽页签为新窗口,然后再次拖拽窗口回到游戏所在窗口,反复数次
多次尝试发现,在游戏运行时间较久,在自动任务的过程中,较易出现。
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.