mac下搭建appium python selenium来针对ios应用进行自动化测试,并不是官网上的例子,自己程序调试成功。

  前言:因为appium的安装前要先确定nodejs的安装、python的安装、npm、selenium的安装 这些不想洗说。直接appium  

  一:安装appium,签完不能用sudo进行安装

      1、npm install appium  等待。这样成功后接着下一步

      2、npm install wd(为什么安装,真的不知道,貌似没安装也行)

      3、去下载appium 的dum文件进行安装。官网下载就好,直接安装

      4、sudo pip install Appium-Python-Client   安装,我不知道这个和上面的有什么区别,只是安装上面那个报错了

到这里貌似appium安装好了,接下来就是ios打包的问题:

      问题:

        在开始的时候我直接是用xcode打的app包,然后手机里面也是把这个包安装好了的,结果无论怎么的,都是报错,报错,报错。

      办法:

        在网上找的所有教程,都是说的官网上下载那个教程,然后使用xcodebuild进行打包,然后怎么怎么的,可是我不是要例子,我只能用自己的包,所以问题来了:

        1、xcode里面打包的方式好几种,而且签名好几种,那么你需要进行选择,这个找开发帮忙,不细说,纠结。

        2、build的时候因为大多数用了pod这个第三方的插件,所以打包基本都会报错,那么找开发解决吧。打包的时候涉及到一个参数问题,指定工程名进行打包

        3、打包的时候直接在xcode里面选择project,选择build,不要选择其他的,这个时候build出来的包就在工程下面会多一个buld文件,这里面找到.app文件,拷贝出来,放在根目录下。

        4、把包弄好了之后,启动appium客户端,然后选择苹果那个小图标进行选择,在基本设置里面把刚.app文件的路径加进去,下面buildid的id在ccode里面找到输入进去,还有就是uuid,输入进去,其他的没了。

        5、脚本:

#-*- coding: UTF-8 -*-
import unittest
from appium import webdriver
import time class SimpleIOSTests(unittest.TestCase): def setUp(self):
# setup appium
app = '/Users/Easter/Desktop/AutoTestIOS/StudyAndProgress.app' #和小图标里面的路径必须一样,下面的id和小图标里面的id必须一样
self.driver = webdriver.Remote(
command_executor='http://127.0.0.1:4723/wd/hub',
desired_capabilities={
'app': app,
'platformName': 'iOS',
'platformVersion': '7.1',
'deviceName': '5422c4433ce7ab54545de64f39627a80b8b65en'
}) def tearDown(self):
self.driver.quit() def test_ui_computation(self):
time.sleep(5)
# populate text fields with values
#最新版本的appium使用name定位的时候会有问题。看了一下资料说的是appium的bug。
el = self.driver.find_element_by_xpath("//UIAApplication[1]/UIAWindow[1]/UIATabBar[1]/UIAButton[2]")
el.click()
time.sleep(5) if __name__ == '__main__':
suite = unittest.TestLoader().loadTestsFromTestCase(SimpleIOSTests)
unittest.TextTestRunner(verbosity=2).run(suite)

  

