此篇介绍如何安装WebDriverAgent,下一篇介绍facebook-wda库的安装使用以及自动化脚本的开发

前言:

对于iOS的应用的测试,如果不需要用到图像识别,推荐使用这个项目facebook-wda

目录:

一、前提准备条件             返回目录

环境配置

  1. MacOs
  2. Xcode(建议更新为最新版本)
  3. npm
  4. carthage

安装npm和Carthage

  1.  
  1. # 安装 node
    brew install node
  1. # 查看npm版本
    npm -v
  2. 6.2.0

# 安装Carthage:

  1. brew install Carthage
  2. # 如果只是更新请输入
    brew upgrade carthage

注:如果用brew安装十分的慢,采用国内镜像

  1. # 长期替换(建议使用此项配置) 
  2. echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles'>>   ~/.bash_profile   
  3.  
  4. #执行.bash_profile脚本让配置即时生效
  5. source ~/.bash_profile 

参考:《Homebrew更换国内镜像提升下载速度

从github中克隆WebDriverAgent项目

cd到自定义的文件夹下下载:

  1. git clone https://github.com/facebook/WebDriverAgent
  1. Cloning into 'WebDriverAgent'...
  2. remote: Enumerating objects: 18281, done.
  3. remote: Total 18281 (delta 0), reused 0 (delta 0), pack-reused 18281
  4. Receiving objects: 100% (18281/18281), 15.61 MiB | 52.00 KiB/s, done.
  5. Resolving deltas: 100% (6909/6909), done.

*运行初始化脚本

首先需要先进入到WebDriverAgent项目的根目录下

  1. # 进入到WDA 根目录
  2. cd WebDriverAgent/
  3.  
  4. # 运行初始化脚本
  5. ./Scripts/bootstrap.sh
  1. Fetching dependencies
  2. Please update to the latest Carthage version: 0.31.1. You currently are on 0.30.1
  3. *** Checking out RoutingHTTPServer at "v1.0.1"
  4. *** Cloning RoutingHTTPServer
  5. *** xcodebuild output can be found in /var/folders/gf/jjhn56c97293xtjvtwlnwr8h0000gp/T/carthage-xcodebuild.RROZOv.log
  6. *** Downloading RoutingHTTPServer.framework binary at "v1.0.1"
  7. Building Inspector
  8. Creating bundle directory...
  9. Fetching Inspector dependencies...
  10. npm WARN deprecated css-list@0.1.3: Deprecated.
  11. npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
  12. npm WARN deprecated browserslist@0.4.0: Browserslist 2 could fail on reading Browserslist >3.0 config used in other tools.
  13.  
  14. > fsevents@1.2.4 install /Users/zhan/Desktop/mine/Stu资料/Git/WebDriverAgent/Inspector/node_modules/fsevents
  15. > node install
  16.  
  17. [fsevents] Success: "/Users/zhan/Desktop/mine/Stu资料/Git/WebDriverAgent/Inspector/node_modules/fsevents/lib/binding/Release/node-v64-darwin-x64/fse.node" already installed
  18. Pass --update-binary to reinstall or --build-from-source to recompile
  19. npm notice created a lockfile as package-lock.json. You should commit this file.
  20. npm WARN react-dom@15.6.2 requires a peer of react@^15.6.2 but none is installed. You must install peer dependencies yourself.
  21. npm WARN web-driver-inspector@1.0.0 No repository field.
  22.  
  23. added 759 packages from 536 contributors and audited 2620 packages in 69.318s
  24. found 9 vulnerabilities (4 low, 4 high, 1 critical)
  25. run `npm audit fix` to fix them, or `npm audit` for details
  26. Validating Inspector
  27. Building Inspector...
  28.  
  29. > web-driver-inspector@1.0.0 build /Users/zhan/Desktop/mine/Stu资料/Git/WebDriverAgent/Inspector
  30. > webpack --progress --colors
  31.  
  32. Hash: 0acdc7e8b3b0d143afc5
  33. Version: webpack 1.15.0
  34. Time: 7085ms
  35. Asset Size Chunks Chunk Names
  36. inspector.js 862 kB 0 [emitted] main
  37. [0] multi main 28 bytes {0} [built]
  38. + 226 hidden modules
  39. Done

