Web端(微信小程序)H5+java+selenium自动化
前置步骤,创建工程(可以testng或普通工程),这里默认是创建的testng工程,前面文章中有讲如何配置好testng工程
当前很多微信小程序都是H5实现,这章主要是讲如何测试H5自动化。
直接上代码
首先:编写了一个公共在网页端打开H5页面的类
package Public;import java.net.MalformedURLException;
import java.net.URL;
import java.util.HashMap;
import java.util.Map;import org.openqa.selenium.By;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.support.PageFactory;
import org.openqa.selenium.support.ui.WebDriverWait;
import data.PubValue;import page.Login_PO;public class PublicFuction {public WebDriver my_dr;public WebDriverWait wait;PubValue pv = new PubValue();//可以注释掉, PubValue类中主要放了预制参数,chromDriver路径等等// H5自动化启动public void mobile(WebDriver my_dr, WebDriverWait wait, String URL) throws InterruptedException {System.setProperty("webdriver.chrome.driver", pv.chromeDriver);//--pv.chromeDriver 的启动路径,这里可以写死Map<String, String> mobileEmulation = new HashMap<String, String>();// 设置设备,例如:Google Nexus 7/Apple iPhone 6// mobileEmulation.put("deviceName", "Google Nexus 7");// mobileEmulation.put("deviceName", "iPhone 6 Plus");// //这里是要使用的模拟器名称,就是浏览器中模拟器中的顶部型号mobileEmulation.put("deviceName", "iPhone X");Map<String, Object> chromeOptions = new HashMap<String, Object>();chromeOptions.put("mobileEmulation", mobileEmulation);DesiredCapabilities capabilities = DesiredCapabilities.chrome();capabilities.setCapability(ChromeOptions.CAPABILITY, chromeOptions);try {System.out.println("开始启动driver~~~");my_dr = new ChromeDriver(capabilities);wait = new WebDriverWait(my_dr, 10);my_dr.get(URL);System.out.println("启动driver成功~~~");} catch (Exception e) {System.out.println("启动driver失败~~~");System.out.println(e.getMessage());}this.my_dr = my_dr;this.wait = wait;}}
编写用例,调用写好的公共类
package testCase.H5;import org.testng.annotations.Test;import Public.PublicFuction;
import Public.SqlFuction;
import data.PubValue;
import page.H5.AddArchivesSurvey_PO;
import util.ExcelUtil;import org.openqa.selenium.WebDriver;
import org.openqa.selenium.support.ui.WebDriverWait;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
/****/
public class AddArchiversSurvey {PubValue pv = new PubValue();PublicFuction pc = new PublicFuction();SqlFuction sf = new SqlFuction();AddArchivesSurvey_PO as = new AddArchivesSurvey_PO();//定位页面元素的类,当然初学者也可以注释掉,如果@Test(description="启动类") public void testAddArchiversSurvey() throws Exception {// 启动H5页面pc.mobile(pc.my_dr, pc.wait, pv.archivesSurveyURL);//pv.archivesSurveyURL 访问的H5的页面Thread.sleep(5000);WebDriver my_dr = pc.my_dr;WebDriverWait wait = pc.wait;//打开页面,后续就可以开展H5自动化,H5页面的自动化跟web端一样Thread.sleep(2000);my_dr.quit();}}
这个是一个简单的教你如果使用java+selenium就能构建到H5页面的自动化,具体操作步骤,跟普通的web前端一样
Web端(微信小程序)H5+java+selenium自动化相关推荐
- APP自动化_操作微信小程序/H5页面实现自动化_多终端并行
APP自动化_混合App自动化理论相关 原理:本质是混合app,应该用切入webview的方法去自动化web页面. 现状:目前由于技术原因无法切到webview中做自动化. 方案:采用原生app自动方 ...
- 接口测试抓包大法:抓web端的包+抓PC端微信小程序的包
接口测试现在作为一种主流的,简洁的测试方法,已经逐渐被渗透到功能测试和自动化测试的过程中去,成为测试的必备技能之一,现在就来总结一下工作中常用的抓包方法,供各位学习参考. chrome浏览器自带抓包工 ...
- 开发跨端微信小程序框架选型指南
多端框架uni-app和Taro选型对比 一. 背景 小程序原生开发有不少槽点: 1.原生wxml开发对Node.预编译器.webpack支持不好,影响开发效率和工程构建流程.所以大公司都会用框架开发 ...
- 微信小程序登录Java后台接口
微信小程序登录java后台接口 首先看一下微信小程序的开发文档: 微信小程序开发文档 步骤: 小程序端向微信接口服务发送请求--wx.login():获取到登录临时凭证code 小程序端拿着获取到的c ...
- 微信小程序及Java后台测试登录
微信小程序及Java后台测试登录 文章目录 微信小程序及Java后台测试登录 一.使用的工具以及开发环境 二.微信端登录代码. 第一种方式,使用wx.getUserInfo直接获取微信头像,昵称. 第 ...
- ETH:Windows搭建ETH(区块链技术)利用Web端和小程序端两种方式调用ETH上的SC智能合约
ETH:Windows搭建ETH(区块链技术)利用Web端和小程序端两种方式调用ETH上的SC智能合约 目录 1.Geth安装.配置文件.与ETH节点交互 1.1.下载并安装好geth客户端 1.2. ...
- 微信小程序与Java后台的通信
一.写在前面 最近接触了小程序的开发,后端选择Java,因为小程序的代码运行在腾讯的服务器上,而我们自己编写的Java代码运行在我们自己部署的服务器上,所以一开始不是很明白小程序如何与后台进行通信的, ...
- Java小程序post如何传参,微信小程序向Java后台传输参数的方法实现
微信小程序向Java后台传输参数的方法实现 首先,微信小程序我使用的是微信web开发者工具 想要向后台传输数据,需要在js中写 在微信小程序的官方文档中可以看到一个api叫wx.request它的作用 ...
- web前端-微信小程序开发学习
web前端-微信小程序开发学习 1. 小程序的概述 2. 小程序的项目结构 2.1 小程序项目结构分析 2.2 WXML模版 2.3 小程序的宿主环境 3. 组件 3.1 视图容器类组件 3.2 常用 ...
最新文章
- 如何使用Leangoo看板统计中的任务分布?
- javascript操作表单
- 西安python培训班多少钱-西安中公python培训班靠谱吗
- ajax xmlhttp.responsetext,Ajax:xmlhttp.responseText响应显示完整的内部HTML而不是关闭所需文本...
- MaCfee导致Asp.net无法发送邮件的解决办法
- virtualbox 使用
- Microsoft Jet SQL 参考在线手册
- Spring Boot 1.5.10 发布:修复重要安全漏洞!!!
- redux 思考以及源码解析
- 按需要生成你的网站导航栏
- 学习笔记(01):MySQL数据库运维与管理-02-设置系统变量
- php自动下载 linux,Linux下软件、PHP和Perl的模块等都实现了自动安装
- sql azure 语法_在Azure Data Studio中计划SQL笔记本
- bzoj3998 [TJOI2015]弦论
- 服务器dump文件位置,dump解析入门-用VS解析dump文件进行排障
- 组态S7-200Smart间PROFINT通信生成GSDML文件
- 理论 - 半波偶极子天线原理与计算
- 部分更新没有安装 KB4535102
- 运行HQL时,报错:Container killed by YARN for exceeding memory limits
- 自定义devexprsss分页控件
热门文章
- “LSTM之父”谈AI威胁论:AI将超越人类智力,对人类不感兴趣,呼吁暂停AI是一种误导
- 【Android 手势冲突】Colin带你彻底解决RecyclerView与ScrollView滑动冲突问题,并实现RecyclerView悬停导航栏(附demo哦)
- 数据结构实验-停车场模拟系统
- HTML5新特性总结(一)-新标签
- 吸顶灯怎么固定天花板_如何安装天花板电灯
- C++中的iterator-second
- python openpyxl包excel 绘制 线性图表
- Spring Boot + MyBatis :登录注册功能
- WatchKit App Submission Issues
- Comodo和DigicertSSL证书分别适合什么样的网站