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