当前位置: 首页 > news >正文

搭建UI自动化测试框架

今天给大家分享一个selenium+testng+maven+antUI自动化,可以用于功能测试,也可按复杂的业务流程编写测试用例,今天此篇文章不过多讲解如何实现CI/CD,只讲解自己能独立搭建UI框架,需要阅读者有一定的java语言基础,文档中的有些注解我就不详细介绍了,感兴趣的可以去java官网查看。

废话就不多说了,开始实例讲解。

开发工具:idea2017

开发平台:windows

举例模板:百度搜索

开发语言:java

可拓展mysql,shell,api 等

提供:代码demo—打包形式发出

新建java模块

有两种创建方式

1. 点击欢迎屏幕上的 Create New Project

2. 或选择 File| New | Project

看到打开的新建项目向导窗口

如果你要在现有项目中添加一个模块:打开要添加模块的项目,然后选择File | New | Module.

填写好相关的group和artifact后点击【Next】,最后Finish。

引入驱动,--与src 同级目录新建一个文件夹 lib;

引入pom.xml ,目的是托管所有依赖jia包;--与src同级目录

引入 build.xml,目的是与Jenkins关联实现CI;

引入log4j2.xml,目的打印日志;--在src目录下

新建公共模块包:目的存放公共类

新建元素模块包:目的存放测试元素;

新建步骤模块包:目的测试用例的执行步骤;

新建执行测试模块包:目的执行测试用例;

新建 conf模板包:目的放系统配置文件;

整个项目目录结构如下图所示:

下面是实例化讲解

1. 新建class—runDriver.class 用于启动浏览器驱动—公共方法

我是基于windows系统开发的,如果是mac 替换一下驱动就行

2. 新建BrowerDriver.class 对浏览器的公共方法

此类下面有 打开和关闭浏览器的公共方法;

3. 新建读写系统文件ReadPreperties.class类

4. 还有很多其他公共的类,在此就不一一讲解了,稍后会提供demo

比如:自动生成手机号,姓名,身份证号等

5. 以百度 为例 开始写 元素类

在com.ui.auto.element 下新建BaiDuElement.class

6. 在com.ui.auto.step下新建BaiDuStep.class

7. 在com.ui.auto.case 下新建BaiDuCase.class

需要引入testng jra包的三个注解

@BeforeTest

将会在一个元素定义的所有里面所有测试方法执行之前运行,在此 先运行 打开浏览器 操作

@Test

要被执行的测试方法

@AfterTest

将会在一个元素定义的所有里面所有的测试方法执行之后运行

通过上面几步 一个模块的ui测试流程基本讲解完成,这个框架的目的就是便于维护,里面也可以添加 api 及 数据源的操作,数据库的关联等,

如何和Jenkins关联呢?

需要在 与src 同目录下新建一个 testng.xml 内容如下:

新建 Jenkins-job 后代码上传到gitlab 上,执行 BaiDuTestng.xml就行(这是和ant 关联);

还有另外一种方法 maven,在pom 里配置相关的testng.xml,如下例子

如何通过ant 和Jenkins 实现 CI 及 maven 和Jenkins实现CI 的操作,下期在做讲解,希望通过此篇文章能给您带来 有用的知识,谢谢!

最后工程的整体目录结构,如下图:

最后:下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】

​​​软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

http://www.cnnetsun.cn/news/166799.html

相关文章:

  • 语义解析准确率提升关键路径,Open-AutoGLM最新迭代深度解读
  • 收藏!一文读懂RAG技术核心(附大模型从入门到实战全套学习礼包)
  • 重磅消息!ESXi 8.0 系列推出ESXi 8.0 Update 3h 更新重要版本啦
  • PFC5.0柔性/刚性纤维三点弯曲参数可自定义
  • 基于python文化旅游信息公开管理平台的设计与实现_5257y2x6
  • 【保姆级教程】Attention机制全解析!用PyTorch手写Transformer,大模型开发入门到精通!
  • 前端table表格,零基础入门到精通,收藏这篇就够了
  • 如何将Open-AutoGLM操作延迟降低85%?资深架构师亲授调优心法
  • 从入门到精通:掌握Open-AutoGLM推理优化的7个关键步骤
  • 【Open-AutoGLM macOS适配终极指南】:手把手教你完成全流程配置与优化
  • 【Open-AutoGLM语义解析突破】:准确率提升35%背后的核心技术揭秘
  • 为什么顶尖团队都在用Open-AutoGLM做高效特征提取?真相曝光
  • 【AI模型预处理新纪元】:Open-AutoGLM如何实现毫秒级特征输出
  • 9 个降AI率工具,专科生必备避坑指南
  • 基于数学模型的疫苗接种策略分析
  • 基于时空图神经网络的交通流量预测方法研究
  • 【Open-AutoGLM GPU加速适配全攻略】:手把手教你7步完成高性能推理优化
  • Open-AutoGLM特征提取提速5倍:背后你不知道的3大关键技术
  • [特殊字符]工业标准文档“消化不良“?LLM+知识图谱三步翻倍表格任务F1,钢铁直男秒变逻辑大师!
  • RAG技术揭秘:如何通过检索增强生成解决大模型知识过时与幻觉问题?
  • 【国产大模型端侧落地新突破】:Open-AutoGLM推理效率提升实战
  • Open-AutoGLM端侧部署性能调优,手把手教你榨干NPU算力
  • 网络安全5大子方向!哪个才是最优选择?
  • macOS m芯片配置python低版本失败解决方案
  • 为什么顶尖工程师都在用Open-AutoGLM做任务提醒?真相曝光
  • 【Open-AutoGLM高分通过率背后的真相】:顶尖学员不愿公开的6个刷题技巧
  • 白话大模型与知识库的基础原理(不费脑版)
  • leetcode 764. Largest Plus Sign 最大加号标志
  • 对于pdf、excel、word、ppt文档如何进行有限的最有效的标注
  • Open-AutoGLM考试进入倒计时:如何用1天时间高效突击拿证?