python

1
from selenium import webdriver
from BasePage.BasePage import BasePage
from selenium.webdriver.common.by import By #定位
class Bapa(BasePage):
    #继承
    def __init__(self,driver):
        BasePage.__init__(self,driver)
    #登录网址
    def the_login(self):
        self.get("https://www.baidu.com")
    #定位元素
    def xz_srk(self,*args):
        self.dingwei_element(*args)
    #点击
    def dianji(self,*args):
        self.left_click(*args)
    #窗口切换
    def window(self,n):
        self.switch_window(n)
    #输入
    def shuru(self,test,*args):
        self.send_text(test,*args)
2
from selenium import webdriver
from BasePage.BasePage import BasePage
from selenium.webdriver.common.by import By #定位
class Bapa(BasePage):
    #继承
    def __init__(self,driver):
        BasePage.__init__(self,driver)
    #进入网址
    def jinru_get(self,url):
        self.get(url)
    #定位元素
    def xz_srk(self,*args):
        self.dingwei_element(*args)
    #点击
    def dianji(self,*args):
        self.left_click(*args)
    #窗口切换
    def window(self,n):
        self.switch_window(n)
    #输入
    def shuru(self,test,*args):
        self.send_text(test,*args)
3
from selenium import webdriver
from BasePage.BasePage import BasePage
from selenium.webdriver.common.by import By #定位
class Bapa(BasePage):
    #继承
    def __init__(self,driver):
        BasePage.__init__(self,driver)
    #进入网址
    def jinru_get(self,url):
        self.get(url)
    #定位元素
    def xz_srk(self,*args):
        self.dingwei_element(*args)
    #点击
    def dianji(self,*args):
        self.left_click(*args)
    #窗口切换
    def window(self,n):
        self.switch_window(n)
    #输入
    def shuru(self,test,*args):
        self.send_text(test,*args)
4
from selenium import webdriver
from BasePage.BasePage import BasePage
from selenium.webdriver.common.by import By #定位
class Bapa(BasePage):
    #继承
    def __init__(self,driver):
        BasePage.__init__(self,driver)
    #进入网址
    def jinru_get(self,url):
        self.get(url)
    #定位元素
    def xz_srk(self,*args):
        self.dingwei_element(*args)
    #点击
    def dianji(self,*args):
        self.left_click(*args)
    #窗口切换
    def window(self,n):
        self.switch_window(n)
    #输入
    def shuru(self,test,*args):
        self.send_text(test,*args)
5
from selenium import webdriver
from BasePage.BasePage import BasePage
from selenium.webdriver.common.by import By #定位
class Bapa(BasePage):
    #继承
    def __init__(self,driver):
        BasePage.__init__(self,driver)
    #进入网址
    def jinru_get(self,url):
        self.get(url)
    #定位元素
    def xz_srk(self,*args):
        self.dingwei_element(*args)
    #点击
    def dianji(self,*args):
        self.left_click(*args)
    #窗口切换
    def window(self,n):
        self.switch_window(n)
    #输入
    def shuru(self,test,*args):
        self.send_text(test,*args)
6
from selenium import webdriver
from BasePage.BasePage import BasePage
from selenium.webdriver.common.by import By #定位
class Bapa(BasePage):
    #继承
    def __init__(self,driver):
        BasePage.__init__(self,driver)
    #进入网址
    def jinru_get(self,url):
        self.get(url)
    #定位元素
    def xz_srk(self,*args):
        self.dingwei_element(*args)
    #点击
    def dianji(self,*args):
        self.left_click(*args)
    #窗口切换
    def window(self,n):
        self.switch_window(n)
    #输入
    def shuru(self,test,*args):
        self.send_text(test,*args)
