django+appium实现UI自动化测试平台(开源部分,可定制开发)

         背景

  UI自动化,在进行的过程中,难免会遇到平台化,

  在实际的工作中,有的领导也会想要实现自动化测试的平台化。自动化平台化后,有了更为实际的成果,

       在做UI自动化,很想吧现在的自动化的框架进行平台化,完成更多的移植。

       

  设想

 

        其实平台化也是不难的,也是简单的,前提你也有思路,我在前面的接口平台的时候的构思就是吧所有的都集中到一个平台。但是在UI自动化测试的平台,我选择了另外的一个思路   平台端+客户端

  客户端保持执行测试用例,平台端进行测试用例的管理,两者相辅相成。缺一不可。

       平台作为测试服务端,客户端作为测试执行端,服务端的改变对客户端减少变动,客户端对服务端负责,服务端对客户端提供依赖。

  原理

  利用平台——客户端的构思,平台端侧重用管理,对数据的管理,对用例的管理,对任务的管理,对测试报告的管理,客户端负责:获取相应的项目或者任务详情,执行测试用例,手机测试结果,对测试结果进行反馈给平台端,

 

       客户端调用,平台端管理       

  客户端执行,平台端展示

       客户端收集,平台端汇总。

       客户端依赖,平台端支持。    

      客户端持续集成,平台端持续收集。

      客户端不限制,平台端能兼容。

 

 

       有了这样的构想,下面要做的就是对产品的需求的分析,对现有的设想进行细分,对现有的原则进行合理化解。

     去分析需求,去总结需求,去对现有的需求进行细分拆分。

  我们可以看到,这样的两段,我们可以用思维导图去细化分析我们的需求。

     

 

 

   整体的需求其实就是这么多,那么我们去来细化我们的需求,针对pc端和手机端分别进行需求的分析

  

    那么我们的客户端也教pc端需要什么样的东西呢

  

 

    这样我们的大概的思路有了,大概的功能需求分析点有了,

     我们就开始我们的技术选型,根据你的学习的进度还有你的想法去选择,我选择的是django,这里是因为好久不用了,巩固下django相关的知识,

 

     在选择使用的框架的时候,注意下面几个方面:

  1.自己对框架的掌握度

      2.实现难易程度,

      3.与项目相匹配度。

     4.成本的大小,

    5.经验的多少

    6.学习的难易程度,

    7.部署测试的成本,调试的代价等

 

    一般来说选择自己熟悉的来做最好,但是一般还要看项目适合什么样的,资料的多少,因为开发过程难免会遇到很多的问题,

 

    最后平台展示效果:

 

 

部分代码开源:https://github.com/liwanlei/UFATestPlan

体验地址:http://47.104.199.225:81/   登录账户:liwanlei 密码:111111

      写在最后,最原始的最美好,

     一切源于应用,一切回归应用,

     一切服务于应用,一切简单化,

     一切合理化。一切可操作。

     回归本质,最初的美好。 

                    ---雷子

       

       

  有问题可以联系我:QQ:952943386 email:leileili126@163.com  qq群:194704520  新群:683894834

 

 

 

 

转载于:https://www.cnblogs.com/leiziv5/p/9035324.html

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Dagger是网易杭州研究院QA团队开发的一个轻量级、运行稳定的WebUI自动化测试框架,主要基于Selenium及TestNg可以认为是对Selenium进行二次封装的一个框架(俗称 造轮子 )。之所以把这个轮子开源出来,主要在于经过了公司内部多个项目的实践,也取得了不错的成效,因此,希望开源以后可以对大家有所帮助及参考。 设计理念 Dagger首先是一个WebUI自动化框架,提供了赖以操纵浏览器的一些API。API数量不多,少于20个,但从实践上,已经基本涵盖95%的应用场景了(其余5%比较 个性 的自动化操作一般是封装在业务逻辑层面,有时候甚至会须要hack) Dagger其次是一个测试框架,使用TestNg管理和运行用例,TestNg相关断言内嵌于上述API中。因此,在我们的测试用例里面不应该看到单独的TestNg断言的 Dagger还是一种设计风格:简约。无论是Dagger框架本身还是基于Dagger编写的测试用例,都是十分light及straightforward的,以至于会让人感觉有点土。但实践中,这两者确保了低成本、易用性、可维护性 WebUI自动化从业界看,难推进,易烂尾,原因基本在于:维护成本高、运行速度慢、稳定性差 Dagger专注于WebUI自动化,从技术上克服了速度与稳定问题(见下文)。只封装够用的浏览器操作为API,并充分简化/强化这些API,以简约的风格去降低自动化的学习及使用成本。同时,在实践中,我们主要使用Dagger编写冒烟用例、其次是主干用例,少写逻辑复杂功能,不写边边角角功能,让用例也保持清爽(在整个自动化实施过程中,会定期进行用例Review),同样易于后期维护 主要特性 API极少,易于上手,详见这里. 提供比较完备的文档,便于快速入门,详见这里. 支持单机多浏览器并发执行,大大缩短用例执行时间,详见这里 通过修改TestNg源码实现失败用例自动重运行(详见这里)由此几乎消除WebUI自动化中常见的虚假失败 默认使用Chrome浏览器,原因详见这里 失败用例自动截屏 后续工作 加入Flex/Flash自动化支持 如何使用 Dagger十分适合中小型团队从零开始WebUI自动化,这样的话,只须要直接下载整个Dagger代码就行了,Dagger本身都已经配置好了,下载后看一下使用文档就可以直接开始写用例了 也可以把Dagger打成Jar包,导入已有的自动化框架中,详见这里 标签:Dagger  自动化测试

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值