当前位置: 首页 > news >正文

网站建设实战视频教程长沙网络科技有限公司

网站建设实战视频教程,长沙网络科技有限公司,河北石家庄的大学,wordpress 数据备份插件这里重新阐述下PageObject设计模式#xff1a; PageObject设计模式是selenium自动化最成熟#xff0c;最受欢迎的一种模式#xff0c;这里用pytest同样适用 这里直接提供代码#xff1a; 全局变量 conftest.py conftest.py 全局变量#xff0c;主要实…这里重新阐述下PageObject设计模式 PageObject设计模式是selenium自动化最成熟最受欢迎的一种模式这里用pytest同样适用 这里直接提供代码 全局变量 conftest.py conftest.py 全局变量主要实现以下功能 1、添加命令行参数broswer 用于切换不用浏览器 2、全局参数driver调用 import pytest from selenium import webdriverdef pytest_addoption(parser):添加命令行参数 --browserparser.addoption(--browser, actionstore, defaultfirefox, helpbrowser option: firefox or chrome)pytest.fixture(scopesession) # 以实现多个.py跨文件使用一个session来完成多个用例 def driver(request):定义全局driver参数name request.config.getoption(--browser)if name firefox:driver webdriver.Firefox()elif name chrome:driver webdriver.Chrome()else:driver webdriver.Chrome()print(正在启动浏览器名称: %s % name)# 需要登陆就调用登陆函数def fn():print(当全部用例执行完之后: teardown driver!)driver.quit()request.addfinalizer(fn)return driver loginpage.py 作者Caric_lee 日期2018import timefrom autoTest.pytest_selenium.common.basepage import BasePage from autoTest.pytest_selenium.common.logging import Log from autoTest.pytest_selenium.page.mysql_python import Mysql# 获取数据库数据 mysql_test Mysql(localhost,3306,root,123456,test) dataAll mysql_test.query(select * from auto_test) username dataAll[0][username] password dataAll[0][password] url dataAll[0][url] print(查询数据库信息 账号: %s, 密码: %s, url: %s % (username, password, url))class Login(BasePage):log Log()# 断言登录页提示文本hint_text_element (xpath, //*[classcrm-login1-header]/h1)hint_text 登录销售易# 断言忘记密码forget_paw_elemet (xpath, //*[text()忘记密码])forget_paw 忘记密码# 断言免费注册Free_registration_element (xpath, //*[text()免费注册])Free_registration_text 免费# 断言欢迎登录销售易tenant_interface (xpath, //*[text()欢迎登录销售易])tenant_interface_text 欢迎登录# 元素定位input_username_element (xpath, //*[nameloginName])input_paw_element (xpath, //*[placeholder请输入密码])click_enter_element (xpath, //*[text()登 录])clikc_tenant_element (xpath, //span[text()自动化测试_0202_1109_正式 and classcrm-company-name])def assert_title(self):result self.is_text_in_element(self.hint_text_element, self.hint_text)self.log.info(assert: 断言登录页提示文本: %s % result)def assert_forget_paw(self):result self.is_text_in_element(self.forget_paw_elemet, self.forget_paw)self.log.info(assert: 断言忘记密码: %s % result)def assert_Free_registration(self):result self.is_text_in_element(self.Free_registration_element, self.Free_registration_text)self.log.info(assert: 断言免费注册: %s % result)def input_username(self, username):self.send_keys(self.input_username_element, username)def input_paw(self, paw):self.send_keys(self.input_paw_element, paw)def click_enter(self):self.click(self.click_enter_element)def assert_tenant_interface(self):result self.is_text_in_element(self.tenant_interface, self.tenant_interface_text)self.log.info(assert: 欢迎登录销售易: %s % result)def move_scroll_end(self):time.sleep(3)self.js_focus_element(self.clikc_tenant_element) # 这里已经可以实现滚动了self.log.info(聚焦滚动结束)def click_tenant(self): # 选择租户self.click(self.clikc_tenant_element)self.log.info(选择租户成功)def login(self, usernameusername, pawpassword):登录流程self.assert_title() # 断言登录页提示文本self.assert_forget_paw() # 断言忘记密码self.assert_Free_registration() # 断言免费注册self.input_username(username)self.input_paw(paw)self.click_enter()time.sleep(3)self.assert_tenant_interface() # 断言欢迎登录销售易print(----------------------)self.move_scroll_end()self.click_tenant()if __name____main__:from selenium import webdriverdriver webdriver.Chrome()base Login(driver)driver.get(url)driver.maximize_window()driver.implicitly_wait(10)base.login()# 学习备注# 调试某个功能的时候就只写这个功能点的代码去调# 加载转圈是js报错了前端的问题是bug 滚动条 test_login.py 作者Caric_lee 日期2018from autoTest.pytest_selenium.page import loginpage from autoTest.pytest_selenium.page.loginpage import Login import pytest, timeclass Test_login():url loginpage.urlusername_data loginpage.usernamepaw_data loginpage.passwordprint(调用信息 账号: %s, 密码: %s, url: %s % (username_data, paw_data, url))pytest.fixture(scopefunction, autouseTrue) # function 默认参数传递autouseTrue 自动调用fixture功能def test_01(self, driver):driver.get(self.url)driver.maximize_window()driver.implicitly_wait(10)self.login Login(driver)def test_02(self):登录# 1、断言登录页提示文本self.login.assert_title()# 2、断言忘记密码self.login.assert_forget_paw()# 3、断言免费注册self.login.assert_Free_registration()# 4、输入账号self.login.input_username(self.username_data)# 5、输入密码self.login.input_paw(self.paw_data)# 6、点击登录self.login.click_enter()time.sleep(3)# 7、断言欢迎登录销售易self.login.assert_tenant_interface()# 8、滚动到底部self.login.move_scroll_end()# 9、点击租户self.login.click_tenant()time.sleep(5)def test_03(self, driver):time.sleep(5)driver.quit()if __name__ __main__:# 选择测试浏览器pytest.main([-s, --browserchrome, test_login.py]) 这里直接指向test_login.py文件就OK了 还可以在优化把loginpage中的读取数据库信息单独写个方法放在page里面直接读取。 数据结构还需要在调整 这可能是B站最详细的pytest自动化测试框架教程整整100小时全程实战
http://www.zqtcl.cn/news/889695/

