zoukankan      html  css  js  c++  java
  • 自动化测试框架

    1、开发工具
    开发语言和使用框架:Java、Selenium2
    集成开发环境: Eclipse https://www.jetbrains.com/idea/ jetbrains 大法好
    分布式监控平台: Jenkins

    2、框架原理
    主框架分为三层:InitialFramework、UIFramework、WebAndroidIOS
    第一层初始化框架目录结构、测试类目录结构、资源文件目录结构 ,封装基于WebDriver架包的通用方法,比如点击,检查元素等 多种浏览器扩展,http get post
    第二层封装特定项目类型的方法,Web、Android、IOS,接口的代码测试

    其他项目来引用这个项目,来实现具体的测试代码。基础框架和测试脚本(实际框架)分为多个项目,分布式开发,维护,方便多支队伍同时扩展

    项目级别框架
    以项目为单位,封装适用于该项目的业务逻辑方法,以便脚本重复调用 ,测试数据可以单独作为测试脚本的一分部来进行维护。合适的测试脚本必须配合合适的测试用例。

    3、测试类
    测试类是基于junit的测试框架,把测试脚本放在独立的包下面,测试用例放在测试脚本中,方便从用例的业务逻辑来开发脚本,方便本业务的测试用例的有效性,通过率。

    4、资源文件
    执行脚本是以DataDrive原理(即数据驱动),关键字原理进行,将测试的元素定位,保证关键步骤的可用性(毕竟不是所有的都可以自动化,也没那么多条件和资源),测试数据单独放再资源文件中,其中元素定位是所有方法最终操作的对象,接受指定形式的文件格式。

    5、搭建分布式测试平台
    通过junt功能,将测试类进行分类以便分布式中调用指定的测试类,很多团队使用的是Junit测试框架。分布式平台选择Jenkins。

    框架优点汇总:
    1、集Web、Android、IOS自动化测试于一体的框架,可以让不同的自动化团队同时维护一个框架(第一层和第二层),按各自的项目类型开发方法(第三层),做到了既可以使用同一套框架,又互补影响,从而节约了后期的维护成本。
    2、框架的移植能力强,这里的移植能力是指测试框架可以用到不同的项目中,只需要建立一个自己的项目级别框架,继承相应的第三层,便可以直接开发测试脚本,用关键字AppName来指定项目级别的框架和测试类的目录结构,当然也包括资源文件目录。
    3、支持分布式测试。
    4、支持脚本按任意要求进行分类维护。
    ***** 可以脚本维护简单才是最重要的
    缺点:
    开发周期长,投入成本高,适用于项目周期长、公司有多个项目。队伍资源不足,直接手工测试就可以了。
    自动化测试的长期运行,依赖于很多东西。资源,人力,高层态度。
    真正写自动化代码的,最好有2,5年开发最好。自动化测试不是目的,甚至测试也不目的,目的是提高软件项目的质量,效率,这就需要很高的综合素质。

  • 相关阅读:
    虚拟化技术KVM
    Rsync+Inotify实现文件自动同步
    第一次使用博客园
    kmp算法分析
    程序可移植性分析(一)数据类型
    strings用法小记
    size用法小记
    readelf用法小记
    nm用法小记
    ar用法小记
  • 原文地址:https://www.cnblogs.com/wcLT/p/7613949.html
Copyright © 2011-2022 走看看