训练营第二天作业 - 02

import time
from selenium import webdriver
from selenium.webdriver.common.by import By

class TestCeshiren():
    #前置操作
    def setup_class(self):
        self.driver = webdriver.Chrome()
        self.driver.implicitly_wait(3)
    def teardown_class(self):
    #后置操作
        self.driver.quit()
    #冒烟用例
    def test_search(self):
        """
        测试步骤
        1. 打开ceshiren网站
        2.点击首页的搜索按钮
        3.点击高级搜索按钮
        4.输入搜索信息
        5.点击搜索
        6.断言搜索的信息和结果内容是相关的
        :return:
        """
        #self.driver = webdriver.Chrome()
        #隐式等待
        #self.driver.implicitly_wait(3)
        #打开网页
        self.driver.get("https://ceshiren.com/")
        #time.sleep(3)
        #点击首页的搜索按钮
        self.driver.find_element(By.ID, "search-button").click()
        #点击高级搜索按钮
        self.driver.find_element(By.CSS_SELECTOR, ".searching").clcik()
        #输入搜索信息
        self.driver.find_element(By.CSS_SELECTOR, ".full-page-search").send_keys("selenium")
        #点击搜索
        self.driver.find_element(By.CSS_SELECTOR, ".search-cta").click()
        #实际结果
        #time.sleep(2)
        res_text = self.driver.find_element(By.CSS_SELECTOR, ".topic-title").text
        assert "selenium" in res_text
        #关闭浏览器
        #self.driver.quit()
    
    def test_search_null(self):
        #输入为空的搜索信息
        self.driver.get("https://ceshiren.com/")
        self.driver.find_element(By.ID, "search-button").click()
        self.driver.find_element(By.CSS_SELECTOR, ".searching").click()
        self.driver.find_element(By.CSS_SELECTOR, ".full-page-search").send_keys("")
        self.driver.find_element(By.CSS_SELECTOR, ".search-cta").click()
        res_text = self.driver.find_element(By.CSS_SELECTOR, ".fps-invalid").text
        #截图
        self.driver.save_screenshot("image.png")
        #塞入报告
        allure.attach.file("image.png", name="hogwarts", attachment_type=allure.attachment_type.PNG)
        assert res_text == "您的搜索词过短。"