【问题标题】:How do click OK button in pop window using selenium python webdriver如何使用 selenium python webdriver 在弹出窗口中单击确定按钮
【发布时间】:2013-02-25 15:49:36
【问题描述】:

这里我需要删除一些记录。当我选择所有项目并单击删除按钮时。它显示了类似“你确定要删除这个”的弹出窗口,但没有确定按钮。然后我需要单击确定按钮并删除所选项目。但我使用了下面的代码,它没有点击确定按钮。如果有人知道这个答案,请告诉我..

class login(unittest.TestCase):
def setUp(self):
    self.driver= webdriver.Firefox()
    self.driver.implicitly_wait(30)
    self.base_url = "http://ww.example.com"
    self.verificationErrors = []
    self.accept_next_alert = True

def close_all_popups(driver):
    driver.window_handles
    for h in driver.window_handles[1:]:
        driver.switch_to_window(h)
        driver.close()
    driver.switch_to_window(driver.window_handles[0])

def test001_login(self):
    driver=self.driver
    driver.delete_all_cookies()
    driver.get(self.base_url +"/")
    driver.find_element_by_xpath("//*[@id='form-div']/form/input[1]").clear()
    driver.find_element_by_xpath("//*[@id='form-div']/form/input[1]").send_keys("xxxx")
    driver.find_element_by_xpath("//*[@id='form-div']/form/input[2]").clear()
    driver.find_element_by_xpath("//*[@id='form-div']/form/input[2]").send_keys("xxxxx")
    driver.find_element_by_xpath("//*[@id='form-div']/form/input[3]").click()
    driver.find_element_by_xpath("//*[@id='navigation']/li[4]/a").click()
    driver.find_element_by_xpath("//*[@id='selectall']").click()
    driver.find_element_by_xpath("//a[text()='Delete']").click()
    self.close_all_popups()


def is_element_present(self, how, what):
    try:self.driver.find_element(by=how, value=what)
    except NoSuchElementException, e: return False
    return True

def close_alert_and_get_its_text(self):
    try:
        alert = self.driver.switch_to_alert()
        if self.accept_next_alert:
            alert.accept()
        else:
            alert.dismiss()
        return alert.text
    finally: self.accept_next_alert = True

def tearDown(self):
    self.driver.quit()
    self.assertEqual([], self.verificationErrors)

【问题讨论】:

    标签: selenium-webdriver


    【解决方案1】:

    我想你点击删除后没有调用这个方法

    self.close_alert_and_get_its_text(self)
    

    【讨论】:

    • @Santosh Sharma:感谢您回复我。上面的代码部分正确。根据您的代码,我得到了答案。我们正在调用内部类函数。像这样我们必须调用:self.close_alert_and_get_its_text()。不需要在边论点中使用 self。
    • @senthil :我不知道 Python .. 但是,通过查看您的代码,我想到了指出该错误.. 无论如何,在 cmets 中发布可能对其他用户有用的正确答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-06
    相关资源
    最近更新 更多