Estou com o seguinte erro mas nao consigo localizar o motivo
org.testng.internal.reflect.MethodMatcherException: [public void CriacaoUsuario.CriarCliente.incluirUsuario(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String) throws java.io.IOException] has no parameters defined but was found to be using a data provider (either explicitly specified or inherited from class level annotation). Data provider mismatch Method: incluirUsuario([Parameter{index=0, type=java.lang.String, declaredAnnotations=[]}, Parameter{index=1, type=java.lang.String, declaredAnnotations=[]}, Parameter{index=2, type=java.lang.String, declaredAnnotations=[]}, Parameter{index=3, type=java.lang.String, declaredAnnotations=[]}, Parameter{index=4, type=java.lang.String, declaredAnnotations=[]}, Parameter{index=5, type=java.lang.String, declaredAnnotations=[]}, Parameter{index=6, type=java.lang.String, declaredAnnotations=[]}]) Arguments: [(java.lang.String) ]
Classe Data para ler arquivo csv
public class Data {
// funcao para ler arquivo JSON
public String lerJson(String caminhoJson) throws IOException {
return new String(Files.readAllBytes(Paths.get(caminhoJson)));
}
public List<String[]> lerCsv(String caminhoCsv) throws IOException {
Reader reader = Files.newBufferedReader(Paths.get(caminhoCsv)); // le um texto
CSVReader csvReader = new CSVReaderBuilder(reader).withSkipLines(1).build(); // Abre como um csv
List<String[]> users = csvReader.readAll(); // le todos os dados CSV
return users;
}
}
Classe para enviar requisição
public class CriarCliente {
String uri = "local/api/profile/user/create";
Data data;
@DataProvider //Provedor de dados para os testes
public Iterator<Object[]> provider() throws IOException {
List<Object[]> testCases = new ArrayList();
String[] testCase;
String linha;
BufferedReader bufferedReader = new BufferedReader (new FileReader("BD/users.csv"));
while ((linha = bufferedReader.readLine()) != null){
testCase = linha.split(",");
testCases.add(testCase);
}
return testCases.iterator();
}
@BeforeMethod
public void setup() {
data = new Data();
}
@Test(dataProvider = "provider")
public void incluirUsuario(
String email,
String gender,
String cpf,
String name,
String password,
String role,
String telephone) throws IOException {
String jsonBody = new JSONObject()
.put("email", email)
.put("gender", gender)
.put("cpf", cpf)
.put("name", name)
.put("password", password)
.put("role", role)
.put("telephone", telephone)
.toString();