测试人论坛搜索功能实战
测试代码
import pytest
import time
import json
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.support import expected_conditions
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
'''
获取chromedriver地址
https://npm.taobao.org/mirrors/chromedriver/
https://googlechromelabs.github.io/chrome-for-testing/
http://chromedriver.storage.googleapis.com/index.html
chromedriver --version
作业:
打开测试人论坛。
跳转到高级搜索页面
搜索输入框输入搜索关键字。关键字清单如下:
Selenium\ Appium\ 面试
打印搜索结果的第一个标题。
断言:第一个标题是否包含关键字。
'''
class TestDemo01():
def setup_method(self, method):
# 实例化chromedriver
self.driver = webdriver.Chrome()
# 添加全局隐式等待
self.driver.implicitly_wait(5)
def teardown_method(self, method):
# 关闭driver
self.driver.quit()
@pytest.mark.parametrize("case", [('python'),('Appium'),('面试')])
def test_demo01(self,case):
# 访问网站
self.driver.get("https://ceshiren.com/search?expanded=true")
self.driver.find_element(By.ID, "ember15").send_keys(case)
self.driver.find_element(By.XPATH, '//*[@id="ember13"]/div[2]/div[1]/button').click()
rep_text = self.driver.find_element(By.XPATH, '//*[@id="search-result-count"]/span[2]').text
print(rep_text)
assert case == rep_text
运行成功截图