有了selenium为什么配置还有appium

漫长Appium之路(二)――Appium安装与使用总结_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
漫长Appium之路(二)――Appium安装与使用总结
阅读已结束,下载文档到电脑
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,方便使用
还剩2页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢使用appium遇到的问题(持续更新...) - dengke的个人空间 - 51Testing软件测试网 51Testing软件测试网-中国软件测试人的精神家园
做一个被尊重的测试工程师
使用appium遇到的问题(持续更新...)
& 18:37:45
/ 个人分类:
appium所需要的环境一切搭建完毕。在运行appium脚本时有可能遇到的问题:1.问题一:运行用例报错org.openqa.selenium.SessionNotCreatedException: A new session could not be created. (Original error: Command failed: .util.zip.ZipException: error in opening zip file&&& at java.util.zip.ZipFile.open(Native Method)&&& at java.util.zip.ZipFile.&init&(Unknown Source)&&& at java.util.zip.ZipFile.&init&(Unknown Source)&&& at java.util.jar.JarFile.&init&(Unknown Source)&&& at java.util.jar.JarFile.&init&(Unknown Source)&&& at s.Sign.sign(Sign.java:441)&&& at s.Sign.main(Sign.java:532))解决办法:将JDK改为1.72.问题二:运行Android用例报错java.lang.NoSuchMethodError: org.openqa.selenium.remote.ErrorHandler.&init&(Lorg/openqa/selenium/remote/ErrorCZ)V&&& at io.appium.java_client.AppiumDriver.&clinit&(AppiumDriver.java:41)&&& at com.MFExchange.appium.MFExchangeTest.setUp(MFExchangeTest.java:40)&&& at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)&&& at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)&&& at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)&&& at java.lang.reflect.Method.invoke(Unknown Source)&&& at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45)&&& at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)&&& at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42)&&& at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:27)&&& at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:30)&&& at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263)&&& at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68)&&& at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47)&&& at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)&&& at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)&&& at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)&&& at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)&&& at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)&&& at org.junit.runners.ParentRunner.run(ParentRunner.java:300)&&& at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)&&& at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)&&& at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)&&& at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)&&& at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)&&& at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)解决办法:把selenium-java-2.41.0.jar换成2.42版本的<font color="#.问题三:如何查看app的包名和Activity解决办法:a.有源码的情况,找到AndroidManifest.xml,找到android.intent.category.LAUNCHER关键字,就能找到需要的Activity包名在这里看;&manifest xmlns:android="/apk/res/android"&&& package="com.chnMicro.MFExchange"一般位于XML定义的下一行,搜索“package”就能找到b.没有源码的情况,链接好——cmd下输入adb logcat&D:log.txt——运行被测app——Ctrl+c停止,去D盘打开log文件搜索“LauncherAppInfo”就能在其后找到Activity查看包名的方法:1、adb
用ls进入data/data目录2、拿到apk解压缩看manifest文件查看3.问题四:运行时Appium中报错&error: Unhandled error: Error: connect ECONNREFUSED解决办法:mysql和node.js使用的同一个端口,换一个端口号就行用到tesseract-ocr和PIL两个工具。
系统为Windows 64位,因此再安装PIL的时候有点小问题,步骤如下:
1、下载&的的安装目录添加到系统环境变量中
下载:http://download.csdn.net/detail/chenlei_525/9377602
然后运行一下就可以了(是Python)源代码
python Xxxx.py
3、下载Pillow
http://download.csdn.net/detail/chenlei_525/9377606
通过pip安装 pip install XXX.whl
4、一切准备就绪后在文件中通过
from PIL import Image引入PIL
def identifyingCode(self,driver,startx,starty,endx,endy):
u&#39;&#39;&#39;获取验证码
(startx,xstarty)---------------------------------
要截取的图片范围
---------------------------------- (endx,endy)
&#39;&#39;&#39;
driver.get_screenshot_as_file(os.getcwd()+&#39;\\cirsschan.jpg&#39;)
imGetScreen = Image.open(os.getcwd()+&#39;\\cirsschan.jpg&#39;)
box=(startx,starty,endx,endy)
imIndentigy = imGetScreen.crop(box)
imIndentigy.save(os.getcwd()+&#39;\\indent.jpg&#39;)
strCommand = &#39;tesseract.exe &#39;+os.getcwd()+&#39;\\indent.jpg &#39; +os.getcwd()+&#39;\\indet.txt&#39;
print strCommand
os.system(strCommand)
rfindet = open(os.getcwd()+&#39;\\indet.txt.txt&#39;,&#39;r&#39;)
strIndet= rfindet.readline()
return strIndet
上述过程自己验证可以使用,driver既可以appium也可以selenium,都可以
本文已收录于以下专栏:
相关文章推荐
Python 2.7
IDE Pycharm 5.0.3Selenium:Selenium的介绍及使用,强烈推荐@ Eastmount的博客PIL : Pillow-3.3.0-cp27-cp27m...
现在大多数网站都采用了验证码来防止暴力破解或恶意提交。但验证码真的就很安全吗?真的就不能被机器识别??我先讲讲我是怎么实现站外提交留言到一个网站的程序。这个网站的留言版大致如下:我一看这种简单的4位数...
操作系统环境 win7
tess4j版本3.1.0
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; File file = new File(&c:/test.jpg&)
&#160;&#...
原文地址:/p/4a7bba756192
最近在搞一个无人值守系统时,需要能自动登录,在登录时需要输入验证码,所以研究了验证码识别技术,否则我这个无人值守系统的作用就没有了。目前只测试了字母和数字的识别,准确率还是可以的,呵呵,已经够我自已用...
在官网上下载下来的 tess4j 的zip,初见时看的云里雾里的,原以为是个jar,直接引用就好了,结果竟是个zip。网上查一下用法,各种说法,各种菜,全是误导,自己不懂就敢瞎说...
实际上使用时需...
对于爬虫来说,验证码通常是实现过程中的一个巨大的障碍,因为验证码的多样性,有的甚至变态至极,所有一般来说使用代码自动识别验证码是非常困难的,本问的内容就是讲如何将验证码保存到本地,然后通过人工输入验证...
他的最新文章
讲师:刘文志
讲师:陈伟
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)

我要回帖

更多关于 selenium appium 的文章

 

随机推荐