pytest+python下的UI自动化基础框架

总体设计模式:
pytest+python下的UI自动化基础框架python

config目录:存放一些公共的静态文件,如项目名称,配置文件等这些环境变量(能够用其余组件替换,如sql,主要能把配置文件的内容被程序识别)。web

httptrquest目录:存放接口代码,UI自动化由于其稳定性问题会出现有些地方出错致使后续没法进行,故添加接口操做。sql

initailize目录:初始化代码,用于存放初始化操做的代码,好比初始化一些全局变量,初始化webdriver等,应用于整个项目的代码。设计模式

test目录:真正执行的目录,用于存放测试用例的代码,会被pytest识别将其转化为可执行的测试用例(PS:该文件的目录名及其模块、类、方法名都要根据pytest的设置来进行设置);该目录下的代码都会被pytest装饰,控制执行顺序,执行依赖等操做。框架

testcase目录:为test目录服务,执行相关的操做,定位元素,执行操做,输出结果等等,该目录下的模块、方法都会被test目录下相应的代码调用实例化ide

testcase_utils: 辅助工具类,在操做过程当中某些页面上有些公共的操做,如表格table定位,批量元素的输入,js操做等等,便于维护。工具

utils目录: 工具类,为整个项目的运行提供基础的操做,如读取文件,将yaml文件转化为WebElement类对象元素,日志、截图、测试报告、sql操做、装饰器、发送报告等基础操做。与testcase_utils目录最大的区别为该目录下的代码不会操做页面上的元素测试

yaml文件: 存放元素的定位方式,将页面元素转化为yaml静态文件设计

conftest.py文件: ytest固定文件,主要功能两个,初始化操做和记录运行结果;1.用于fixture装饰器的使用,初始化操做,建立全局惟一对象,将这些对象传递给initailize目录下的指定模块,全局共用 2.记录运行结果,整个运行失败时的操做,用于最后的分析操做日志

pytest.ini 文件,pytest固定文件,指定运行方式

相关文章
相关标签/搜索