单元测试(3)--参数化测试方法
来源:互联网 发布:数据标签外在哪里设置 编辑:程序博客网 时间:2024/06/08 04:16
作用:
我们在测试登录框的时候,可能会输入帐号密码,根据不同的帐号密码,返回值也不一样。设计用例时,不同的仅仅是输入数据及预期的结果,而用例执行的中间过程是一样的。这时,我们可以通过参数化测试方法,来达到简化用例的目的,你可以创建一个通用的用例,然后通过数组的方式,给出输入的的变量值及对应的期望值。数组里面有几组参数,那么最终执行的用例数量也是相应的。
代码示例:
如何实现:
1.在测试类的开头加:@RunWith?(Parameterized.class)
2.声明了两个变量inputTime,expectTime,在用例中分别对应到输入的参数及预期的结果
3.一个public static Collection regExValues()方法用于定义参数数组(请严格遵照里面的语法)
4.定义了一个构造函数,用户输入我们在数组中定义的值,注意,构造函数中第一个变量,对应数组中每组参数的第一个变量;依次类推……
import static org.junit.Assert.*; import java.util.Arrays;import java.util.Collection; import org.junit.Test;import org.junit.runner.RunWith;import org.junit.runners.Parameterized;import org.junit.runners.Parameterized.Parameters; /** * ValidUtilTest 类描述: * * @author harryli */ @RunWith(Parameterized.class)public class ValidUtilTest { private String inputTime; private String expectTime; @Test public void testIsBuildTimeCorrectForDailyBuildJob() { ValidUtil util = new ValidUtil(); String newTime = util.isBuildTimeCorrectForDailyBuildJob(inputTime); assertEquals(expectTime, newTime); } @Parameters public static Collection regExValues() { return Arrays.asList(new Object[][] { {"01:00", "01:00"}, {"11:60", null }, {"24:00", null }, {"", null }, {"4:00", "04:00" }}); } public ValidUtilTest(String inputTime,String expectTime) { this.expectTime = expectTime; this.inputTime = inputTime; } }
- 单元测试(3)--参数化测试方法
- 单元测试-JMockit中使用参数化(多参数)测试
- 单元测试-黑盒测试方法
- 测试方法之单元测试
- JUnit自动化单元测试(五):参数化测试
- 单元测试-如何测试void方法
- 单元测试-白盒测试方法
- 单元测试--测试继承的方法
- JUnit参数化单元测试
- Mockito单元测试——方法参数
- 单元测试之白盒测试方法
- vs.net2005单元测试的私有方法测试
- 在单元测试中如何测试私有方法
- iOS单元测试中测试异步方法
- Java单元测试工具:JUnit4(四)——JUnit测试套件使用及参数化设置
- Java单元测试工具:JUnit4——JUnit测试套件使用及参数化设置
- java单元测试工具:JUnit4(三)——测试套件的使用和参数化设置
- Java单元测试工具:JUnit4(四)——JUnit测试套件使用及参数化设置
- 第17章 容器深入研究
- NSInvalidUnarchiveOperationException
- 构建自己的C/C++插件开发框架(一)——初步设想
- A Multiplication Game
- Mysql基本命令
- 单元测试(3)--参数化测试方法
- ARM命名规则
- UINavigationController 学习摘要
- pku 1979 Red and Black---dfs
- Android Xml
- ImportError: The _imagingft C module is not installed
- The server does not support version 3.0 of the J2EE Web module specification
- .Error: Couldn't clone var/downloads/ditu-common into /home/liu/workspace/ditutong/ditu-cms/parts/di
- 最长公共上升子序列(LCIS)的O(n^2)算法