欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

用Python 3实现Sikuli的用户界面自动化测试指南

最编程 2024-02-23 21:25:19
...

背景:

项目需要在微信端小程序覆盖UI自动化测试,使用appium成本太高,故考虑可否使用sikuli来做。

调研:

问题:Sikuli使用的是java编写,python无法直接调用其api
解决方法:JPype

JPype是一个能够让 python 代码方便地调用 Java 代码的工具,从而克服了 python 在某些领域(如服务器端编程)中的不足。

安装方法:pip install JPype

实例

'''

coding:utf-8

from jpype import *
import os
from selenium import webdriver
from utils.base import Base

DIR = os.path.dirname(os.path.abspath('.'))
IMG_PATH = DIR + '/sikuli/'

"""
启动浏览器,打开被测页面
"""
driver = webdriver.Chrome(executable_path=CHROME_DRIVER_PATH)
driver.maximize_window()
driver.get(Base.get_config_value('config', 'testEnv', 'url_3.0'))

"""
由于Sikuli使用的是java编写,python无法直接调用其api,必须使用JPype来调用
"""
"""
JPype是一个能够让 python 代码方便地调用 Java 代码的工具,从而克服了 python 在某些领域(如服务器端编程)中的不足。
"""

startJVM(r'C:\Program Files\Java\jre1.8.0_101\bin\server\jvm.dll', '-ea', r'-Djava.class.path=D:\sikuli\sikulixapi.jar') # 启动 JAVA 虚拟机
Screen = JClass('org.sikuli.script.Screen') # 返回一个Java类给Python
screen = Screen() # 实例化这个类
screen.click(IMG_PATH + '跳过.PNG') # 点击事件
screen.click(IMG_PATH + '地址簿.PNG')

driver.quit()
'''

【招聘】顺丰科技
测试工程师( 薪资15-25k)
岗位描述

参与平台系统软件产品测试的全流程,包括参与需求分析、设计评审,制定测试计划,设计和执行测试用例,进行缺陷跟踪和软件质量分析等;
独立完成项目测试,包括制定测试计划,分配测试资源,构建测试环境,执行集成测试,回归测试等;
保证被测系统的质量,并通过测试流程和方法创新,努力提升研发的质量和效率;
对测试系统进行测试方案评估和项目整体跟进,并协助定位排查问题。
任职要求
1、本科及以上学历,计算机相关专业,3年以上大中型企业系统测试经验;
2、Java基础知识扎实,有Spring技能的优先;
3、熟练运用SQL, 较熟练使用MySQL数据库相关工具;
4、具有接口自动化、页面自动化、性能测试其中一种技能;
5、具有物流行业系统研发经验者优先。

有意向者请将简历发送至493745311@qq.com