多测师是一家拥有先进的教学理念,强大的师资团队,业内好评甚多的接口自动化测试培训机构!

17727591462

联系电话

您现在所在位置:接口自动化测试培训 > 新闻资讯

自动化测试常见问题怎么解决?

更新时间:2022-07-26 09:33:59 作者:多测师 浏览:38

  1、找不到元素,脚本报"NoSuchElementException:Unable to find element",或者"定位到了,不能操作,点击无效"

  首先查看自己的"属性值"是否写正确

  元素的标签不唯一,默认找到第一个

  向上查看,元素是否在frame或iframe框架中

  查看元素是否在新打开的页面中,需要切换到新窗口

  换其它的定位方式

  id/name/class name/tag name/link text/xpath/css selector

  检查元素属性是否是会变动的、是否是隐藏的

  添加等待时间sleep(),implicitly_wait(),WebDriverWait(driver, 10, 1).until(定位的元素, messages)

  查看标签的属性是否有"style=‘display:none’->。元素不显示。属性改为block

  查看标签的属性是否有’οnclick=return false’->。取消点击。属性改为false(在百度首页,登陆的属性就是这个)

  针对于9和8这两种情况,我在网上搜到的结果是:执行js修改属性(这种方法我没有试过,不知道有没有效果)

  js=“document.getElementById(‘title’).style.display=‘block’”

  driver.execute_script(js)

自动化测试常见问题怎么解决?

  2、出现"object is not iterable":

  首先查看脚本,测试用例出现问题

  组织用例时出现错误(我开始是用for循环遍历y,加入测试集合中,返回集合,老是会出现错误,最后改成下方代码,直接返回y,解决问题)

  3、出现"Indentation Error": 是语法问题,脚本代码没有正确对齐

  4、使用PO设计模式封装的页面元素类,都有初始化函数"init"

  5、页面元素调用Page类时候,Page函数,后面括号的"self"不用写

  6、Page的初始化包含(self,driver)两个元素,在页面封装类中,初始化中调用方式为Page.init(self,driver)

  7、类中定义变量,比如x=“hello”,调用使用:self.x

  8、在测试用例调用自己页面封装的类时,经过实例化后po=Lzsp(driver),定义函数时候, 不需要再括号中写self

  9、提示在页面封装类中没有basePage.py文件中定义好的函数问题:

  新建名字为module_basePage.pth文件,内容为"basePage.py文件"存放路径

  进入python的安装目录,将文件放到python3libsit-packages文件夹下

  在测试用例中导入其他文件夹模块引入:import sys

  sys.path.append("…")

  from … import …

  10、页面元素封装时候,定位方式一定要写正确,否则会出错

  11、进行参数化的时候,读取数据的文件里面代码:“使用绝对地址,加双斜线”

  12、运行自动化脚本时候将鼠标放到屏幕中间或者下方,(有可能切换窗口时定位不到)

  13、出现"parater must be str":使用参数有问题,(我的是因为二次定位写的方式有问题)

  14、在window命令界面下使用:"python 文件名.py >>report/log.txt 2>&1"命令把结果写入文本中

  15、在页面封装中,类的初始化使用如下样式:

  def init(self,driver):

  Page.init(self,driver)

  16、打印输出时显示"not all arguments curerted during string format"是说明前后参数不对应:%前面是一个"%s",而后面的参数是(“xy”,“xy”)两个

  以上内容为大家介绍了自动化测试常见问题怎么解决,本文由多测师亲自撰写,希望对大家有所帮助。了解更多自动化测试相关知识:https://www.aichudan.com/xwzx/

联系电话

17727591462

返回顶部