appium python ios 自动化的更多相关文章

  1. (appium+python)UI自动化_09_unittest批量运行测试用例&生成测试报告

    前言 上篇文章[(appium+python)UI自动化_08_unittest编写测试用例]讲到如何使用unittets编写测试用例,并执行测试文件.接下来讲解下unittest如何批量执行测试文件 ...

  2. Appium + Python App自动化第一个脚本

    今天跟大家讲解一个Appium和Python App自动化的脚本.[1]打开你的夜神模拟器(或者连接你的手机) [2]打开桌面的Appium [3]下载你要测的App的apk文件,放到桌面[4]拖动你 ...

  3. (appium+python)UI自动化_08_unittest编写测试用例

    前言 unittest是python自带的单元测试框架,类似于Junit(Java单元测试框架).支持自动化测试,可编写测试前置&后置条件,并且可批量运行测试用例并生成测试报告. 使用unit ...

  4. (appium+python)UI自动化_07_app UI自动化实例【叮咚搜索加车为例】

    前言 初学UI自动化的小伙伴,在配置好appium+python自动化环境后,往往不知道如何下手实现自动化.小编在初期学习的时候也有这种疑惑,在此以叮咚买菜app-搜索加车为实例,展示下appium是 ...

  5. (appium+python)UI自动化_02_appium启动手机app

    前提:需先安装配置好appium+python自动化环境,已配置好环境的小伙伴可以参考以下步骤启动Android app,具体步骤如下: 一.USB连接手机 (1)手机USB连接电脑 (2)手机打开开 ...

  6. [小菜随笔]新手使用appium+python进行自动化测试过程中webdriver.Remote报错的错误分析方法(带实例)

    很多人刚开始使用python+appium去执行APP自动化的时候经常会遇到webdriver.Remote,报错位置指向都是driver = webdriver.Remote('http://127 ...

  7. Appium + Python App自动化(2)第一个脚本

    [1]打开你的夜神模拟器(或者连接你的手机) [2]打开桌面的Appium [3]下载你要测的App的apk文件,放到桌面 [4]拖动你的apk安装包到夜神模拟器里,然后模拟器会提示你安装.安装.原来 ...

  8. (appium+python)UI自动化_01_自动化环境搭建【MAC版】

    Appium简介 Appium是一个开源的.跨平台的测试框架,主要用来进行app UI自动化,适用于原生应用.混合应用和移动网页应用(H5页面).目前支持Python.JavaScript.Objec ...

  9. APPium+Python+iOS屏幕滑动方法对比

    最近在学习appium自动化,对iOS手机进行滑动操作进行总结: 1.mobile:scroll;该方法在实际使用调用时,会滚动2次.执行时间很长. 向下滚动整个屏幕driver.execute_sc ...

随机推荐

  1. unity中object 对象之间用c# delegate方式进行通信

    unity 3D经常需要设计到不同object之间数据通信和事件信息触发.这里可以利用C#本身的事件和代理的方法来实现. 这里实现了在GUI上点击按钮,触发事件,移动object cube移动的例子. ...

  2. 团队作业1——团队展示&选题

    Deadline: 2017-4-5 22:00PM,以博客发表日期为准 评分基准: 按时交 - 有分,检查的项目包括后文的四个方面 团队博客 团队选题 团队计划 团队成员贡献分分配规则 晚交 - 0 ...

  3. 团队作业8——Beta 阶段冲刺4th day

    团队作业8--Beta 阶段冲刺4rd day 一.当天站立式会议   二.每个人的工作 (1)昨天已完成的工作(具体在表格中) 添加了支付功能,并且对支付功能进行了测试 (2)今天计划完成的工作(具 ...

  4. 201521123018 《Java程序设计》第4周学习总结

    1. 本章学习总结 2. 书面作业 Q1.注释的应用:使用类的注释与方法的注释为前面编写的类与方法进行注释,并在Eclipse中查看.(截图) Q2.面向对象设计(大作业1-非常重要) 2.1 讲故事 ...

  5. 201521123110《Java程序设计》第1周学习总结

    1.第一周学习总结 `本周开始了对java的初次学习接触,Java是一门新的编程语言不同于C,由于有了c的基础,对于Java的理解和学习也相对从前学C更容易些. 也学习了Java的诞生发展以及运用包括 ...

  6. 201521123064 《Java程序设计》第11周学习总结

    1. 本章学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多线程相关内容. ① 定义Thread类的子类,覆盖Thread类的run()方法,然后创建该子类的实例(一般不用该方法,开销大. ...

  7. java第十周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常与多线程相关内容. 2. 书面作业 1.finally 题目4-2 1.1 截图你的提交结果(出现学号) 1.2 4-2中fin ...

  8. MyBatis框架(一)

    MyBatis介绍: MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为 ...

  9. Python数据分析(二): Numpy技巧 (1/4)

    In [1]: import numpy numpy.__version__ Out[1]: '1.13.1' In [2]: import numpy as np  

  10. Power Strings poj2406(神代码)

    Power Strings Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 29402   Accepted: 12296 D ...