1.selenium实战之从txt文档读取配置信息并执行登录

时间:2022-09-26 22:09:26

前置条件:

  1.本机已搭建ECShop3.0网站

  2.在脚本目录创建了user.txt文本如下:

  1.selenium实战之从txt文档读取配置信息并执行登录

  1.selenium实战之从txt文档读取配置信息并执行登录

目的:实现从txt中读取配置文件信息,本实战中,包含url地址、用户名、密码,然后进行ESChop的登录

附上代码:

 # -*- coding: utf-8 -*-
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import Select
from selenium.common.exceptions import NoSuchElementException
from selenium.common.exceptions import NoAlertPresentException
import unittest, time, re, codecs, os # 定义函数从文本读取内容
def getValue(txtPath):
# 读取文本的路径
fp = codecs.open(txtPath, 'r', encoding='utf-8')
# 定义空列表
listData = []
for item in fp.readlines():
# 去掉多余的空格,并放入到列表中
listData.append(item.rstrip())
# 关闭文件
fp.close()
# 返回文本内容列表
return listData class Test(unittest.TestCase):
def setUp(self):
# 初始化浏览器
self.driver = webdriver.Firefox()
# 设置全局等待时间
self.driver.implicitly_wait(30)
# 设置txt读取的路径
txtPath = os.getcwd() + '\\user.txt'
# 将返回的列表赋值给自己定义的values属性,便于在用例中调用
self.values = getValue(txtPath)
# 获取到访问的url地址,从values中取
self.base_url = self.values[0]
self.verificationErrors = []
self.accept_next_alert = True def test_(self):
driver = self.driver
driver.get(self.base_url)
# 定位用户名输入框
driver.find_element_by_name("username").clear()
# 定位用户名输入框并输入密码
driver.find_element_by_name("username").send_keys(self.values[1])
# 定位密码输入框
driver.find_element_by_name("password").clear()
# 定位密码输入框并输入密码
driver.find_element_by_name("password").send_keys(self.values[2])
# 定位登录按钮并点击
driver.find_element_by_css_selector("input.btn-a").click() def tearDown(self):
# 退出浏览器
self.driver.quit()
self.assertEqual([], self.verificationErrors) if __name__ == "__main__":
# 执行case
unittest.main()