2015년 1월 8일 목요일

install appium for MAC


  1. Mac OS 패키지 관리자 brew 설치:
    터미널에서 아래 주소 입력
    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"


  2. ruturn키 클릭


  3. 컴퓨터 비밀번호 입력
  4. xcode-select 설치 얼럿 창이 떠서 설치
  5. 자동으로 brew가 설치된다.
  6. node 설치 (npm으로 appium을 설치하려면 node 설치 필요)
    테미널에서 brew install node 입력

  7. appium 설치: npm install -g appium
  8. wd 설치(webdriver 뭐라고 하는데 뭔지 모르겠다.): npm install wd
  9. appium-doctor로 확인하니 필요한 환경이 모두 설치됐다. (애피움 1.5.0부터는 appium-doctor를 별도로 설치해야 한다. npm install -g appium-doctor)
  10. 마지막으로 appium 실행해보니 잘 돌아간다.

2015년 1월 7일 수요일

【已解决】Remote Debugging on Android with Chrome,在chrome调试android浏览器以及inapp。

前段时间发现了很有趣的chrome功能,Remote Debugging on Android with Chrome

在app自动化测试的时候,调试Android web browser和inapp(webview)是很重要的。特别是webview。Android web browser可以用PC browser + user agent轻易调试。但是webview就很麻烦了。
现在好了,有了Remote Debugging on Android with Chrome这个PC版chrome功能就很容易调试webview了。


  1. USB连接真机或启动emulator。
  2. 在PC版chrome,点汉堡按钮 》更多工具 》检查设备可以打开DevTools页面。也可以如下方法打开。
    * 在chrome one box里输入chrome://inspect
    * 下载chrome 扩展程序ADB plugin。 
  3. 在页面点击Discover USB devices的check box即可连接设备。
  4. 在设备打开chrome或者hybrid应用会在此页面显示。(但是有很多hybrid应用在真机上运行的时候无法显示webview。模拟器上启动就可正常。不知道为什么。)
  5. list显示出来后可以点inspect来打开调试窗口。可以点击窗口右侧的手机图标来显示设备的模拟画面。酷~~!
至于为什么在真机上无法显示webview问题,以后慢慢再研究。
(已解决,我笨到家了,用play store上的app来测试,当然不行了。
用开发人员build的app来测试就没问题。)




2015년 1월 6일 화요일

[已解决]context到webview的时候报错。 Chromedriver create session did not work.

在模拟器使用#appium时, 用context()切换webview时会报chromedriver的问题。 折磨我好久。log如下。

error: Chromedriver create session did not work. Status was 200 and body was{"sessionId":"276ad6edf24e1798bd79b4e5aabfc1bc","status":13,"value":{"message":"unknown error: Chrome version must be >= 33.0.1750.0\n  (Driver info: chromedriver=2.10.267521,platform=Windows NT 6.1 SP1 x86_64)"}}
info: [debug] Responding to client with error: {"status":13,"value":{"message":"An unknown server-side error occurred while processing the command. (Original error: Did not get session redirect from Chromedriver)","origValue":"Did not get session redirect from Chromedriver"},"sessionId":"f8d68152-f368-47a4-9a3d-8c66af8b84e4"}
这是chromedriver版本问题。最新的chromedriver2.13可以解决。
下载2.13版本替换掉原来的就ok。在模拟器正常切换webview并正常运行webview里的各种操作。

chromedriver路径:

Windows:C:\Users\***\AppData\Roaming\npm\node_modules\appium\build\chromedriver\windows

MAC:
/usr/local/lib/node_modules/appium/build/chromedriver/mac/chromedriver

/usr/local/lib/node_modules/appium/node_modules/appium-chromedriver/chromedriver/mac

这个问题解决了,但是切换webview还有个问题,就是在真机上无法识别webview。郁闷。这个慢慢研究吧。(这个问题已经解决,play store上的app无法识别webview。必须得是开发人员build的app。)