二、证书配置               返回目录

1、Xcode打开WebDriverAgent目录下的WebDriverAgent.xcodeproj文件。

(1)按照下面图的步骤依次执行点击,先配置WebDriverAgentLib

(2)按照下面图的步骤依次执行点击,再配置WebDriverAgentRunner

但是会提示问题:

The app ID "com.facebook.WebDriverAgentRunner" cannot be registered to your development team. Change your bundle identifier to a unique string to try again.

请进入WebDriverAgentRunner -> Build Settings设置中,找到Packaging中的选项,将其内容修改为唯一识别的字符串,如下图所示

不报错了:

三、运行与测试            返回目录

1、iphone手机连接Mac,并添加信任

设置=》通用=》设备管理=》开发者应用=》验证应用

2、选择Product->Destination->你的设备

3、选择Product->Scheme->WebDriverAgentRunner

4、然后进行运行,Product中选择test

运行后会提示输入密码:

一直输入密码,直到它不提示为止,此密码应该为登录密码。

参考文章:《codesign 想要访问您的钥匙串中的密钥

========================================

(2019.12.28更新)

这款iPhone 6s Plus运行的是iOS 12.1(16B92),这个版本的Xcode可能不支持它。

提示当前的xcode版本不支持IOS12.1,我当前的xcode是10,手机是12.1.
解决办法有两个:
一是,更新xcode版本,如果有时间还是建议xcode升级到最新的11吧
二是,增加xcode10中对12.4的支持包。放到设备支持路径下。

参考文章:

IOS调试报错“xxxx is running iOS 12.4 (16G77), which may not be supported by this version of Xcode.”

iOS 真机调试包集合 包含 iOS 12.4

①下载包地址:

iOS 真机调试包集合,包含 iOS 12,下载地址:https://pan.baidu.com/s/1lav6Xiy16lpEA9lUl16m6w 密码: w53z

②解压后放到路径:

快捷键:command + shift +G

拷贝到路径:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/

重启xcode,重新连接手机。

还会报错:

Verify the Developer App certificate for your account is trusted on your device. Open Settings on iPhone6sPlus and navigate to General -> Profiles & Device Management, then select your Developer App certificate to trust it.

验证您的设备上是否信任您帐户的开发人员应用程序证书。打开iPhone6sPlus上的设置并导航到“常规”->“配置文件和设备管理”,然后选择要信任的开发者应用证书。

打开手机设置->通用->设备管理

========================================

但是,运行后创建成功,但是证书有问题。

The certificate used to sign "WebDriverAgentRunner-Runner" has either expired or has been revoked. An updated certificate is required to sign and install the application.

用于签署“WebDriverAgentRunner Runner”的证书已过期或被撤销。需要更新的证书来签署和安装应用程序。

打开“钥匙串访问”,查看【我的证书】得知,原来是证书过期了。

右键删除此证书。

删除证书后 ,再重新添加,如下图

再次运行Xcode,先删除之前的运行的,Product->Clean Build Folder

此时,不出意外 WDA在手机中安装成功,并且下面控制台输出下面的效果。

打开控制台方法:选择view->Debug Area->Activate console打开底部控制台。

然后控制台会输出IP地址和端口,例如:http://192.168.0.0:8100/status,输入在浏览器中,

确认WDA是否运行成功。如果出现一串JSON输出,说明WDA安装成功了。

四、端口转发               返回目录

但是可能页面刷新出不来:

  1. # 使用--HEAD安装最新版本
  2. $ brew install libimobiledevice --HEAD
  3. $ iproxy 8100 8100

但是会提示你需要更新:

  1. Warning: libimobiledevice HEAD-26373b3_2 is already installed and up-to-date
  2. To reinstall HEAD_3, run `brew reinstall libimobiledevice`
  3. $ brew reinstall libimobiledevice

更新后:

  1. # 运行命令后会显示如下:
  2. $ iproxy 8100 8100
  3. waiting for connection

参考文章:《【转自Testerhome】iOS 真机如何安装 WebDriverAgent

此时浏览器输入:http://localhost:8100/status ,确认WDA是否运行成功。

