#14 楼 @kaige201314 可以用 python 执行 adb 命令 如 adb shell ime enable io.appium.android.ime/.UnicodeIME
这个和语言无关
/**
* 禁用appium输入法
*/
public void disableUnicodeIME() {
//
log.info("disable io.appium.android.ime/.UnicodeIME");
ExecuteAdbCmd("shell", "ime", "disable",
"io.appium.android.ime/.UnicodeIME");
// ExecuteAdbCmd("shell","ime","set","com.android.inputmethod.latin/.LatinIME");
}
/**
* 启用appium输入法,并设置为当前输入法
*/
public void enableUnicodeIME() {
log.info("enable io.appium.android.ime/.UnicodeIME");
ExecuteAdbCmd("shell", "ime", "enable",
"io.appium.android.ime/.UnicodeIME");
log.info("set io.appium.android.ime/.UnicodeIME");
ExecuteAdbCmd("shell", "ime", "set",
"io.appium.android.ime/.UnicodeIME");
}
在输入前把 appium 提供的输入法禁掉,然后再输入就可以了,这个估计是 appium 输入法的 bug
#85 楼 @lihuazhang idevice_id 是不是不支持 ios9.3?
#81 楼 @stone4302 我和你一样的问题 我把这条命令拿出来直接执行,报的错误信息是 Invalid UDID specified
但是我的 udid 应该是没有问题的。你这个问题解决了吗
可插拔式设计 赞
那就又回到我以前的问题了,你这个 2 维的表格,如果解决有些元素我需要获得 content-desc,有些需要获得 text,断言的时候有些事 contaions,有些是 equals,或者是其他的,还有就是有些时候断言可能是一个 for 循环,在循环里面加各种断言。
我以前也考虑过这种方式,试图使测试人员不用写代码,直接配置 excel,但是后来发现有很多问题一个 2 维表格解决不了就放弃了,改为封装平台差异,减少代码量
@xiaoli 明白了,你这个关键字驱动还是需要编写用例代码的,是吗?
我以为你这个不需要编码,直接写在文件里的,然后代码读取文件执行,比如一个 tab 页就是一个用例,所以我问你 excel 怎么配置。
@xiaoli 我的意思 比如我要校验一个元素的 content-desc 的值是否包含 XXXXX 怎么在 excel 中配置
比如 我要判断一个元素 是否在界面显示,且可操作 怎么配置
新版本的 appium-doctor 怎么没了
这种账号自动分割的情况,在输入前把 appium 的那个输入法禁用就可以了。
@xiaoli 问一下 ,各种断言要如何体现在这个 excel 上呢
恭喜,希望以后多分享些百度的经验
#16 楼 @hudiefeifei 这个问题你是怎么解决的呀
就算没装 app 也需要 bundleid 的吧,appium 在执行前需要根据 bundleid 校验 app 是否已经安装。
这种还是建议放在 beforesuite 或者 beforemethod 里面处理,便于控制,不要依赖于 jenkins,这样更有通用性
#9 楼 @chenhengjie123 有些地方在模拟上有 text 值,但是真机上没有,有些地方 app 文件通过 inspector 抓出来的 xpath 比 ipa 文件会多一层
#7 楼 @chenhengjie123 解决了 thx,但是还有个小问题,以前我在模拟器上写出来的用例在真机上貌似有问题,真迹取出来的 xpath,貌似和模拟器的不一样
#5 楼 @chenhengjie123
全部卸载,然后
brew install --HEAD libimobiledevice
brew install --HEAD ideviceinstaller
#3 楼 @lihuazhang
还是不行
brew uninstall libimobiledevice
Uninstalling /usr/local/Cellar/libimobiledevice/1.1.6_1...
$ brew install -HEAD libimobiledevice
==> Downloading http://www.libimobiledevice.org/downloads/libimobiledevice-1.1.6
Already downloaded: /Library/Caches/Homebrew/libimobiledevice-1.1.6.tar.bz2
==> ./configure --disable-silent-rules --prefix=/usr/local/Cellar/libimobiledevi
==> make install
🍺 /usr/local/Cellar/libimobiledevice/1.1.6_1: 58 files, 892K, built in 21 seconds
$ ideviceinstaller -l
No iPhone found, is it plugged in?
//接了真机以后
$ ideviceinstaller -l
Segmentation fault: 11
#1 楼 @lihuazhang
重新装了,命令如下,还是会出 Segmentation fault: 11
$ brew uninstall libimobiledevice
Uninstalling /usr/local/Cellar/libimobiledevice/1.1.6_1...
$ brew uninstall ideviceinstaller
Uninstalling /usr/local/Cellar/ideviceinstaller/1.0.1...
$ brew install ideviceinstaller
==> Installing ideviceinstaller dependency: libimobiledevice
==> Downloading http://www.libimobiledevice.org/downloads/libimobiledevice-1.1.6
Already downloaded: /Library/Caches/Homebrew/libimobiledevice-1.1.6.tar.bz2
==> ./configure --disable-silent-rules --prefix=/usr/local/Cellar/libimobiledevi
==> make install
🍺 /usr/local/Cellar/libimobiledevice/1.1.6_1: 58 files, 892K, built in 18 seconds
==> Installing ideviceinstaller
==> Downloading http://www.libimobiledevice.org/downloads/ideviceinstaller-1.0.1
Already downloaded: /Library/Caches/Homebrew/ideviceinstaller-1.0.1.tar.bz2
==> ./configure --prefix=/usr/local/Cellar/ideviceinstaller/1.0.1
==> make install
🍺 /usr/local/Cellar/ideviceinstaller/1.0.1: 7 files, 80K, built in 9 seconds
$ ideviceinstaller -l
Segmentation fault: 11
lz 的想法挺不错的,但是如果遇到一些 appium 目前无法解决,只能用 adb 的时候,你这个如何处理