2015-08-04 1 views
0

J'utilise Selenium 2 contre une application EXT JS 5.1. J'essaie de nettoyer une grille après avoir effectué un test en supprimant toutes les lignes présentes dans cette grille.Java JSON supprimer en passant le cookie

@Test(dependsOnMethods = {"checkForPrecautions"}) 
    public void cleanUp() throws InterruptedException, IOException{ 
     authCookie = driver.manage().getCookieNamed(".ASPXAUTH").getValue(); 

     URL deleteURL = null; 
     URL getUrl = new URL(precautionsAssignedAPI); 

     HttpURLConnection request = (HttpURLConnection) getUrl.openConnection(); 
      request.setRequestProperty("Cookie", authCookie); 
      request.setRequestProperty("Content-type", "application/json"); 
      request.setRequestMethod("GET"); 
      request.connect(); 

     JsonParser parser = new JsonParser(); 
     JsonElement precJson = parser.parse(request.getContent().toString()); 
     JsonArray requestArray = (JsonArray) precJson 
       .getAsJsonObject() 
       .getAsJsonArray("results"); 

     int numOfPrecautions = requestArray.size(); 

     JsonArray precaution = (JsonArray) requestArray; 
     for(int i = 0; i < numOfPrecautions ; i++){ 
      deleteURL = new URL(precautionsDeletedAPI + precaution.get(i)); 
      //JOptionPane.showMessageDialog(null, deleteURL); 
      HttpURLConnection delete = (HttpURLConnection) deleteURL.openConnection(); 
      delete.setRequestProperty("Cookie", authCookie); 
      delete.setRequestProperty("Content-type", "application/json"); 
      delete.setRequestMethod("DELETE"); 
      delete.connect(); 


     } 
} 

Je suis en train d'utiliser l'API directement, mais quand je lance ce test, je reçois un 401 sur la ligne

JsonElement precJson = parser.parse(request.getContent().toString()); 

Je dois admettre que je suis peu familiarisés avec ces tâches particulières de sorte qu'il peut être quelque chose de simple, je suis manquant.

Répondre

0

C'était quelque chose de simple et négligé. J'essayais d'envoyer le cookie de connexion de l'interface utilisateur au lieu d'utiliser l'API pour me connecter et envoyer ce cookie.