而inspector的地址是http://localhost:8100/inspector, inspector是用来查看UI的图层,方便写测试脚本用的

至此安装WDA以及连接IOS手机成功!!!!

五、扩展:用命令启动webDriverAgent(特别推荐)

参考文章:

Doris_Liu:《mac虚拟机搭建自动化环境-wda和python wda client

1、新建start.sh文件:

1)进入webDriverAgent目录,创建start.sh文件:

  1. # 创建文件
  2. touch start.sh
  3. # 进入编辑模式
  4. vi start.sh

2)按下键盘上的“i”键,进入编辑状态。可以看到命令的下方出现了“--INSERT--”字样,表示成功进入了编辑模式。

3)输入以下内容

# 解锁keychain,以便可以正常的签名应用,
PASSWORD="123"
security unlock-keychain -p $PASSWORD ~/Library/Keychains/login.keychain

# 获取设备的UDID
UDID=$(idevice_id -l | head -n1)

# 运行测试
xcodebuild -project WebDriverAgent.xcodeproj -scheme WebDriverAgentRunner -destination "id=$UDID" test

4)输入完成后,按下“Esc”键,退出编辑模式。并在此时输入“:wq”以退出并保存刚刚输入的内容。

这样就将启动webDriverAgent的命令保存在了start.sh文件中了

5)执行start.sh文件:

①进入WebDriverAgent,如果一直保留在此路径可以忽略此操作
  1. cd /xxx/xxx/WebDriverAgent
②重置Xcode路径,不然会报错: xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance

解决办法参考:《MAC 苹果电脑 Xcode文件路径》《重置Xcode路径

  1. sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer/
③执行start.sh文件

执行下面命令时会报错:Permission denied,就是没有权限。

解决办法参考:《在mac中怎么运行.sh文件

  1. # 修改文件start.sh 的权限,使用命令:
  2. chmod 777 start.sh
  3.  
  4. # 执行start.sh文件
  5. ./start.sh

