appium自动化测试系列IOS

启动appium服务端

打开终端输入appium &或者appium。默认ip:0.0.0.0,端口4723。当然ip和端口可以在启动的时候配置。

>appium -a 127.0.0.1 -p 4724  //直接以127.0.0.1:4724启动服务

-a对应IP地址,-p对应端口,这2个可以共同使用也可以单独使用。

>appium -a 127.0.0.1 //以127.0.0.1:4723启动服务
>appium -p 4724 //以0.0.0.0:4724启动服务

java代码

public class BaseIOSTest {

    //Driver
    protected IOSDriver<IOSElement> driver;


    /**
     * 配置启动driver
     *
     * @throws Exception
     */
    @Before
    public void setUp() throws Exception {

        //app的目录
        File appDir = new File("/Users/duanding/appium/sample-code-master/sample-code/apps/TestApp/build/release-iphonesimulator/");
        //app的名字,对应你apps目录下的文件
        File app = new File(appDir, "TestApp.app");
        //创建Capabilities
        DesiredCapabilities capabilities = new DesiredCapabilities();
        capabilities.setCapability(MobileCapabilityType.PLATFORM_NAME, "iOS");
        capabilities.setCapability(MobileCapabilityType.PLATFORM_VERSION, "10.3");
        capabilities.setCapability(MobileCapabilityType.DEVICE_NAME, "iPhone 6");
        capabilities.setCapability(MobileCapabilityType.APP, app.getAbsolutePath());

        //启动driver
        driver = new IOSDriver<IOSElement>(new URL("http://0.0.0.0:4723/wd/hub"), capabilities);

    }

    @After
    public void tearDown() throws Exception {
        //测试完毕,关闭driver,不关闭将会导致会话还存在,下次启动就会报错
        driver.quit();
    }


    /**
     * 要执行的的测试方法
     */
    @Test
    public void addContact() {
        try {
            Thread.currentThread().sleep(10000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }

}

遇到的坑

一开始始终连接不上模拟器,最后查看appium server日志打印,找到对应的错误以及提示。

Please make sure that you have Carthage installed (https://github.com/Carthage/Carthage)

安装Carthage

brew install carthage

连接上ios模拟器之后发现打开app之后直接闪退,然后appium直接进入阻塞状态,经过对比推测之后,发现是因为签名了之后的包需要添加证书相关信息,最后使用未签名的app包,成功执行脚本。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容