UI自动化框架:
UI自动化框架可以分为8个模块,conf、data、public、pageobject、testcase、runner、report、log。
conf是用来储存系统环境、数据库、邮件的配置参数、项目的绝对路径、各个模块的绝对路径,其中文件有ini、yaml、xlsx文件等,通过响应的方法来处理相应的文件。ini文件一般通过继承configparse模块进行处理,yaml一般使用@unittest.skip@file_data@unpack装饰器进行读取,xlsx主要通过引用openxlrd、xlrd、xlwt、xlutils处理。
data是用来储存用来进行测试用例的测试数据,通过xlsx处理,然后通过公共的读xlsx方法进行处理。
public可以分为两部分,一部分可以用来储存自己设计的模块,如调用数据库模块,用到pymysql模块、日志输出模块用到logging模块、邮件发送模块用到smtp模块和email模块、处理ini文件模块用到configparse模块、读取xlsx测试用例数据模块用到openxlrd模块、xlrd模块、xlwt模块、xlutil模块,另一部分是用来封装对UI页面的处理基类,用到的selenium模块,其中包括选择驱动、打开网页、定位元素、鼠标移动、鼠标点击、动态等待、输入内容等。Base类中通过设置一个set-driver的类方法建立一个driver对象,然后测试用例来调取这个Base类中的set-driver方法中的driver对象,就可以通过单例模式来实现测试用例。有时候我们还在这个模块中针对每个流程进行封装。
pageElement是封装了当前界面的所有元素,这样我们就实现了元素定位、流程、案例的分离,降低代码之间的耦合度,降低维护成本。
testcase是用来封装测试用例,在此模块中我们可以通过调用基类的set-driver类方法实现单例模式。通过unitest框架继承unitest.TestCas设计测试用例。用到ddt数据驱动来输入测试数据。
runner是用来封装要运行的测试用例,还是通过使用unitest模块中的unitest.TestSuite来装测试用例,unitest.TestRunner,HTMLTestRunner来执行测试用例。
report是用来存储运行测试用例后的结果,用到HTMLTestRunner。
log是用来储存运行测试用例的日志,用到logging模块,设置输出的控制台的日志等级,设置输出到文件的日志等级等。

多测师讲解ui自动化框架设计思想_高级讲师肖sir的更多相关文章

  1. 多测师讲解a'pi自动化框架设计思想_高级讲师肖sir

    API自动化框架API自动化框架分为conf.data.utils.api.testcase.runner.report.log8个模块.conf是用来储存系统环境.数据库.邮件等的配置参数.项目的绝 ...

  2. 多测师讲解自动化测试_rf节课内容_高级讲师肖sir

    *** Settings ***Library Selenium2LibraryLibrary OperatingSystem *** Variables ***${name} zhangsan@{l ...

  3. 多测师讲解 自动化测试理论(1)_高级讲师肖sir

    自动化测试理论什么是自动化测试?广义的:通过工具或程序替代或辅助人工测试的行为叫自动化测试狭义的:通过工具录制或编写脚本模拟手工测试的过程,通过回放或运行脚本执行测试用例,从而代替人工对系统的功能验证 ...

  4. 多测师讲解接口测试 _postman(下)_高级讲师肖sir

    关联接口 定义:上个接口返回的参数作为下一个接口的入参 1)接口1:查询出所有的州,自治区,直辖市,省(且发送请求不需要入参) 接口url地址: http://www.webxml.com.cn/We ...

  5. 多测师讲解接口测试 _postman(上)_高级讲师肖sir

    Postman 一.Postman介绍 Postman是一个网页调试工具,也可以调试css.html Postman的操作环境 环境:Postman Mac.Windows X32.Windows X ...

  6. 多测师讲解selenium ——切换窗口——打印句柄_高级讲师肖sir

    (一)同一个窗口打开两个浏览器 from selenium import webdriverfrom time import sleepdrvier=webdriver.Chrome()url='ht ...

  7. 多测师讲解接口测试 _fiddler无法打开浏览器_高级讲师肖sir

    错误现象: 打开fi'd'dler以后浏览器无法打开,关闭fiddler之后可以打开浏览器 解决方案: 1. 2. 在点击确定

  8. 多测师讲解自动化测试 _RF模拟鼠标悬停_高级讲师肖sir

    test19 Open Browser https://www.ctrip.com/?sid=155952&allianceid=4897&ouid=index gc Maximize ...

  9. 多测师讲解自动化测试 _RF定位iframe框_高级讲师肖sir

    Open Browser https://mail.163.com/ gc Maximize Browser Window sleep 2 #进入if框 Comment Input Text name ...

随机推荐

  1. C#操作Excel开发报表系列整理

    C#操作Excel进行报表开发系列共写了八篇,也已经有很久没有新东西了,现在整理一下,方便以后查阅,如果有写新的,会同时更新.需要注意的是因为Office的版本不同,实际的代码可能会有所不同,但是都是 ...

  2. Leetcode 全排列专题(更新ing)

    总览 涉及到的题目有 题号 名字 难度 Leetcode 60 第k个排列 中等 Leetcode 46 全排列 中等 待更新...... Leetcode 46 全排列 题目 基础题 给定一个 没有 ...

  3. SQL Builder 1.04

    解析效果: select id,code,name,utime,src,ctime from stock where id<20 and code like '%6%' order by id, ...

  4. maven配置settings.xml【阿里云】

    <?xml version="1.0" encoding="utf-8"?> <settings xmlns="http://mav ...

  5. leetcode刷题-66加一

    题目 给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一. 最高位数字存放在数组的首位, 数组中每个元素只存储单个数字. 你可以假设除了整数 0 之外,这个整数不会以零开头. 示例 1: ...

  6. 深入理解Java中的装箱与拆箱

    一.Java数据类型 1.在说装箱与拆箱之前,先说一下Java的基本数据类型,Java从数据类型上可以划分为值类型与引用类型,值类型是四类八种,分别是: 整数型:byte̵,short̵,int̵,l ...

  7. Kubernetes-12:Secret介绍及演示

    Secret介绍 Secret存在的意义 Secret解决了密码.token.密钥等敏感数据的配置问题,而不需要把这些敏感数据暴露到镜像或者Pod Spec中,可以以Volume或者环境变量的方式使用 ...

  8. Java代码工具EasyCode使用

    写Java代码,增删改查,最无趣而又最基础.那机器人就来了,帮你写,减少你的基础的无趣的工作. 推荐两个代写代码的神奇工具Mybatis-generator与EasyCode.这两款软件的数据库持久层 ...

  9. Java简介以及入门

    JAVA基础知识 Java简介 作者:詹姆斯·高斯林(James Gosling) Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承.指针等概念,因此J ...

  10. 使用wordpress搭建的一个微信小程序