[BUG]Appium1.9.1 这个问题竟然花了我5分钟进行定位
1、先上问题,知道是什么问题先
EE
======================================================================
ERROR: testCalcu (__main__.MyTest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "D:\WorkSpace3\EXAMPLE\Appiu_ex\test.py", line 28, in testCalcu
self.driver.find_element_by_id("com.txt.calculator:id/tv_skip").click()
AttributeError: 'MyTest' object has no attribute 'driver' ======================================================================
ERROR: testCalcu (__main__.MyTest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "D:\WorkSpace3\EXAMPLE\Appiu_ex\test.py", line 25, in tearDown
self.driver.quit()
AttributeError: 'MyTest' object has no attribute 'driver' ----------------------------------------------------------------------
Ran 1 test in 0.001s FAILED (errors=2)
2、再上源码,如果你也在5分钟内未找到该问题原因,呵呵,那就在后续写代码中一定要仔细再仔细
# -*- coding:utf-8 -*-
from appium import webdriver
import unittest class MyTest(unittest.TestCase):
def setup(self):
desired_caps = {}
desired_caps['platformName'] ='Android'
desired_caps['platformVersion'] ='6.0'
desired_caps['deviceName'] ='DIYTHYTCCQBIV47D'
desired_caps['appPackage'] ='com.txt.calculator'
desired_caps['appActivity'] ='.Calculator'
desired_caps["unicodeKeyboard"] ="True"
desired_caps["resetKeyboard"] ="True"
self.driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) def tearDown(self):
self.driver.quit() def testCalcu(self):
self.driver.find_element_by_id("com.txt.calculator:id/tv_skip").click()
self.driver.find_element_by_id("com.txt.calculator:id/digit_8").click()
self.driver.find_element_by_id("com.txt.calculator:id/op_add").click()
self.driver.find_element_by_id("com.txt.calculator:id/digit_5").click()
self.driver.find_element_by_id("com.txt.calculator:id/eq").click()
try:
result = self.driver.find_element_by_class_name("android.widget.EditText").text
self.assertEqual('', result, "The result isn't right")
except Exception as e:
print (e)
self.fail("The element is wrong or non-exists") if __name__ == '__main__':
unittest.main()
3、duang duang duang duang开始计时
~~~~~5分钟之后,给出出问题的源码
class MyTest(unittest.TestCase):
def setup(self):
注意setup 此处 up首字要大写,如未按照unittest框架的要求进行编写,它自然就不会先进行初使化了,自然也就出现后面的报错 MyTest实例中没有driver的属性
修改正确如下:
class MyTest(unittest.TestCase):
def setUp(self):
[BUG]Appium1.9.1 这个问题竟然花了我5分钟进行定位的更多相关文章
- zookeeper频繁异常问题分析
Reference: https://blog.csdn.net/xjping0794/article/details/77784171 1.1 操作系统信息1.1.1 ...
- [ZZ]最小化不可重现的bug
http://testerhome.com/topics/577 原文请见 Minimizing Unreproducible Bugs 不能重现的 bug 是我的灾难.我常常找到一个bug 后来又听 ...
- BUG,带给我的思考
今天打开EverNote时,翻到了四年前在anjuke时做的一些bug分析总结.现在回过头看看也是有些价值所在,挑选出部分bug分享,希望能有所启发. 一. iOS新房APP4.4由于在91市场进行试 ...
- 一个诡异的MySQL查询超时问题,居然隐藏着存在了两年的BUG
这一周线上碰到一个诡异的BUG. 线上有个定时任务,这个任务需要查询一个表几天范围内的一些数据做一些处理,每隔十分钟执行一次,直至成功. 通过日志发现,从凌晨5:26分开始到5:56任务执行了三次,三 ...
- 各种主流浏览器CSS、BUG兼容
1.div的垂直居中问题 vertical-align:middle;将行距增加到和整个DIV一样高 line-height:200px;然后插入文字,就垂直居中了.缺点是要控制内容不要换行.---- ...
- 浏览器中CSS的BUG
对于web2.0的过度,请尽量用xhtml格式写代码,而且DOCTYPE 影响 CSS 处理,作为W3C的标准,一定要加 DOCTYPE声明. 其它请参考:CSS hack 针对IE6,IE7,fir ...
- (视频)《快速创建网站》 4.1 为啥造软件不同于造汽车,为啥是软件就一定会有Bug - 构建开发运维一体化(DevOps)
本文是<快速创建网站>系列的第9篇,如果你还没有看过之前的内容,建议你点击以下目录中的章节先阅读其他内容再回到本文. 访问本系列目录,请点击:http://devopshub.cn/tag ...
- IE6的bug
借鉴http://css.doyoe.com/ 问题和经验列表,里面应有尽有.写几个常见的: 1.解决IE6及更早浏览器浮动时产生双倍边距的BUG display:inline 2.如何解决IE6下的 ...
- ie6下常见的bug 调整页面兼容性
ie6下常见的bug 我们布局页面,首先符合标准,如何写一个页面的标准性? 但是ie6等浏览器本身就比较特殊,bug比较多,兵法云,知己知彼百战百胜.我们需要了解ie6的一些常见bug,这样,更好的调 ...
随机推荐
- 【Shell实战】批量在多台服务器上执行命令
功能说明:批量在多台服务器上执行命令 #!/bin/bash # ========================================== # 功能:批量在多台服务器上执行命令 # 方法: ...
- mybatis教程4(动态SQL)
动态SQL语句 MyBatis 的强大特性之一便是它的动态 SQL.如果你有使用 JDBC 或其它类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句的痛苦.例如拼接时要确保不能忘记添加必要的空 ...
- [转]JS组件系列——Bootstrap组件福利篇:几款好用的组件推荐
本文转自:https://www.cnblogs.com/landeanfen/p/5461849.html#_label3 阅读目录 一.时间组件 1.效果展示 2.源码说明 3.代码示例 二.自增 ...
- 解决SharePoint 2010拒绝访问爬网内容源错误
今天发现SP爬网出现了问题,持续时间蛮长的,一直爬不到内容. 解决方案: 这里有一条解决在SharePoint 2010搜索爬网时遇到的"拒绝访问错误"的小技巧. 首先要检查默认内 ...
- authentication plugin caching_sha2_password cannot be loaded
最近下载新的MySQL8.0 来使用的时候, 通过sqlyog.或者程序中连接数据库时,提示:Authentication plugin 'caching_sha2_password' cannot ...
- What is The Rule of Three?
Question: What does copying an object mean? What are the copy constructor and the copy assignment op ...
- Java - 线程池设计与选择
http://ifeve.com/how-to-calculate-threadpool-size/ 任务一般可分为:CPU密集型.IO密集型.混合型,对于不同类型的任务需要分配不同大小的线程池. C ...
- Linux常用基本命令:三剑客命令之-awk输入输出分隔符
输入分隔符,英文原文为field separator,此处简称为FS,默认是空白字符(即空格),awk默认以空白字符为分隔符对每一行进行分割. 输出分割符,英文原文为output field sepa ...
- 2017-12-21 FriceEngine试用与API中文化
早先就听闻FriceEngine已有中文接口版本, 可惜没有机会尝试. 经原作者 @大笨蛋千里冰封 (Github账号 @ice1000 )建议, 在FriceEngine的DSL封装的接口基础上, ...
- 【读书笔记】iOS-设计简单的Frenzic式益智游戏
如果你决定用UIView动画或Core Animation,一定要编写一些测试用例,模拟游戏可能遇到的要求最高的动画,另外不要忘记播放声音.不要等到最后才增加声音,因为在iPhone上播放音乐和音效确 ...