智能电视测试对象的测试向导

testwizard.smart-tv的Python项目详细描述


测试向导-智能电视

Python language support for testing Smart-Tv devices using testwizard

使用

  • 导入testwizard.test和测试向导。智能电视包装
  • 获取一个会话并使用它来创建一个智能电视测试对象。在
  • 使用此对象执行命令。在
  • 您可以使用会话添加在脚本完成时将报告给robot的结果或设置将立即发布的结果。在

示例脚本

Python(智能-电视.py)

fromsysimportpathpath.append("../packages/test")path.append("../packages/testobjects/core")path.append("../packages/testobjects/smartTv")path.append("../packages/commands/core")path.append("../packages/commands/audio")path.append("../packages/commands/powerswitch")path.append("../packages/commands/remotecontrol")path.append("../packages/commands/video")path.append("../packages/commands/camera")fromtestwizard.testimportTestWizardfromtestwizard.testimportResultCodesfromtestwizard.smart_tvimportSmartTvwithTestWizard()asTW:session=TW.sessionprint("-- Parameter usage ---")print("  Param1 = "+session.parameters["param1"])print("  Param2 = "+session.parameters["param2"])print("-- Session info ---")print("  scriptFilePath = "+session.info["scriptFilePath"])print("  scriptFileName = "+session.info["scriptFileName"])print("  storagePath = "+session.info["storagePath"])print("  tester = "+session.info["tester"])print("  environment.scriptsBasePath = "+session.info["environment"]["scriptsBasePath"])print("  environment.storageBasePath = "+session.info["environment"]["storageBasePath"])print("  environment.ocrEngine = "+session.info["environment"]["ocrEngine"])print("  environment.testWizardVersion = "+session.info["environment"]["testWizardVersion"])ifsession.info["session"]isnotNone:print("Script was started by the Manager:")print("  session.id = "+session.info["session"]["id"])print("  session.name = "+session.info["session"]["name"])print("  session.scriptIndex = "+session.info["session"]["scriptIndex"])else:print("Script was started from the IDE")print("-- Create Smart TV test object ---")smartTv=SmartTv(session,"SmartTv")print("-- Smart TV test object info ---")print("  id = "+smartTv.info.id)print("  name = "+smartTv.info.name)print("  category = "+smartTv.info.category)print("  device.serialNo = "+smartTv.info.device.serialNo)print("  device.hardwareVersion = "+smartTv.info.device.hardwareVersion)print("  device.softwareVersion = "+smartTv.info.device.softwareVersion)print("  device.description = "+smartTv.info.device.description)print("  device.vendor.name = "+smartTv.info.device.vendor.name)print("  device.vendor.modelName = "+smartTv.info.device.vendor.modelName)print("  device.vendor.serialNo = "+smartTv.info.device.vendor.serialNo)print("-- Commands ---")basePath=session.info["environment"]["scriptsBasePath"]print("smartTV: cameraInitializeNetwork")result=smartTv.cameraInitializeNetwork()print(result.message)ifresult.successisFalse:print("Fail")session.addFail(result.message)snapShotFilePath=basePath+"smart-tv-py-test.jpg"print("smartTV: cameraSnapShot")result=smartTv.cameraSnapShot(snapShotFilePath)print(result.message)ifresult.successisFalse:print("Fail")session.addFail(result.message)motionX=347motionY=2motionWidth=64motionHeight=30motionDuration=5motionDistanceThreshold=10print("smartTV: cameraDetectMotion with motion - custom distanceThreshold")result=smartTv.cameraDetectMotion(motionX,motionY,motionWidth,motionHeight,motionDuration,motionDistanceThreshold)print(result.message)ifresult.successisFalseornotresult.hasMotion:print("Fail")session.addFail(result.message)print("smartTV: cameraDetectMotion with motion - default distanceThreshold")result=smartTv.cameraDetectMotion(motionX,motionY,motionWidth,motionHeight,motionDuration)print(result.message)ifresult.successisFalseorresult.hasMotion:print("Fail")session.addFail(result.message)print("smartTV: cameraDetectMotion with no motion - custom distanceThreshold")result=smartTv.cameraDetectMotion(motionX+64,motionY,motionWidth,motionHeight,motionDuration,motionDistanceThreshold)print(result.message)ifresult.successisFalseorresult.hasMotion:print("Fail")session.addFail(result.message)matchingReference=basePath+"Mibox_Home.bmp"nonMatchingReference=basePath+"Mibox_NotHome.bmp"roiX=146roiY=257roiWidth=150roiHeight=145sampleMatchDuration=5sampleMatchDistanceThreshold=21print("smartTV: cameraWaitForSampleNoMatch with no match - custom distanceThreshold")result=smartTv.loadReferenceBitmap(nonMatchingReference)print(result.message)ifresult.successisFalse:print("Fail")session.addFail(result.message)result=smartTv.cameraWaitForSampleNoMatch(roiX,roiY,roiWidth,roiHeight,sampleMatchDuration,sampleMatchDistanceThreshold)print(result.message)ifresult.successisFalseorresult.hasMatchisTrue:print("Fail")session.addFail(result.message)print("smartTV: cameraWaitForSample with match - default distanceThreshold")result=smartTv.loadReferenceBitmap(matchingReference)print(result.message)ifresult.successisFalse:print("Fail")session.addFail(result.message)result=smartTv.cameraWaitForSample(roiX,roiY,roiWidth,roiHeight,sampleMatchDuration)print(result.message)ifresult.successisFalseorresult.hasMatchisFalse:print("Fail")session.addFail(result.message)matchingPattern=basePath+"Mibox_Home_Pattern.bmp"patternX=180patternY=96patternWidth=81patternHeight=81patternMatchDuration=5patternMatchDistanceThreshold=21print("smartTV: cameraWaitForPattern with match - custom distanceThreshold")result=smartTv.cameraWaitForPattern(matchingPattern,patternX,patternY,patternWidth,patternHeight,patternMatchDuration,patternMatchDistanceThreshold)print(result.message)ifresult.successisFalseorresult.hasMatchisFalse:print("Fail")session.addFail(result.message)nonMatchingPattern=basePath+"Mibox_NotHome_Pattern.bmp"print("smartTV: cameraWaitForPatternNoMatch with no match - default distanceThreshold")result=smartTv.cameraWaitForPatternNoMatch(nonMatchingPattern,patternX,patternY,patternWidth,patternHeight,patternMatchDuration)print(result.message)ifresult.successisFalseorresult.hasMatchisTrue:print("Fail")session.addFail(result.message)ifnot(session.hasFailsorsession.hasErrors):session.setResult(ResultCodes.PASS,"Test was successful")

侧车文件(智能-电视.json)

^{pr2}$

许可证

Testwizard licensing

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何使用精灵表快速设置精灵运动的动画?   为什么我的Python帖子可以工作,但我的Java帖子给出了CSRF错误?   java有没有从Maven POM生成Ant构建脚本的简单方法?   排序Java维护对象集合的顺序   java在安卓中使用edittext作为html编辑器   Java Swing float左侧面板,带竖条   java在执行Collatz contejure时无法打印1   java如何使用“文件”读取而不修改实际文件?   java如何创建基于Spring4注释的通道?   java错误:范围中没有BPN类型的封闭实例{   java如何在另一个类中使用方法   java创建字符串到接口的映射,接口/函数参数和返回类型不同   清单中的Java类路径未启动库   AbstractRequestContext上的google应用程序引擎NullPointerException。doFire(AbstractRequestContext.java:1102)   JSON对象中的java JSON数组返回null   java如何在每次将数据字段(如电子邮件)插入数据库时发现其唯一性?   当我调用类的异步类时,java在Android中不是一个封闭类   java Bat文件在退出时打开空白命令提示符   java链接jQuery文件与SpringMVC