import pytest,os,allure,time
from selenium import webdriver
from selenium.webdriver.common.by import By #定位
from BaPa1 import BaPa_001,BaPa_002,BaPa_003,BaPa_004,BaPa_005,BaPa_006
A = BaPa_001.Bapa
B = BaPa_002.Bapa
C = BaPa_003.Bapa
D = BaPa_004.Bapa
E = BaPa_005.Bapa
F = BaPa_006.Bapa
class TestClass():
    @classmethod
    def setup_class(cls):
        cls.driver = webdriver.Chrome('C:/Users\Administrator\PycharmProjects\web\Chrome\Application\chromedriver.exe')
        cls.driver.maximize_window()
        cls.driver.implicitly_wait(30)
    def test001(self):
        b = A(self.driver)
        b.driver.implicitly_wait(30)
        b.the_login()
        b.shuru("https://www.jd.com/",By.ID,'kw')
        b.dianji(By.ID,'su')
        #跳转京东
        b.dianji(By.XPATH,'//*[@id="1"]/div/div[1]/h3/a')
        b.window(1)
    def test002(self):
        b = B(self.driver)
        b.driver.implicitly_wait(30)
        b.dianji(By.XPATH,'//*[text()="你好,请登录"]')
        b.shuru('无线网卡随身wifi',By.XPATH,'//*[@id="key"]')
        time.sleep(1)
        b.dianji(By.XPATH,'//*[@id="search"]/div/div[2]/button')
        time.sleep(1)
        b.dianji(By.XPATH,'//*[@id="J_selector"]/div[4]/div/div[2]/div[1]/ul/li[1]/a')
        time.sleep(1)
        b.dianji(By.XPATH,'//*[@id="J_selector"]/div[4]/div/div[2]/div[1]/ul/li[4]/a')
        time.sleep(1)
        b.dianji(By.XPATH,'//*[@id="ad-291-68165182782"]/div[3]/a/div/em')
        b.window(2)
    def test003(self):
        c = C(self.driver)
        c.driver.implicitly_wait(30)
        c.dianji(By.XPATH,'//*[@id="choose-attr-1"]/div[2]/div[1]/a/i')
        time.sleep(1)
        c.dianji(By.XPATH,'//*[@id="choose-baitiao"]/div[2]/div[1]/div[1]/a/strong')
        time.sleep(1)
        c.dianji(By.XPATH,'//*[@id="InitCartUrl"]')
        time.sleep(1)
        c.dianji(By.XPATH,'//*[@id="settleup-2014"]/div[1]/a')
        c.window(3)
    def test004(self):
        d = D(self.driver)
        d.driver.implicitly_wait(30)
        # d.dianji(By.XPATH,'//*[@id="cart-body"]/div[2]/div[6]/div/div[2]/div/div/div/div[2]/div[1]/div[2]/a[3]/strong')
        time.sleep(1)
        #删除购物车
        # d.dianji(By.XPATH,'/html/body/div[9]/div[1]/div[2]/div/div/div/div/div[1]/ul/li/label/span[1]/input')
        # d.dianji(By.XPATH,'/html/body/div[9]/div[1]/div[2]/div/div/div/div/div[2]/div[2]/a[2]')
        #点击我的订单
        d.dianji(By.XPATH,'//*[text()="我的订单"]')
        d.window(4)
    def test005(self):
        e = E(self.driver)
        e.driver.implicitly_wait(30)
        e.dianji(By.XPATH,'//*[@id="track241507496618"]/td[1]/div[1]/div[2]/div[1]/a')
        e.window(5)
    def test006(self):
        f = F(self.driver)
        f.driver.implicitly_wait(30)
        f.dianji(By.XPATH,'//*[@id="choose-attr-1"]/div[2]/div[1]/a/img')

    @classmethod
    def teardown_class(cls):
        time.sleep(5)
        cls.driver.quit()
        
if __name__ == '__main__':
    pytest.main(['--alluredir', 'report/result', 'jh.py'])  # 生成json类型的测试报告
    aa = 'allure' + 'generate' + './report/result' + '-o' + './report/html ' + '--clean'  # 将测试报告转为html格式
    # system函数可以将字符串转化成命令在服务器上运行
    os.system(aa)
from selenium.webdriver.support.ui import WebDriverWait # 显示等待
from selenium.webdriver.support import expected_conditions as EC # 期望条件
from selenium.webdriver.common.action_chains import ActionChains #鼠标操作
class BasePage():
    '''BasePage封装所有界面都公用的方法。例如driver,find_element等'''
    '''实例化BasePage类时,事先执行的__init__方法,该方法需要传递参数'''
    def __init__(self,driver):
        self.driver = driver
    # 进入网址
    def get(self,url):
        self.driver.get(url)
    #元素定位,替代八大定位
    def dingwei_element(self,*locator):
        return self.driver.find_element(*locator)
    #点击
    def left_click(self,*locator):
        ActionChains(self.driver).click(self.dingwei_element(*locator)).perform()
    #输入
    def send_text(self,text,*locator):
        self.driver.find_element(*locator).send_keys(text)
    #清除
    def clear_text(self,*locator):
        self.driver.find_element(*locator).clear()
    # 表单切换
    def switch_iframe(self, *locator):
        self.driver.switch_to.frame(self.driver.find_element(*locator))
    # 窗口切换
    def switch_window(self, n):
        self.driver.switch_to.window(self.driver.window_handles[n])
    # 用于断言
    def get_attribuit_value(self, name, *locator):
        return self.dingwei_element(*locator).get_attribute(name)
    def get_title(self):
        return self.driver.title
    def get_current_url(self):
        return self.driver.current_url
    def get_element_text(self, *locator):
        return self.driver.find_element(*locator).text
    # 显示等待
    def find_element_by_wait(self,driver,*locator):
        element = WebDriverWait(driver,10,0.5).until(EC.presence_of_element_located(*locator))
        return element
    #滚动条
    def gdt(self,*args):
        dw = self.driver.find_element(*args)
        self.driver.execute_script("arguments[0].scrollIntoView();", dw)
    #弹框
    def tankuang(self):
        self.driver.switch_to.alert.accept()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值