在项目上使用自动化测试,是为了跑主流程的回归测试,提高测试效率,在每个测试版本中把主要的精力放在发版内容新增的需求中;

根据项目的功能模块,把业务主流程和使用频率高的功能抽取出来进行自动化测试,作为发版前的主流程回归测试辅助作用;

大致的流程是:

1、先做 po 设计,把最原始的脚本重构封装并参数化,初步设想,base 层,element 定位层,handle 层,business 层,最后是 testcase 层;

base 层,用于传入 browser(浏览器的选择,便于以后扩展兼容性测试)和 driver 的基本方法(findElement,url 的获取,frame 的切换,窗口放大);

element 定位层,用于各业务 page 中元素的获取封装、By 元素定位方式的封装、从配置文件根据 key-value 的形式读取元素定位方式和定位值的封装;

handle 操作层,用于根据页面模块 page 中的元素的操作封装;

business 业务层,用于业务逻辑操作;

testcase 层,用于组装 case,输入测试数据和断言判断;

2、建成 maven 工程,调用第三方的 jar 优化,实现日志收集,TestNG 的使用,测试报告的生成以及 jenkins 的配置;

下面每层贴部分的典型代码展示:

配置文件内容:

浏览器选择:

driver 基本方法重新封装:

读取配置文件内容,By 封装

element 定位层:

handle 操作层:

business 业务操作层:

testcase 层:

selenium java测试_java+selenium 自动化测试相关推荐

  1. selenium java 断言_Java+Selenium+Testng自动化测试学习(三)— 断言

    1.修改Login类加入断言: 断言:检查我们操作页面后得到的结果与我们预期的结果是否一致. 2.使用xml文件运行所有的测试类: Login类写入两个测试用例: packagecom.test;im ...

  2. selenium java 参数化_Java+selenium 自动化测试【03】-- 数据驱动之参数化

    目录 1.前言 2.读取txt文件实现参数化 3.使用Excel表格参数化 4.使用TestNG.xml文件参数化 5.使用@DataProvider传参 前言 在上一个随笔中,我们已经自动化测试模型 ...

  3. selenium java 滚动条_java+selenium使用JS、键盘滑动滚动条

    本篇文章介绍如何使用JS和键盘对象对页面进行滑动滚动条-------------主要针对java做自动化测试的同学 一:使用键盘对象操作滚动条 //导包 importorg.openqa.seleni ...

  4. selenium java截图_JAVA+selenium 截图操作

    执行自动化测试的时候,我们常常会碰到测试执行失败的时候.但是失败我们不能只看执行失败代码,如果有截图的话,就能很明显直观的看到是哪个地方执行失败. 这里介绍两种方法,一种是selenium工具自带的截 ...

  5. websocket java 测试_Java后端WebSocket的Tomcat实现

    1 package me.gacl.websocket; 2 3 import java.io.IOException; 4 import java.util.concurrent.CopyOnWri ...

  6. 自动化测试Selenium java学习

    一.Selenium Java学习网址 Selenium官网:Downloads | Selenium Selenium官方文档:/zh-cn/documentation/webdriver/gett ...

  7. 【Selenium Grid 分布式测试】Selenium Grid-简介

    前言 一直想学习自动化测试,但是都没行动,业余时间学习零零碎碎并记录20210423. 9.Selenium Grid 分布式测试 Selenium Grid 分布式测试-Selenium Grid简 ...

  8. 开源测试框架-UI自动化测试工具Selenium的安装与常用操作-Java语言

    为什么选择Selenium作为测试工具: 开源免费 容易与单元测试框架结合 代码可自主掌握,对于搭建框架,平台等有不可替代的优势 ​ Selenium也是一个用于Web应用程序测试的工具,支持多平台, ...

  9. 自动化测试框架selenium+java+TestNG——配置篇

    最近来总结下自动化测试 selenium的一些常用框架测试搭配,由简入繁,最简单的就是selenium+java+TestNG了,因为我用的是java,就只是总结下java了. TestNG在线安装: ...

最新文章

  1. 计算机基本知识培训稿,计算机基础知识培训稿.doc
  2. 三代测序(SMRT Sequencing)
  3. 【 C 】指针数组案例分析(const的作用)
  4. NeHe教程Qt实现——lesson10
  5. 液冷模块是什么?有什么作用与意义?
  6. gitlab使用方法
  7. mysql 复制表耗时_聊一下mysql的表复制
  8. POJ-1840 Eqs Hash表
  9. 用python绘制心形_如何利用Python绘制一个爱心
  10. 有关DataForm组件的研究_显示多重数据模型集合——Silverlight学习笔记[24]
  11. redis java客户端封装_redis的java客户端Jedis简单封装
  12. 【数字信号调制】基于matlab 16QAM信号调制解调【含Matlab源码 2050期】
  13. No known package when getting value for resource number 0xfe080009
  14. 推荐一款(网站图片储存)网站图片外链
  15. android.permission.camera,Android - revoked permission android.permission.CAMERA
  16. win10无法使用内置管理员账户打开应用怎么办
  17. linux - 安装Ubuntu20.04.5版本
  18. 【性能策略】限流策略
  19. 培训python合肥
  20. 【项目分享~写给应届生的一篇文章】基于Web企业招聘网站 ~~ 登录注册设计2

热门文章

  1. php 有 stringbuffer,String、StringBuffer、StringBulider三者介绍
  2. linux服务器防端口扫描,linux下防止syn***,端口扫描和死亡之ping
  3. 不同磁盘目录共享linux,linux下实现磁盘共享(mount)
  4. 高斯信道、单径Rayleigh信道和多径衰落信道下基带模型的多用户BPSK直接序列扩频系统MATLAB仿真(m序列、Gold序列和正交Gold序列)
  5. BPSK调制下(2,1,6)标准卷积码及打孔生成2/3、3/4、4/5、5/6删余码Viterbi译码误码率曲线图(MATLAB实现)
  6. Java部分A+B正整数A的“DA(为1位整数)部分”定义为由A中所有DA组成的新整数PA。例如:给定A = 3862767,DA = 6,则A的“6部分”PA是66,因为A中有2个6。现给定A、DA
  7. Java实现递归回溯,解决八皇后问题,数据结构与算法
  8. python 字段升序,python 根据两个字段排序, 一个升序, 一个降序
  9. # 管道已结束_县城这条路启用自来水新管道,看看是否在你家附近...
  10. es6中的类及es5类的实现