• Web自动化测试平台开发---Automated_platform


    一、项目简介

     历时一个假期,Automated_platform 第一版完工,是一款基于po模式的自动化测试平台,采用后端技术为Django+celery+RabbitMQ+mysql 配置mysql数据库,进行数据迁移后,运行项目后,即可成功访问http://127.0.0.1:8000/app/login/

    后台管理系统:http://127.0.0.1:8000/admin/

    二、功能模块 

    1、登录/注册模块

    2、首页可视化

    3、工作台(前期工作)

    首先新建项目、配置其项目运行环境url,在项目下新建页面,在页面下定位该页面所需要的全部元素位置,包括id、class、name、xpath、class selector等等定位方式

    不难发现,这其实就是pom模式,POM设计思想将页面UI元素对象业务逻辑(定位元素 以及 操作定位后的元素)Case测试数据等分离开来,使得代码逻辑更加清晰,复用性,可维护性更高的一种方法,普遍运用于UI自动化测试当中。

    a、项目管理 

    b、页面管理/页面元素 

    c、引入关键字驱动技术

    核心思想就是把测试用例和测试步骤分离,把我们在web测试中会用到的基本方法(比如点击、输入文本、截图、放大窗口等等)在后端封装起来,前端新建时只需选择所需要的类包和方法,即可完成关键字驱动。

    4、核心功能(编写并运行测试用例、查看测试结果) 

    a、新建测试用例

    在新建测试用例的时候首先选择项目,然后添加步骤的时候首先选择关键字,然后选择页面和元素(比如选择了左键点击关键字,然后选择首页中的搜索按钮)就可以完成左键点击搜索按钮的操作,这样我们就实现了测试用例和测试步骤的分离。

      

    可以选择参数值、或参数自动化
    b、设置断言 

    这个就不多说了,就是预期结果和实际结果是否匹配,通常我们假设它成功,然后选择成功后会出现的某个元素,提前给这个元素做一个定位,然后在断言那里选择该页面中的那个元素即可.

    c、测试结果查看

    4、微服务 

    a、前置登录配置

    在一些场景中,需要在用户登录的状态下进行操作,接口测试中我们可以配置token,在web中我们可以自动化登录操作,这样在需要登录的场景下可以引入此前置登录,节省测试用例步骤,可以做到更好的维护,方便我们定位错误步骤。

    b、分布式任务(定时)

    三、需要改善的点

     1、引入开源第三方测试报告(美观!)

    2、配置邮箱,可以做到一键发送测试报告

    3、做下载文件接口,实现下载测试报告(pdf、word、html)

    4、个人中心

    5、角色权限分配、不同的角色进入系统,只可以看自己新建的用例和测试结果

    6、美化前端(我做的比较粗糙)

    ...................................................


    本次开发这个平台,收获了很多 ,都可以出一篇报错合集的文章!

    后续我会开源,感兴趣的同学可以和我一起去完善这个平台

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~都看到这了 点个赞再走hhh

  • 相关阅读:
    程序员的浪漫:七夕准备好表白了吗
    linux内核驱动开发
    API 网关 Apache APISIX 3.0 版本正式发布
    MySql
    机器学习1综述
    k8s master 是如何进行pod的调度的
    具有 Levy 变异和精英自适应竞争机制的蚁狮优化算法-附代码
    【类、抽象与继承】
    车载网络安全指南 概述(一)
    JAX XLA 还没开始
  • 原文地址:https://blog.csdn.net/wuyomhchang/article/details/136364272