ccomment_case.py 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. import time
  2. from selenium import webdriver
  3. from selenium.webdriver.common.by import By
  4. from selenium.webdriver.support.wait import WebDriverWait
  5. from selenium.webdriver.support import expected_conditions as ec
  6. driver = webdriver.Chrome() # 实例化浏览器对象
  7. driver.maximize_window()
  8. wait = WebDriverWait(driver, 5) # 实例化等待对象
  9. login_url = "http://120.25.127.201:18001/user/login.html"
  10. driver.get(login_url) # 在新的窗口打开url
  11. username="15574113907"
  12. password="123456"
  13. wait.until(ec.presence_of_element_located((By.XPATH, "//input[@id='txtUName']"))).send_keys(username)
  14. wait.until(ec.presence_of_element_located((By.XPATH, "//input[@id='txtPassword']"))).send_keys(password)
  15. wait.until(ec.presence_of_element_located((By.XPATH, "//input[@id='btnLogin']"))).click()
  16. # 根据username出现在首页作为等待条件,确保首页正常出现
  17. wait.until(ec.text_to_be_present_in_element((By.LINK_TEXT,username),username))
  18. locator = ("link text", "云上夕轮")
  19. wait.until((ec.visibility_of_element_located(locator))).click()
  20. # 显性等待发表评论按钮,并进行点击
  21. locator = ("link text", "发表评论")
  22. wait.until((ec.visibility_of_element_located(locator))).click()
  23. # 显性等待评论输入框,并进行输入
  24. content = f"发表评论-{str(int(time.time()))}"
  25. locator = ("id", "txtComment")
  26. wait.until((ec.visibility_of_element_located(locator))).send_keys(content)
  27. # 显性等待发表按钮,并进行点击
  28. locator = ("css selector", ".fr>.btn_ora")
  29. wait.until((ec.visibility_of_element_located(locator))).click()
  30. # 显性等待评论提示数据
  31. locator = ("css selector", ".layui-layer-content")
  32. ele_text = wait.until((ec.visibility_of_element_located(locator))).text
  33. assert "评价成功" in ele_text, "评论失败,提示框中的内容与预期不符"