在TestNG中使用数据提供程序传递时获得java.lang.IllegalArgumentException
以下是我的数据提供程序方法的一部分:在TestNG中使用数据提供程序传递时获得java.lang.IllegalArgumentException,java,testng,testng-dataprovider,Java,Testng,Testng Dataprovider,以下是我的数据提供程序方法的一部分: @DataProvider (name = "dataProvider1") public static Object[][] dataProvider1() { return new Object[][] { // Total sale 0.00 { new Object[][]{{MSOECommissionCalculator.REPLACEMNET_ITEM, 0.00},
@DataProvider (name = "dataProvider1")
public static Object[][] dataProvider1()
{
return new Object[][] {
// Total sale 0.00
{ new Object[][]{{MSOECommissionCalculator.REPLACEMNET_ITEM, 0.00},
{MSOECommissionCalculator.REPLACEMNET_ITEM, 0.00},
{MSOECommissionCalculator.REPLACEMNET_ITEM, 0.00},
{MSOECommissionCalculator.REPLACEMNET_ITEM, 0.00},
{MSOECommissionCalculator.CONSULTING_ITEM, 0.00},
{MSOECommissionCalculator.MAINTENANCE_ITEM, 0.00},
{MSOECommissionCalculator.BASIC_ITEM, 0.00},
{MSOECommissionCalculator.MAINTENANCE_ITEM, 0.00}}, 0.00 },
当我使用此数据提供程序时,如:
@Test (dataProvider = "dataProvider1", dataProviderClass = MSOECommissionCalculatorTestDataProvider.class)
public void testForProbationary(Object[][] sales, float assertCommission)
{
}
这将生成以下错误:
FAILED: testForProbationary([[Ljava.lang.Object;@380fb434, 0.0)
java.lang.IllegalArgumentException: argument type mismatch
0.00是双精度的,不是浮动的。改用0或0.00F