我正在使用Python / Selenium和JS / jQuery为Web应用程序编写单元测试。该测试涉及确保在确认屏幕加载之前,用户提交付款后显示带有动画图标的消息。
付款是通过第三方iframe处理的。加载消息和图像不会显示在不同的URL上,它与iframe本身的URL相同。
我尝试使用JavaScript来停止self.driver.execute_script("return window.stop;")
的页面加载,但这不起作用。
我也尝试过使用Selenium通过self.driver.find_element_by_tag("body").send_keys(Keys.ESCAPE)
发送转义键,但这也未能在确认页面加载之前停止页面加载。
我还尝试了assert "Loading Text" in self.driver.page_source
而不停止加载确认屏幕,但这也没有用。
如果我手动单击停止按钮,它将停止页面加载。我尝试使用此功能来模拟单击停止按钮,但无济于事。在自动测试过程中,永远不会出现停止按钮-即使页面正在处理请求,它也仍然是重新加载按钮。
def stop_page_load():
def click_based_on_coordinates(x,y):
win32api.SetCursorPos((x,y))
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN,x,y,0,0)
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP,x,y,0,0)
click_based_on_coordinates(78, 50)
完全不确定如何测试此项目。有想法吗?