Pytest实战UI测试框架

Pytest实战Web测试框架

项目结构

用例层(测试用例)

  |

Fixtures层(业务流程)

  |

PageObject层

  |

Utils实用方法层 

使用pytest-selenium

基础使用

# test_baidu.py

def test_baidu(selenium):

    selenium.get('https://www.baidu.com')

    selenium.find_element_by_id('kw').send_keys(' 韩志超')

    selenium.find_element_by_id('su').click()

运行


$ pytest test_baidu.py --driver=chrome

或配置到pytest.ini中


[pytest]

addopts = --driver=chrome

使用chrome options

# conftest.py

import pytest

@pytest.fixture

def chrome_options(chrome_options):  # 覆盖原有chrome_options

    chrome_options.add_argument('--start-maximized')

    # chrome_options.add_argument('--headless')

    return chrome_options 

Page Object层

基本模型

# baidu_page.py

class BaiduPage(object):

    search_ipt_loc = ('id', 'kw')

    search_btn_loc = ('id', 'su')

   

    def __init__(self, driver):

        self.driver = driver

   

    def input_search_keyword(self, text):

        self.driver.find_element(*self.search_ipt_loc).send_keys(text)

   

    def click_search_button(self):

        sel

联系作者:xiaowanzi02620

Pytest实战UI测试框架_第1张图片
图片发自App

你可能感兴趣的:(Pytest实战UI测试框架)