【selenium学习 -2】一个基本的测试流程的例子

时间:2020-05-13
本文章向大家介绍【selenium学习 -2】一个基本的测试流程的例子,主要包括【selenium学习 -2】一个基本的测试流程的例子使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

最近想好好写写博客,就继续以前关于web自动化的写,希望能写成一个系列

今天的这个例子,就是一个简单的百度搜索,并验证搜索后网页Title的用例(使用chrome示例)

webdriver在驱动浏览器时,需要下载对应的驱动,注意需要和自己所使用的浏览器版本相匹配

Chrome下载 chromedriver.exe 下载地址 http://chromedriver.storage.googleapis.com/index.html

Firefox 下载 geckodriver.exe 下载地址 https://github.com/mozilla/geckodriver/releases/

IE 下载  IE Driver 下载地址 https://www.nuget.org/packages/Selenium.WebDriver.IEDriver/

from selenium import webdriver
import time


class test01():
    def __init__(self):
        # 1.强制指定driver路径
        # chrome_driver = r"/path/to/chromedriver"
        # self.driver = webdriver.Chrome(executable_path=chrome_driver)
        # 2.将driver路径放置进环境变量中,就可以直接使用
        self.driver = webdriver.Chrome()
        self.driver.maximize_window()  # 最大化窗口
        self.driver.get("https://www.baidu.com/")

    def input_text(self):
        self.driver.find_element_by_name("wd").send_keys("双J版稻香")
        self.driver.find_element_by_id("su").click()
        time.sleep(3)  # 添加等待时间,等待网页反应过来

    # 获取网页title
    def get_title(self):
        return self.driver.title

    # 关闭浏览器窗口并结束drive进程
    def close(self):
        self.driver.quit()


if __name__ == '__main__':
    bd = test01()
    bd.input_text()
    title = bd.get_title()
    assert title == '双J版稻香_百度搜索'  # 做断言
    bd.close()

需要注意的几个点:

1.driver的路径,一种方式是强制指定路径,二种方法是放入环境变量中,可直接使用

2.因为脚本的速度很快,有时网页的速度跟不上,所以需要添加一些等待时间,以避免找不到元素等问题,在什么地方添加,根据脚本而定

3.UI自动化的基本流程就是,打开浏览器 - 定位元素 - 操作 - 断言,我感觉更多的难点是定位元素,和做合适的断言,这些后面再慢慢讲

原文地址:https://www.cnblogs.com/ronyjay/p/12881882.html