Web自动化框架LazyUI使用手册(8)--excel数据驱动详解(ExcelDataProvider)
来源:互联网 发布:mac拔掉耳机没声音 编辑:程序博客网 时间:2024/05/22 08:08
概述
框架提供了excel数据驱动方式运行测试用例的工具,本文将针对数据驱动,进行详细演示。
详见类:lazy.test.ui.browser.ExcelDataProvider
被测对象:
http://bj.sqyishi.com/user/login.htm
测试场景:
输入用户名,点击登录,校验各种异常输入
输入后,红框里会出现一些异常提示,如图:
bean层代码:
使用插件生成
package test;import lazy.test.ui.annotations.*;import lazy.test.ui.beans.PageBean;import lazy.test.ui.controls.*;import lazy.test.ui.browser.BrowserEmulator;public class login extends PageBean { @Xpath(xpath={"//input[@id='username']", "//input[@name='username']", "//input[contains(@class,'text highlight1')]"}) @Frame(frame="") @Description(description="username") public Text username; @Xpath(xpath={"//button[@id='pwdLoginSubmit']", "/html/body/form/div/div[3]/div/div[8]/button"}) @Frame(frame="") @Description(description="pwdLoginSubmit") public Click pwdLoginSubmit; public login(BrowserEmulator be) { super(be); }}
page层代码
import lazy.test.ui.browser.BrowserEmulator;public class LoginRegisterBean {private BrowserEmulator be;Login loginBean = new Login(be);//打开登陆页public void openLoginURL(){ be.open("http://bj.sqyishi.com/user/login.htm");}//校验是否存在文字public void expectTextCheck(String expectText){ be.expectTextExistOrNot(true, expectText, 3500);}//手机号输入校验public void userNameCheck(String telephone, String expectText){ openLoginURL(); loginBean.username.input(userName); loginBean.pwdLoginSubmit.click(); expectTextCheck(expectText);}}
数据驱动文件
1. Excel放在Data文件夹下,即根目录的/data/下面
2. Excel命名方式:测试类名.xls,如图中①
3. Excel的sheet命名方式:测试方法名,如图中②
4. Excel第一行为Map键值,如图中第一行
5. 最后一样必须以“#”号结尾,表示终止,如图中③
6. 可以使用第一列控制其是否运行,如图中④,第六行,不运行
Test层代码
package com.ebl.UIAutomation.test.loginRegister;import java.io.IOException;import java.lang.reflect.Method;import java.util.Iterator;import java.util.Map;import org.testng.annotations.DataProvider;import org.testng.annotations.Test;import lazy.test.ui.browser.ExcelDataProvider;public class LoginRegisterParamTest extends loginBaseTest{ //使用驱动数据运行测试用例 @Test(dataProvider = "dp" ) public void UsernameCheck(Map<String,String> data) { if(data.get("isRun").equals("1")){//使用第一列控制其是否运行 loginPage.userNameCheck(data.get("telephone"), data.get("expectText")); } } //根据类名、方法名,加载驱动数据 @DataProvider(name = "dp") public Iterator<Object[]> dataFortestMethod(Method method) throws IOException { return new ExcelDataProvider(this.getClass().getName(),method.getName()); }}
运行
使用testng运行test:UsernameCheck
便会启动浏览器
打开登录页面
一行为一个case,按excel中顺序,向用户名框中填入telephone列的值,
点击登录,
校验页面上是否出现了expectText列的文字。
1 0
- Web自动化框架LazyUI使用手册(8)--excel数据驱动详解(ExcelDataProvider)
- Web自动化框架LazyUI使用手册(5)--模板工程:LazyUI-template详解
- Web自动化框架LazyUI使用手册(1)--框架简介
- Web自动化框架LazyUI使用手册(4)--控件抓取工具Elements Extractor详解(批量抓取)
- Web自动化框架LazyUI使用手册(6)--8种控件对应的class,及可对其进行的操作
- Web自动化框架LazyUI使用手册(7)--浏览器常用操作API
- Web自动化框架LazyUI使用手册(3)--单个xpath抓取插件详解(selenium元素抓取,有此插件,便再无所求!)
- Web自动化框架LazyUI使用手册(2)--先跑起来再说(第一个测试用例-百度搜索)
- APP自动化框架LazyAndroid使用手册(4)--测试模板工程详解
- APP自动化框架LazyAndroid使用手册(4)--测试模板工程详解
- Excel+Httpclient,数据驱动接口自动化测试
- Excel数据驱动框架实战
- 关键字+数据驱动自动化测试框架
- APP自动化框架LazyAndroid使用手册(2)--元素自动抓取
- APP自动化框架LazyAndroid使用手册(3)--核心API介绍
- excel数据驱动接口测试框架
- 自动化测试过程中如何使用excel数据驱动(下)
- 自动化测试过程中如何使用excel数据驱动(上)
- 文章标题
- gazebo环境变量问题设置问题
- 基于Mqtt的即时通信
- eclipse集成SVN插件
- OpenSSL 在Windows下的源码编译
- Web自动化框架LazyUI使用手册(8)--excel数据驱动详解(ExcelDataProvider)
- android layout布局的属性介绍
- 1.2线程的优点
- 基于tensorflow的简单BP神经网络的结构搭建
- 更新驱动后,Aero特效消失
- Android纯代码写布局
- MATLAB求解四面体球心
- boost::filesystem 库(文件系统)
- PHP 调用IE执行程序