UI自动化测试问题总结

1.implicitly_wait()与time.sleep()之间的区别

implicitly_wait()表示隐式等待,如果找不到元素会一直循环访问直到时间用尽

time.sleep()表示显式等待,固定等待时间

建议使用implicitly_wait(),如果程序执行失败,再用time.sleep(),这样会大大提高程序运行速度。但是,有一个问题是,遇到过下列情况:

(1)点击IT->网络运营中心

(2)implicitly_wait()

(3)点击导入排名按钮。

(4)上传文件

上传正确文件时会报错,上传其他文件均不会报错,显示找不到导入按钮元素或该元素不能被点击,原因暂不清楚。

2.执行JavaScript时报错找不到元素

先等待网页加载完成

windows.onload() {]

//javascript

}

3.firefox浏览器下载文件中文乱码问题

在http报文的header中可以看到文件下载时,会先把文件名进行编码再转码得到,如果该网站用java开发,字符用的不是utf-8就会出现这样的问题。chrome和ie不会对下载文件进行处理,就不会乱码。

参考资料:https://www.cnblogs.com/godtrue/p/4333262.html

4.excel文件的基本操作,包括读写,比较两个文件是否相同

import xlwt,xlrd模块,将读出来的文件存储为list,python2.X通过cmp(list1,list2)进行比较,python3.X通过import operator模块的operator.eq(list1,list2)。

list操作参考资料:http://www.runoob.com/python/att-list-cmp.html

4.firefox浏览器下载文件自动化

self.fp=webdriver.FirefoxProfile()

#设置文件保存路径

self.fp.set_preference("browser.download.dir","E:\\eclipse-workspace\\RankSystem\\TestData\\")

# 2表示自定义文件夹 0表示保存到桌面

self.fp.set_preference("browser.download.folderList", 2)

#在开始下载时是否显示下载管理器

self.fp.set_preference("browser.download.manager.showWhenStarting",False)

#设置自动保存的文件类型,如果firefox不能自动保存,一定是文件类型不对

self.fp.set_preference("browser.helperApps.neverAsk.saveToDisk", "application/vnd.ms-excel")

driver=webdriver.Firefox(firefox_profile=fp)

文件类型参考资料:http://www.w3school.com.cn/media/media_mimeref.asp

5.Python webdriver 定位frameset中的frame

参考资料:http://www.jianshu.com/writer#/notebooks/18047706/notes/20274252

6.display=none的问题

参考资料:http://www.jianshu.com/writer#/notebooks/18047706/notes/19838912

7.测试数据的读入

参考资料:http://www.jianshu.com/writer#/notebooks/18047706/notes/20467916

8.弹出窗口的处理

如果是浏览器自带的弹出窗口,即元素定位不到的,用switch_to_alert()处理就可以。如果是开发人员自写的窗口,用元素定位直接操作即可。

9.同一页面进行多个测试用例

@classmethod

def setUpClass(cls):

pass

@classmethod

def tearDownClass(cls):

pass

你可能感兴趣的:(UI自动化测试问题总结)