• Selenium WebDriver + python 自动化测试框架


     目标

      组内任何人都可以进行自动化测试用例的编写

      完全分离测试用例和自动化测试代码,就像写手工测试用例一下,编写excel格式的测试用例,包括步骤、检查点,然后执行自动化工程,即可执行功能自动化测试用例,包括测试结果、测试报告。

      任何一台安装了JDK环境的windows机器都可以直接运行,不必考虑运行环境的问题。

      整理了一下目前使用的自动化测试框架,基于Selenium WebDriver + python,关键字驱动,简单总结一下。

    自动化工程:

     

    driver 目录            ----浏览器驱动(支持chrome、IE浏览器)

    data目录                     ----上传场景使用的图片(具体业务相关)

    Picture目录               ----测试用例失败截图

    TestCase_UI.exe                 ----主程序(使用pyinstaller打包发布)

    Test.xls                         ----测试用例(重点关注) 

    测试用例(***.xls文件)

    包括4个sheet分页,详情如下:

    1、PageElements 分页

     

    模块:具体的测试业务模块

    页面元素:页面具体操作的元素

    例如“我的工作台-搜索输入框”,“我的工作台”就是模块名称,“搜索输入框”就是需要操作的元素

    关键字:指的是元素的操作方式

    例如文本输入框封装的关键字是input,按钮是click,断言是assert,这个是封装在自动化测试工程中的

    页面定位元素:元素定位方式,支持8种定位方式:id、class、name、link…xpath、css

    页面元素定位表达式:

             例如//*[@id='tip_about_info']/div[2]/span,采用xpath定位

    如下的元素(输入框),关键字-input、页面定位元素-id、页面元素定位表达式- plantformSearchInput

    二级定位:页面包含多个iframe 时,采用二级定位的方式进行页面元素定位

    2、TestConfig 分页

         配置信息

     

    Driver:根据填写的数据启动不同的浏览器,支持chrome、IE

    URL:测试网址

    PageElements:根据填写的数据,读取数据源,支持excel、py

    **Report:测试报告的标题,可以定制

    3、TestSuite 分页

    每行数据表示一个测试用例

     

    测试用例序号:唯一,不能重复

    测试用例描述:说明该条测试用例的目的

    前置条件:方便用户维护用例,可以为空

    操作步骤:同上

    预期结果:同上

    是否执行:执行标识,yes执行、no不执行

    测试结果:测试用例执行结果

    4、TestSteps 分页

          测试用例的执行步骤

      1、2、3行为登录操作,填写用户名、密码,不用修改

     

    测试用例序号:对应TestSuite分页的测试用例序号,一个测试用例多个步骤,测试用例序号相同

    测试模块:业务模块

    测试用例步骤描述:对应PageElements分页的“页面元素”列

    操作值:主要是文本输入框输入的数据

    检查点:测试步骤的检查点,一条用例可包含多个检查点

    测试结果:用例步骤执行成功、用例步骤执行失败

             一个用例存在多个测试步骤,任意步骤执行失败,不在执行剩下的步骤,直接执行下个测试用例,失败的步骤填写“用例步骤执行失败”

    页面截图:用例步骤执行失败的步骤截图

    Sheet页面对应关系说明:

    TestSuite 分页的测试用例序号对应TestSteps 分页的测试用例序号

     

    PageElements 分页的测试步骤描述对应TestSteps 分页的测试步骤描述

     

    自动化用例执行过程

             命令行中直接输入自动化测试工程文件的名称,即可开始测试用例执行,打印具体测试过程。

     

    用例报告

             用例执行完成,在report目录中生成html格式的报告,方便jenkins持续集成使用

     

    报告内容如下(可定制)

     

    查看执行结果

    TestSuite 分页

     

    TestSteps 分页

     

  • 相关阅读:
    14. HTML 列表(无序, 有序, 定义)
    13. HTML table
    12. HTML图像
    11. HTML链接
    10. HTML CSS
    learning java AWT Pannel
    learning AWT Jrame
    learning java 正则表达式
    learning java java.time相关类
    learning java Calendar类
  • 原文地址:https://www.cnblogs.com/titan5750/p/6776125.html
Copyright © 2020-2023  润新知