器材自动化脚本录制

将屏幕分辨率调整为1920*1080(重)

1、下载Python、Pycharm、脚本录制工具,拉取对应工程(http://git.sdp.nd/vlab-automator-group/VLabAutomatorV3.git ) ,更新子模块并拉取到最新。打开工程后修改对应配置,配置成功后右键运行E:\VLabAutomatorV3\scripts\materials\LvDouMiaoElement\TC13685_LYQ\test_13685_LYQ.air内的脚本,打开播放器则配置成功。



2、点击脚本录制工具,通过99u账号密码登录。
若出现无法连接服务器的问题,需修改config文件中服务器的地址

服务器新IP:http://vlab-rec.debug.ndaeweb.com
如遇到无法无法打开可能是服务器关闭或者更换IP地址,请咨询陈高武(512528),更换了新IP的话请同步到上方~
3、进入脚本录制工具,点击设置,配置对应编辑器与播放器路径保存;点击录制,颗粒类型选择本地,粘贴颗粒路径,脚本类型选择元器件;点击打开应用,颗粒正常打开后,点击连接应用。

4、进入存放颗粒的网址,点击f12,点击对应颗粒,复制颗粒路径。

5、连接成功后,点击选择用例,输入器材编码,获取对应用例,选中一条用例后,点击开始录制,每步操作尽量间隔一段时间,录制完成后点击调试—》进入,点击重启应用或者点击播放器重新开始,全选步骤,点击单步调试,按n跳转下一步,若下一步无法执行,可右键添加延时操作,直到所有步骤正常执行完毕。


6、点击生成—》下一步,选择脚本存放路径后生成脚本(本步骤请看备注


备注:
此步骤不能直接在工具内点击生成脚本然后在git上传,这样会导致工程内无法切换状态,在提测时无法获取到自动化脚本导致自动化测试不通过并且没有错误结果返回。在这一步需要现在调试中确认录制的脚本能够正常运行,之后直接点击右下角的上传上传按钮,脚本会自动上传到git工程并在数据库和用例平台把关联状态正确切换,我们只需要在git仓库拉取之后再添加断言并上传。
7、脚本视频录制与通用断言(分类、序号需播放器支持,旋转观察、移动与鼠标进入器材无法断言):

(1)分类:器材从器材栏拖出即可

(2)图片:截图存在于录制的视频中,使用assert_exists(Template(r”1-1验证缩略图.png”, threshold=0.9, rgb=True, target_pos=9), print(“验证缩略图成功”))进行断言,仅修改图片名字。(器材拖出后续等待一定时间在结束录制)

(3)名称:器材从器材栏拖出即可,断言:properties = self.rc.dump_element_properties(self.rc.joinLabRoot(“LvDouMiaoElement”), 0, “”,”Property uiTable.ObjName”)
assert_equal(properties[“Value”], “I18N/LvDouMiaoElement/ObjName”, “绿豆苗名称错误”)

(4)质量:properties = self.rc.dump_element_properties(self.rc.joinLabRoot(“LvDouMiaoElement”), 0,””,”Property ContainerMass”)
assert_equal(properties[“Value”], 200, “绿豆苗质量错误”)

(5)进入最佳视角(退出false):
properties = self.rc.dump_element_properties(self.rc.joinLabRoot(“LvDouMiaoElement”), 0, “”,”Function IsBestAgnleState”)
assert_equal(properties[“Value”], True, “绿豆苗未进入观察模式”)

(6)重力:
properties = self.rc.dump_element_properties(self.rc.joinLabRoot(“LvDouMiaoElement”),0,””,”Property mechanicsObjIds”)
assert_equal(“Value” in properties.keys(), True, “重力id不存在”)

(7)高亮:
properties = self.rc.dump_element_properties(self.rc.joinLabRoot(“LvDouMiaoElement”), 0, “”,”Property isHighLight”)
assert_equal(properties[“Value”], False, “点击空白区域后没有正确退出高亮”)

(8)拼接:
ldmID = self.rc.dump_element_properties(self.rc.joinLabRoot(“LvDouMiaoElement”), 0, “”,”Property entityId”)
dkzxID = self.rc.dump_element_properties(self.rc.joinLabRoot(“DaiKongZhiXiangElement”), 0, “”, “Property entityId”)
str1 = “GlobalFunction JointMgr.CheckHaveRecord number:” + str(ldmID[“Value”]) + “,string:Root,number:” + str(dkzxID[“Value”]) + “,string:Root”
properties = self.rc.dump_element_properties(self.rc.joinLabRoot(“LvDouMiaoElement”), 0, “”, str1)
assert_equal(properties[“Value”], True, “带孔纸箱无法拼接绿豆苗”)

(注:
1、若出现已执行通过的脚本后续执行报错,可删除当前用例脚本缓存后重新执行

2、若录制的脚本出现运行异常,需使用1.1.7版本脚本录制工具(预计十一月发布)

脚本录制工具 https://im-cloud.sdp.101.com/?lang=zh-CN&sdp-app-id=b4fb92a0-af7f-49c2-b270-8f62afac1133#/sharing/JGPigEV6/folder/740632792865472512?_k=i3lz1d
断言通用字段 https://docs.qq.com/sheet/DU0VoZlpkWkJhR1lP?tab=BB08J2
器材单元测试 https://www.showdoc.com.cn/VLab/7594593927527777
资源自动化文档 https://docs.qq.com/doc/DYW9CQUdxdFpiaEVn