要实现python自动化测试,最根本的方法:关键字驱动,也就是selenium二次封装。
python小白学习过程如下:
看视频学习关键字驱动,再结合项目进行实际操作。
根据视频学习,写的代码如下:
from selenium import webdriver
import time
####### 封装哪些?
####### 打开浏览器
####### 访问网址
####### 输入账号密码登录
####### 找元素
####### 输入
####### 点击
####### 等待
####### class是类的意思,具有共同属性的事物
####### class加类名。
####### 类方法:工具
####### def + 函数名(self,参数)
####### 过程
class KeyWords:
def open_browser(self, browser):
if browser == 'chrome':
# webdriver.Chrome() # 打开浏览器
chrome_options = webdriver.ChromeOptions()
chrome_options.add_experimental_option("excludeSwitches", ['enable-automation'])
driver = webdriver.Chrome(options=chrome_options)
elif browser == 'firefox':
driver = webdriver.Firefox()
elif browser == 'ie':
driver = webdriver.Ie()
else:
driver = webdriver.Chrome(options=chrome_options)
return driver
# 初始化函数
def __init__(self,browser):
self.driver = self.open_browser(browser)
####### 打开网址的关键字
def get_url(self, url):
self.driver.get(url)
####### 元素定位 类型, 值
def find_ele(self, locator_type, value):
return self.driver.find_element(locator_type, value)
####### 输入方法
def input_text(self, locator_type, value, text):
self.find_ele(locator_type, value).send_keys(text)
####### 点击
def on_click(self, locator_type, value):
self.find_ele(locator_type, value).click()
####### 等待 alt+enter导包
def wait(self, t):
time.sleep(t)
####### 程序入口方法 ctrl+鼠标悬浮
if name == ‘main’:
driver = KeyWords(‘chrome’)
# driver.get(“https://10.10.10.14:20100/monitorback/#/login”)
# time.sleep(3)
driver.get_url(‘https://10.10.10.14:20100/monitorback/#/login’)
driver.on_click(‘id’, ‘details-button’)
driver.on_click(‘id’, ‘proceed-link’)
driver.wait(1)
driver.input_text(‘xpath’, ‘//[@id=“app”]/div/div/form/div[2]/div[1]/div/div[1]/input’, ‘xt’)
driver.wait(1)
driver.input_text(‘xpath’, '//[@id=“app”]/div/div/form/div[2]/div[2]/div/div[1]/input’, ‘123456’)
driver.wait(1)
driver.on_click(‘xpath’, ‘//*[@id=“app”]/div/div/form/div[2]/button’)