相关文章:

  • 规划电子商务网站流程福清建设局网站简介
  • 使用joomla的网站网络营销师资格证有什么用
  • 做经营网站怎么赚钱吗关于做网站的合同
  • 上海手机网站建设哪家好重庆景点
  • 做网站菜单背景图片wordpress伪原创词库
  • 网络维护工程师工资多少聊城哪里做优化网站
  • 网站开发用什么字体查询域名备案
  • 济南品牌网站建设公司网站单个页面紧张搜索引擎蜘蛛
  • 公司需要一个简单的网站包头网站建设奥北
  • 怎么制作网站导航页新手做网站详细步骤
  • 自己个人网站后台怎么做wordpress多程序用户同步
  • 赣州网联科技有限公司wordpress安装后优化
  • 二手书的网站建设做设计在哪个网站找图片大全
  • 网站seo设计北京市建设投标网站
  • 承德做网站设计的网络推广主要内容
  • 婚纱网站源代码重庆网站定制公司
  • 同一个ip网站太多 seo应用商店网站源码
  • 网站内容框架首页>新闻>正文 网站怎么做
  • 网站制作 搜索做效果图网站有哪些
  • 网站建设的相关技术网站的购物车怎么做
  • 免费建设公司网站腾讯云域名购买
  • 淘宝客网站应该怎么做网页浏览器推荐
  • 怎样做影视网站不侵权商丘专业做网站
  • 哪个网站做刷手最好鹤壁 网站建设
  • 设计接单子网站安徽网站开发推荐
  • 网站建设制作 优帮云怎样注册商标申请
  • 网站怎么做交易市场苏州吴江做网站公司
  • wordpress的字体禁用优化设计的答案
  • 网站建设开发五行属性如何做二级域名网站
  • 珠海做网站的公司介绍最近的新闻大事