appium(一)环境与属性解释

本文介绍了Appium作为开源自动化工具的基本使用,包括环境配置、服务器启动、客户端依赖设置及测试脚本编写。通过Maven集成TestNG,利用Appium API进行测试。官方提供了不同编程语言的demo,方便参考学习。长按操作也在文中提及。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Appium是一个开源的自动化工具,可以用任意的编程语言去写

使用Appium需要在本地设置一个相应服务器,相应自动化脚本的服务器,如果需要安装请百度具体教程,或者使用node.js的命令在全局模式安装,可视化可以用GUI安装,会生成桌面图标

启动时要设置host和port,如果server是安装在本机的,那么host为127.0.0.1,默认端口号为4723点击start后appium的服务就开启了

客户端建议使用maven进行编译在pom文件进行依赖(百度一下appium maven和testng的依赖就有了,官方建议用testng),下载后就直接可以使用appium中各种各样的api了),下载后就直接可以使用appium中各种各样的api了

创建好测试类后就可以使用testng生成骨架,使用alt+insert选择Generate->setup method、test Method、TearDown method这三个生成基本的骨架。

如果不知道脚本怎么编写,可以再官方查看给出的demo:(github.com/appium/sample-code/tree/master/sample-code/examples)根据不同的编程语言选择junit–>然后在目录中即可选择demo进行查看

创建好骨架之后需要使用对应的driver,所以需要声明一下,使用官方给出的demo,依次解释一下:

    //这是driver
    private AppiumDriver<WebElement> driver;

    @BeforeMethod
    public void setUp() throws MalformedURLException {
		获取根目录
        File classpathRoot = new File(System.getProperty("user.dir"));
		
		把需要安装apk的路径放进去
        File app = new File(classpathRoot, "路径/apk名字.apk");
		
		这个是绑定设备熟的属性,所以new了一个新对象出来
        DesiredCapabilities capabilities = new DesiredCapabilities();
		
		设备的名字,这个可以随便改
        capabilities.setCapability("deviceName","yibole");
		
		这个是指被测应用的路径
        capabilities.setCapability("app", app.getAbsolutePath());
		
		如果想要不是每次都是第一次启动,可以设置noReset的值喂true
		capabilities.setCapability("noReset",true);	
		这个是启动类,启动类如何获得(需要反编译或者使用SDK的aapt工具):在目录下dir,然后输入aapt dump badging 加上apk的名字就可以查看他的属性,其中launchable-activity:name=“巴拉巴拉”就是他的启动类com.巴拉巴拉开头的
        capabilities.setCapability("appActivity", "com.balabala");
		因为上面声明了一个driver,下面这个是对对象进行实例化,AndroidDriver是服务端的地址,这里的地址需要和appium一致,否则发了请求没有回复
        driver = new AndroidDriver<WebElement>(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
    }

环境和属性基本就是这个样子,先吃饭(`ヮ´ )

========================================
和selenium差不多,就是先定位,然后给出操作的指令

长按

今天无意间看到一个长按的代码

先把定位好的路径返回给返回值类型为WebElement的first。
WebElement first = driver.findElementByXPath("Xpath路径");
然后new一个TouchAction方法,给个名字叫touch
TouchAction touch = new TouchAction(driver);
然后使用这个方法的longPress方法,并把路径交给他,然后在用preform的release,就可以长按了
touch.longPress(first).perform().release();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值