问题一:
switch_to_window() 在使用时出现删除线
解决方法:
这是因为这个方法太老了哦,只需要换成以下方法就好:
switch_to.window()
问题二:
运行时,方法def不是按照顺序执行的
解决方法:
unittest 框架默认根据ASCII码的顺序加载测试用例,数字与字母的顺序为:09,AZ,a~z
如果要让某个测试用例先执行,不能使用默认的main()方法,需要通过TestSuite类的addTest()方法按照一定的顺序来加载
参考文章:https://www.cnblogs.com/klb561/p/9315127.html
问题三:
每个def执行以后都得关闭浏览器,然后下一个用例再次重启浏览器
解决方法:
https://www.cnblogs.com/bainianfengri/p/7273501.html
https://www.cnblogs.com/bainianfengri/p/7251164.html
问题四
切换iframe
https://www.cnblogs.com/zhengmengfei/p/8656677.html
两个iframe相互切换:
https://blog.csdn.net/huilan_same/article/details/52200586
问题五
操作弹框alert:
https://www.cnblogs.com/fengyiru6369/p/7229883.html
问题六
警告弹框处理以后无法继续定位页面某些元素/跳出iframe
我代码例子里面是因为弹框处理以后在iframe里,需要进行外部操作的话要跳出iframe
https://blog.csdn.net/u010141562/article/details/60142051
问题七
selenium判断页面是否存在某元素:
try:
browser.find_element_by_xpath('/html/body/div/div/form/div[6]/div/button[2]')
a = True
except:
a = False
if a == True:
print("存在该元素")
else:
print("没有找到该元素")