java+appium+testng+allure2 项目框架分享(github)

本文分享了一个基于Java、Appium、TestNG和Allure2的自动化测试项目框架,包括项目结构、基本用法、配置驱动、数据驱动、日志系统和报告输出等。项目采用PageObject思想,支持数据驱动和灵活的日志记录,使用Allure2生成测试报告,适用于Android和iOS自动化测试。
摘要由CSDN通过智能技术生成


在这里插入图片描述

写在前面

java

java 当前最主流的后端开发语言,目前做自动化主要是两大阵营 java 和 python,这里不讨论游戏自动化,相比而言,小厂的 python 稍微主流一些,大厂的 java 稍微主流一些,毕竟大厂几乎全部被 java 占领,而测试作为保障项目质量的一个关键角色,必须要打穿整个项目流程,因此贴近研发代码就显得尤为重要

testng

目前整个测试圈有两大阵营,一个是忠实的 testng 阵营,另一个是新潮流 junit5 阵营,不论哪个阵营未来都会成为测试圈的主流,我个人感觉纯粹的自动化测试或者测开应该是 testng 目前更占有又是,junit5 随着许多开发转为测试开发,会把 junit5 的技术带到测试圈进而丰富测试圈的技术栈

我个人认为 testng 比 junit5 更灵活,更加适合做自动化,但是 junit5 提供了更丰富的参数化运行,总的来说如果项目较为复杂我推荐使用更加灵活多变的 testng, 简单的项目就可以使用 junit5 来做

appium

写过 web 自动化脚本的人对于 appium 的上手会非常迅速,因为 appium 实际上是基于 selenium 的,脚本代码绝大部分都是一致的,只是对于 app 的 UI 测试来讲,配置稍微显得麻烦了一些,而且还要考虑到安卓和苹果两个系统,苹果对于安卓来说配置还要麻烦一些

我之前总结过一个继承关系图谱,WebDriver 是一个接口,MobileDriver 直接继承它,而 RemoteWebDriver 直接实现它

本文的项目地址

appuitest4j:https://github.com/abcnull/appuitest4j

另外我推荐我一个 web ui 测试项目的框架:https://github.com/abcnull/webuitest4j

项目结构介绍

我这里张贴一下我的项目结构图

在这里插入图片描述

整体框架都是放在 test 包下,采用了 pageobject 思想,我们将页面对象抽离出来,复杂的页面操作逻辑写在其中,pageobject 大致分为两个大的“阵营”,一个是 page 阵营,也就是单纯的页面对象,另一个就是 case 阵营存放测试用例脚本

  • page 阵营

    • basepage 包

      这个是所有页面对象的父类,主要做页面对象共有方法的封装,这样在页面对象中大家就不用编写一些重复的复杂的页面操作方法,直接使用父类的方法即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

abcnull

您的打赏是我创作的动力之一

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值