首页天道酬勤python为什么叫爬虫,python有什么用

python为什么叫爬虫,python有什么用

张世龙 05-06 09:41 48次浏览

目录介绍了PO模式的代码编写示例

介绍

本文章没有营养…不推荐阅读…我写来当笔记的…

业务流程(Page Object的缩写)是与使用页面元素不同的模型,在每个页面下方有一个部署class,部署class用于维护页面元素和操作方法。分层思想

PO模式代码的记述是登录页的例子

分别定义对象层Page_Login类,用于放置元素; 操作层Operate_Login类、元素操作业务层Test_login类和测试用例Base_Page类是基类,可以封装当前页所需的驱动程序方法。 等待、点击等操作。 然后,Page_login通过继承Base_Page,生成示例重复代码基础类:

from selenium.web driver.com mon.byimportbyfromlogutilimportmy _ logfromselenium.web driver.support.waitimportwebdriver driver ) : self.driver=driver self.log=my _ log (basepage ' ) value(: ),XPath单击操作(self.by _ find ) value ).click ) defby_id_click ) self value(.click ) ) defby_ID_send_keys ) self,value, send_value ) ) : " '以id标识元素并发送内容' ' self.by_find的value ).send_keys(send_value ) webdriverwes poll=2元素' ' ' webdriverwait(self.driver,timeout,poll ).until ) lambdax : x.find _ element (by,value ) ) timeout=30,poll=2) :''1.by_find_element查找元素。 类型xpath,value自定义2 ' ' toast _ log='/* [ contains (@ text,' {} ) ]'.format(text ) ele=webdriverwait ) self time out poll (.until (lambdax : x.find _ element _ by _ XPath ) toast_log ) ) return ele.text是一个简单的登录界面

封装“我的”按钮元素的放置和单击操作

frombasepageimportactionclassbxgmainpage (action ) : # '我的'按钮me _ XPath='/* [ contains ] @ text,'我的]' #

封装登录方法选择、输入帐户密码、单击登录按钮和获取toast等元素的定位和操作

frombasepageimportactionclassbxgloginpages (action ) : log in _ method=' com.boxue gu : id/other_login_btn '登录方式:其他方式登录log in _ type=' com.boxue gu : id/user _ log in _ view ' #登录类型3360帐户密码为account=' com.boxue gu : id/edit _ usr ' #帐户password=' com.boxue gu : id/edit _ pwd ' #密码log in \ 登录按钮toast_xpath='错误' deflogin_method_click(self ) : self.by _ id _ click (self.log in _ ) )。 3360 self.by _ id _ click (self.log in _ type ) deflogin_method_click_2) self ) 3360 self.by _ id _ click vavare value ) deflogin_BTN_click(self ) : self.by _ id _ click (self.log in _ BTN ) deftoast (self ) 3360returnsurn

importunittestfromutils.yamlutilimportyamlreaderfromappiumimportwebdriverfrompage.page _ mainimportbxgmainpagefrompage. PO模式unittestclasslogin (unittest.test case ) :def_init_ ) self,method name : str=.-none : super (._ ) 驱动程序=web driver.remote (http://localhost :4723/wd/hub ),desired ) self.bxgmain=BxgMainPage ) driver实例self.bxglogin=bxgloginpages (driver ) #单击实例化的bxgloginpages类,然后单击登录方法, 用于输入帐户密码@classmethoddefsetUpClass(cls )- None: super ).setupclass ) pass @ classmethoddefteardowncll deftest_login ) self ) : # (创建测试用例的步骤)单击my self.bxgmain.allow _ click (我的self.bxgmain.allow\CK )以获取其他登录方法选择帐户并输入self.bxglogin.log in _ type _ click (#选择密码并输入self.bxglogin.log in _ method _ click _2) #帐户单击以获取self.bxglogin.login_btn_click ) #toasttoast=self.bxglogin

logUtil:日志工具类

YamlReader: Yaml工具类

完整代码:

码云仓库

jmeter接口自动化测试框架,wesseyu