创建成功显示如下:

  1. note: Using new build system
  2. note: Planning build
  3. note: Constructing build description
  4. ProcessInfoPlistFile /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Products/Debug-iphoneos/WebDriverAgentLib.framework/Info.plist /Users/zhan/Desktop/mine/Stu资料/Git/WebDriverAgent/WebDriverAgentLib/Info.plist (in target: WebDriverAgentLib)
  5. cd /Users/zhan/Desktop/mine/Stu资料/Git/WebDriverAgent
  6. builtin-infoPlistUtility /Users/zhan/Desktop/mine/Stu资料/Git/WebDriverAgent/WebDriverAgentLib/Info.plist -expandbuildsettings -format binary -platform iphoneos -requiredArchitecture arm64 -o /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Products/Debug-iphoneos/WebDriverAgentLib.framework/Info.plist
  7.  
  8. ProcessProductPackaging "" /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Intermediates.noindex/WebDriverAgent.build/Debug-iphoneos/WebDriverAgentRunner.build/WebDriverAgentRunner.xctest.xcent (in target: WebDriverAgentRunner)
  9. cd /Users/zhan/Desktop/mine/Stu资料/Git/WebDriverAgent
  10.  
  11. Entitlements:
  12.  
  13. {
  14. "application-identifier" = "QTXY6MWF7T.com.facebook.WebDriverAgentRunner.zc1224";
  15. "com.apple.developer.team-identifier" = QTXY6MWF7T;
  16. "get-task-allow" = 1;
  17. "keychain-access-groups" = (
  18. "QTXY6MWF7T.com.facebook.WebDriverAgentRunner.zc1224"
  19. );
  20. }
  21.  
  22. builtin-productPackagingUtility -entitlements -format xml -o /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Intermediates.noindex/WebDriverAgent.build/Debug-iphoneos/WebDriverAgentRunner.build/WebDriverAgentRunner.xctest.xcent
  23.  
  24. ProcessInfoPlistFile /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Products/Debug-iphoneos/WebDriverAgentRunner-Runner.app/PlugIns/WebDriverAgentRunner.xctest/Info.plist /Users/zhan/Desktop/mine/Stu资料/Git/WebDriverAgent/WebDriverAgentRunner/Info.plist (in target: WebDriverAgentRunner)
  25. cd /Users/zhan/Desktop/mine/Stu资料/Git/WebDriverAgent
  26. builtin-infoPlistUtility /Users/zhan/Desktop/mine/Stu资料/Git/WebDriverAgent/WebDriverAgentRunner/Info.plist -expandbuildsettings -format binary -platform iphoneos -additionalcontentfile /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Intermediates.noindex/WebDriverAgent.build/Debug-iphoneos/WebDriverAgentRunner.build/ProductTypeInfoPlistAdditions.plist -requiredArchitecture arm64 -o /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Products/Debug-iphoneos/WebDriverAgentRunner-Runner.app/PlugIns/WebDriverAgentRunner.xctest/Info.plist
  27.  
  28. GenerateDSYMFile /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Products/Debug-iphoneos/WebDriverAgentRunner-Runner.app/PlugIns/WebDriverAgentRunner.xctest.dSYM /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Products/Debug-iphoneos/WebDriverAgentRunner-Runner.app/PlugIns/WebDriverAgentRunner.xctest/WebDriverAgentRunner (in target: WebDriverAgentRunner)
  29. cd /Users/zhan/Desktop/mine/Stu资料/Git/WebDriverAgent
  30. /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/dsymutil /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Products/Debug-iphoneos/WebDriverAgentRunner-Runner.app/PlugIns/WebDriverAgentRunner.xctest/WebDriverAgentRunner -o /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Products/Debug-iphoneos/WebDriverAgentRunner-Runner.app/PlugIns/WebDriverAgentRunner.xctest.dSYM
  31.  
  32. PBXCp /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Products/Debug-iphoneos/WebDriverAgentLib.framework /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Products/Debug-iphoneos/WebDriverAgentRunner-Runner.app/PlugIns/WebDriverAgentRunner.xctest/Frameworks/WebDriverAgentLib.framework (in target: WebDriverAgentRunner)
  33. cd /Users/zhan/Desktop/mine/Stu资料/Git/WebDriverAgent
  34. builtin-copy -exclude .DS_Store -exclude CVS -exclude .svn -exclude .git -exclude .hg -exclude Headers -exclude PrivateHeaders -exclude Modules -exclude *.tbd -resolve-src-symlinks /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Products/Debug-iphoneos/WebDriverAgentLib.framework /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Products/Debug-iphoneos/WebDriverAgentRunner-Runner.app/PlugIns/WebDriverAgentRunner.xctest/Frameworks
  35.  
  36. CodeSign /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Products/Debug-iphoneos/WebDriverAgentRunner-Runner.app/PlugIns/WebDriverAgentRunner.xctest/Frameworks/WebDriverAgentLib.framework (in target: WebDriverAgentRunner)
  37. cd /Users/zhan/Desktop/mine/Stu资料/Git/WebDriverAgent
  38. export CODESIGN_ALLOCATE=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate
  39.  
  40. Signing Identity: "iPhone Developer: shiqimai@yeah.net (X8469AR773)"
  41. Provisioning Profile: "iOS Team Provisioning Profile: com.facebook.WebDriverAgentRunner.zc1224"
  42. (e9ebe6ed-22af-4dea-9e74-7e8975c312cd)
  43.  
  44. /usr/bin/codesign --force --sign 5E827A54DD3782E0E5E309A2D714E459B885A8ED --preserve-metadata=identifier,entitlements,flags --timestamp=none /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Products/Debug-iphoneos/WebDriverAgentRunner-Runner.app/PlugIns/WebDriverAgentRunner.xctest/Frameworks/WebDriverAgentLib.framework
  45.  
  46. CodeSign /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Products/Debug-iphoneos/WebDriverAgentRunner-Runner.app/PlugIns/WebDriverAgentRunner.xctest (in target: WebDriverAgentRunner)
  47. cd /Users/zhan/Desktop/mine/Stu资料/Git/WebDriverAgent
  48. export CODESIGN_ALLOCATE=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate
  49.  
  50. Signing Identity: "iPhone Developer: shiqimai@yeah.net (X8469AR773)"
  51. Provisioning Profile: "iOS Team Provisioning Profile: com.facebook.WebDriverAgentRunner.zc1224"
  52. (e9ebe6ed-22af-4dea-9e74-7e8975c312cd)
  53.  
  54. /usr/bin/codesign --force --sign 5E827A54DD3782E0E5E309A2D714E459B885A8ED --entitlements /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Intermediates.noindex/WebDriverAgent.build/Debug-iphoneos/WebDriverAgentRunner.build/WebDriverAgentRunner.xctest.xcent --timestamp=none /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Products/Debug-iphoneos/WebDriverAgentRunner-Runner.app/PlugIns/WebDriverAgentRunner.xctest
  55. /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Products/Debug-iphoneos/WebDriverAgentRunner-Runner.app/PlugIns/WebDriverAgentRunner.xctest: replacing existing signature
  56.  
  57. CodeSign /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Products/Debug-iphoneos/WebDriverAgentRunner-Runner.app (in target: WebDriverAgentRunner)
  58. cd /Users/zhan/Desktop/mine/Stu资料/Git/WebDriverAgent
  59. export CODESIGN_ALLOCATE=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate
  60.  
  61. Signing Identity: "iPhone Developer: shiqimai@yeah.net (X8469AR773)"
  62. Provisioning Profile: "iOS Team Provisioning Profile: com.facebook.WebDriverAgentRunner.zc1224"
  63. (e9ebe6ed-22af-4dea-9e74-7e8975c312cd)
  64.  
  65. /usr/bin/codesign --force --sign 5E827A54DD3782E0E5E309A2D714E459B885A8ED --entitlements /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Intermediates.noindex/WebDriverAgent.build/Debug-iphoneos/WebDriverAgentRunner.build/WebDriverAgentRunner.xctest.xcent --timestamp=none /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Products/Debug-iphoneos/WebDriverAgentRunner-Runner.app
  66. /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Build/Products/Debug-iphoneos/WebDriverAgentRunner-Runner.app: replacing existing signature
  67.  
  68. Testing started on 'iPhone5s'
  69. 2018-10-18 10:30:03.605 xcodebuild[38271:11567089] IDETestOperationsObserverDebug: Writing diagnostic log for test session to:
  70. /Users/zhan/Library/Developer/Xcode/DerivedData/WebDriverAgent-gqxpqcfouthzlnexjrgulyutyzkz/Logs/Test/Test-WebDriverAgentRunner-2018.10.18_10-29-57-+0800.xcresult/1_Test/Diagnostics/WebDriverAgentRunner-FB0817B6-DB84-49E7-BF12-CF544E27BFA2/WebDriverAgentRunner-C1D7E40B-C971-46AB-B0E5-8BD193DA3092/Session-WebDriverAgentRunner-2018-10-18_103003-Jywmso.log
  71. 2018-10-18 10:30:03.605 xcodebuild[38271:11566499] [MT] IDETestOperationsObserverDebug: (A2DAA1DE-CD7B-40B0-A273-CA3C7F8A9294) Beginning test session WebDriverAgentRunner-A2DAA1DE-CD7B-40B0-A273-CA3C7F8A9294 at 2018-10-18 10:30:03.605 with Xcode 10A255 on target
  72. Mac + Python3.6 + ATX基于facebook-wda】之IOS自动化(一):WebDriverAgent安装的更多相关文章

      1. Mac + Python3.6 + ATX基于facebook-wda】之IOS自动化(三):facebook-wda库--API学习以及附录:Github上对WDA的问题解答
      1. 下面简单介绍facebook-wda库--API的学习 import wda # debug模式,会在run运行时控制台生成消息 wda.DEBUG = False # False 关闭,True开启 ...

      1. Mac + Python3.6 + ATX基于facebook-wda】之IOS自动化(二):安装facebook-wda库并编写简易自动化测试脚本
      1. 上一篇介绍完如何安装WDA,接下来开始正式安装开发库并编写自动化脚本. 目录: 一.安装facebook-wda 二.通过WEditor定位元素 三.附录:学习资料 一.安装facebook-wda ...

      1. ATX学习大纲】【ATX基于uiautomator2+Python学习】之Android自动化
      1. github学习地址:https://github.com/openatx/uiautomator2 <_io.TextIOWrapper name='<stderr>' mode= ...

      1. Mac + ATX基于uiautomator2】使用weditor时,报错:requests.exceptions.ConnectionError: ('Connection aborted.', ConnectionResetError(54, 'Connection reset by peer'))
      1. 产生以下原因找到了:是因为启动了appium,两者冲突,不能同时使用. 之前讲过怎么安装u2([Mac安装,ATX基于uiautomator2]之安装步骤)以及使用weditor, 但是经过一段时间, ...

      1. Mac python3连接mysql
      1. Mac python3连接mysql 安装方法1: 1.pip3 install --upgrade pip //升级pip版本 2.sudo python3 /Library/Frameworks/ ...

      1. Python3操作MySQL基于PyMySQL封装的类
      1. Python3操作MySQL基于PyMySQL封装的类   在未使用操作数据库的框架开发项目的时候,我们需要自己处理数据库连接问题,今天在做一个Python的演示项目,写一个操作MySQL数据库的类, ...

      1. 基于facebook-wdaiOS自动化操作实践记录
      1. [本文出自天外归云的博客园] 原理 对于iOS自动化操作,主要靠WebDriverAgent来完成.在Mac电脑上连接真机iPhone,运行WebDriverAgentRunner会在Mac端启动WD ...

      1. RobotFrameWork环境搭建(基于HTTP协议的接口自动化)
      1. 1. 前言 接着上一篇<RobotFramework框架系统课程介绍>,本篇主要介绍一下在基于RobotFramework框架开展接口自动化前,前期的环境如何搭建,正所谓”工欲善其事,必先 ...

      1. Python + ATX】之uiautomator2 PageObject模式自动化框架学习
      1. 参考文章: 感谢:cynic (linpengcheng) <ATX 基于 ATX-Server UI 自动化测试框架> <ATX-uiautomator2 实现 webview ...

    1.  
    2. 随机推荐

        1. java-继承-类变量与实例变量
        1. 父类中的类的变量(静态属性)与其子类共享一份. 父类中的实例变量与其子类各自维护各自的.

        1. UITextFieldreturnkey点击事件
        1. 关于隐藏软键盘,网上的办法良莠不齐,大多是通过实现UITextFieldDelegate来隐藏软键盘,该方法代码较多,且在文本框很多的时不好处理.我经过搜索与摸索,找到了最佳的处理办法.(引用的)一. ...

        1. Hadoop基础教程》之初识Hadoop 【转】
        1. Hadoop一直是我想学习的技术,正巧最近项目组要做电子商城,我就开始研究Hadoop,虽然最后鉴定Hadoop不适用我们的项目,但是我会继续研究下去,技多不压身. <Hadoop基础教程> ...

        1. Ubuntu16.04安装Pytorch
        1. 一.安装 1. 官方github:https://github.com/pytorch/pytorch Install optional dependencies //安装依赖项 On Linux e ...

        1. makefile opencv的案例
        1. CXX = g++ LIBS +=`pkg-config --libs opencv` INC +=`pkg-config --cflags opencv` CPPFLAGS += -g -std=c ...

        1. 一种让UITableView的数据从下往上增长的方式
        1. 遇到问题 一般来说tableview的数据都是从上往下增长,如下图所示(先是aaa出现在表格列表的最顶部,然后bbb出现在aaa的下面,以此类推) 但是如果我们想反向这个过程该怎么做呢?如下图所示(先 ...

        1. yoman搭建你的react-webpack应用
        1. 还没有npmnode的要提前做好准备工作 做好这一切之后 我们安装yo,记住安装在全局变量中,我们需要用他的命令工具 npm install -g yo 接下来安装yo提供的react-webpac ...

        1. MPJoystick
        1. using UnityEngine; /** * File: MPJoystick.cs * Author: Chris Danielson of (monkeyprism.com) * // USE ...

        1. jQuery 创建html
        1. jQuery 创建html

        1. 判断一个字符串是否为合法IP
        1. 输入任意一个字符串,判断是否为合法IP bool IsIPAddress(const char * str){ //先判断形式是否合法, //检查是否只包含点和数字 ; str[i] != '\0'; ...