我有一张excel表格,上面有两栏,如下所示:
我使用@DataProvider(TestNG注释)从excel表读取一个数据,并将其传递给@Test方法。测试方法如下所示
@Test(dataProvider = "testautomation")
public void getData(String userName, String password)throws Exception
{
System.out.println(userName+ "\t ****");
System.out.println(password);
}
该系统工作正常,并从excel表格中得到了正确的数据。但是有没有办法我可以在pojo类中保留那两个参数,并在@Test方法中传递class对象呢?。顺便说一句,我可以不再公开像(username,@test method中的密码)这样的参数。
public class DatObject
{
private String userName;
private String password;
//and getter setter methods.
}
@Test(dataProvider = "testautomation")
public void getData(DataObject dataObj)throws Exception
{
System.out.println(dataObj.getUserName()+ "\t ****");
System.out.println(dataObj.getPasswrod());
}
我想在@test方法中调用这个pojo类对象作为参数,并使用pojo类中的getter和setter方法来获取值,而不是在@test方法中传递username和password。
有线索吗?
您的数据提供程序方法应该返回POJO:
@DataProvider(name = "pojoProvider")
public Object[][] createPojoData() {
return new Object[][] {
{ new DataObject("User1", "****") },
{ new DataObject("User2", "****") },
};
}
那么只需在测试注释中指定即可:
@Test(dataProvider = "pojoProvider")
public void getData(DataObject dataObj)throws Exception
{
System.out.println(dataObj.getUserName()+ "\t ****");
System.out.println(dataObj.getPasswrod());
}
问题内容: 我想将数据存储在ArrayList中并在另一个类中访问它,但是当我访问时,它是0。意味着我没有访问相同的arraylist。有人告诉我我做错了。 这是我的POJO课 这是我将数据存储在 A类中的方法 , 该类 已经过检查,已成功将其插入到arraylist中。 A级 问题出在 B类中, 当我访问它的返回值0时,意味着我没有访问相同的arraylist。 这是我在 B类中* 所做的 *
问题内容: 这星期我们在办公室进行了一场健康的辩论。我们正在创建一个Db来存储代理信息,在大多数情况下,除了应该如何存储IP之外,我们还制定了模式。一个阵营想要使用4个smallint,每个八位位组一个,另一个希望使用1个大int INET_ATON。 这些表将非常庞大,因此性能至关重要。我处于中间位置,因为我通常在世界中使用MS SQL和4个小整数。我对这种类型的IP存储量没有足够的经验。 我们
问题内容: 我有一个具有数据类型joda.money属性的类。如何将这个属性映射到mysql中。 我的课是: @Table(name =“ products”)公共类Product(){@Column(name =“ name”)字符串名称;@Column(name =“ money”)金钱金钱;} 我正在使用Spring Hibernate 谁能说出如何将此模型存储到mysql中? 问题答案:
问题内容: 如何在免费版本的MySQL中存储Unicode? 在SQL Server中似乎没有类型。MySQL不支持Unicode吗?我尝试使用,但是那也不起作用。 问题答案: 您需要为表选择一个 字符集。然后,文本和备注字段将自动存储在UTF-8中。MySQL 6中提供了对UTF-16的支持。
问题内容: 我知道float或double不适合存储货币和数量等十进制数字。我正在尝试使用NSDecimalNumber。这是我在Swift操场上的代码。 控制台输出为1.6599999999999995904 如何将十进制数1.66的确切值存储在变量中? 问题答案: 在 右侧是一个浮点数,不能精确表示值“ 1.66”。一种选择是从字符串创建十进制数字: 另一种选择是使用算术: 在Swift 3中
问题内容: 我想在[String:SomeClass]类型的Dictionary中存储一个更专业的类型。这是一些说明我的问题的示例代码(也可以在https://swiftlang.ng.bluemix.net/#/repl/579756cf9966ba6275fc794a上使用): 它产生错误。 我已经尝试过强制转换,但是会产生错误。 我也尝试将Dictionary定义为type,但这也没有任何改