先交代一下场景,页面上会有一个列表,然后下面有两个元素,一个是全选的check,一个是接收的div,正常的人工操作是点击全选,然后点击接收,然后弹出alert(),点击确定接收完,后自动关闭窗口。
现用selenium自动化这个操作,这两个元素onclick都可运行js脚本
οnclick=checkedalldoc();#check
οnclick=responseclick();#div
利用basepage分别封装了几个相关的方法:
# 点击元素
def click(self, *selector):
el = self.find_element(*selector)
try:
el.click()
logger.info('元素'%s' 已被点击.' % el.text)
except NameError as e:
logger.error('Failed to click the element with %s' % e)
#运行js脚本
def run_script(self, js):
try:
self.driver.execute_script(js)
logger.info('成功运行脚本,脚本内容为:%s.' % js)
except BaseException:
logger.error('js脚本运行错误.')
#切换至弹窗并点击确定
def accept_alert(self):
try:
WebDriverWait(se