一、java学习 idea 实时代码模板
- idea实时代码模板
- 创建模板组,模板
https://www.tapd.cn/tfl/pictures/201811/tapd_63882484_1542620504_9.gif - 通过关键字调用模
https://www.tapd.cn/tfl/pictures/201811/tapd_63882484_1542620512_25.gif - 实时代码及idea其他模板导出
- 实时代码及idea其他模板导出
一、参数化
-
dataProvider(配合使用csv做批量数据参数化)
1.通过@dataProvider (name="数据集合名称") 注解提供数据集合
//通过@DataProvider(name=""数据集名称) 注解方法提供数据
public static Object[][] resul() {
// 提供数据 一种读取CSV文件 返回 二维数组
//读取二维数组保存至data数组变量中
Object[][] resul = readCSV("src/main/resources/csvData/queryrealname.csv");
return resul; //相对路径从src开始
2.通过@Test (dataProvider="数据集合名称")
//通过 @Text(dataProvider="数据集名称关联配对")
public void query(String userName,String userNam,String password) {
driver.get("http://47.98.226.232:8080/guoya-medium/jsp/user/login.jsp");
driver.findElement(By.xpath("//input[@name='userName']")).sendKeys(userNam);
driver.findElement(By.xpath("//input[@name='password']")).sendKeys(password);
driver.findElement(By.xpath("//input[@id='checkCode']")).sendKeys("1234");
driver.findElement(By.xpath("//input[@id='loginBtn']")).click();
driver.findElement(By.name("realName")).sendKeys(userName);
driver.findElement(By.xpath("//input[@value='查询']")).click();
}
- @dataProvider参数化注解
https://www.tapd.cn/tfl/pictures/201811/tapd_63882484_1542620450_45.gif -
paremeters
1.数据与脚本做分离
2.通过@paremeter注解传参
@Parameters({"url","username","password","realname"})//通过@Parameters 添加参数
public void Parameter(String url, String username,String password,String realname){
//"http://47.98.226.232:8080/guoya-medium/jsp/user/login.jsp"
driver.get(url);
driver.findElement(By.xpath("//input[@name='userName']")).sendKeys(username);
driver.findElement(By.xpath("//input[@name='password']")).sendKeys(password);
driver.findElement(By.xpath("//input[@id='checkCode']")).sendKeys("1234");
driver.findElement(By.xpath("//input[@id='loginBtn']")).click();
driver.findElement(By.name("realName")).clear();
driver.findElement(By.name("realName")).sendKeys(realname);
driver.findElement(By.xpath("//input[@value='查询']")).click();
}
3.通过xml配置执行脚本
<suite name="yex"><!-- 测试套件,里面允许有多个测试集-->
<!--text 代表测试用例集-->
<test name="test0" enabled="true"><!--测试集-->
<parameter name="url" value="http://47.98.226.232:8080/guoya-medium/jsp/user/login.jsp"/>
<parameter name="username" value="zhouA031"/>
<parameter name="password" value="qweasd"/>
<parameter name="realname" value="周周"/>
<parameter name="userpath" value="//input[@id='userName']"/>
<parameter name="passpath" value="//input[@id='password']"/>
<parameter name="submitpath" value="//input[@id='loginBtn']"/>
<!--classes 代表类集合可执行多个类-->
<classes>
<!--class 代表单个类-->
<class name="com.guoyasoft.autoUI.guoya_1810.parameter">
<!--methods 代表方法集-->
<methods>
<!--include 代表方法名-->
<include name="parameter" />
</methods>
</class>
</classes>
</test>
</suite>
二、live template(活动模板)
关键字编程
提前写好代码封装
通过自定义关键字调用生成代码块
三方法
无参方法
带入参的方法
带返回的方法