Как выполнить один запрос GET несколько раз с другим набором заголовков, а затем необходимо проверить ответ, используя автоматизацию java API - PullRequest
0 голосов
/ 13 июля 2020

Это мой код, в котором я использую заголовки. Мне не нужно было выполнять один и тот же запрос GET для входа в систему с несколькими наборами заголовков, а затем мне также нужно было проверить ответ.

// API Test for Login
@Test(priority = 1)
public void GetLoginAPI() throws ClientProtocolException, IOException, JSONException {
    HashMap<String, String> header = new HashMap<String, String>();
    header.put("auth-id", prop.getProperty("authid1"));
    header.putAll(header());
    httpResp=restClient.getResult(prop.getProperty("LoginURL"), header);
    
    //Status code Json String & Headers
    JSONObject respJson = TestUtil.staCodeJsonStringHeaders(httpResp);
    String idValue = TestUtil.getValueByJPath(respJson, "/user/id");
    String uidValue = TestUtil.getValueByJPath(respJson, "/user/uid");
    String locationValue = TestUtil.getValueByJPath(respJson, "/user/location");
    System.out.println("Value of type : "+idValue);
    System.out.println("Value of date : "+uidValue);
    System.out.println("Value of date : "+locationValue);
    Assert.assertEquals(Integer.parseInt(idValue), 319);
    Assert.assertEquals(Integer.parseInt(uidValue), 20190807);
    Assert.assertEquals(locationValue, "bangalore");
}

1 Ответ

0 голосов
/ 16 июля 2020

Я считаю, что вы используете Testng

вариант 1 - с использованием провайдера данных, например

@DataProvider(name = "data-provider")
    public Object[][] dataProviderMethod() {
        return new headers[][] { { "data1" }, { "data1" } };
    }
 
    @Test(dataProvider = "data-provider")
   public void GetLoginAPI(String header) throws ClientProtocolException, IOException, JSONException {
        // Now use multiple header for GET request
    } 

Вариант 2 - Используйте карту Ha sh для хранения заголовка и добавьте al oop и используйте его

HashMap<Integer, String> headervalues = new HashMap<Integer, String>();
headervalues.add("data 1)
headervalues.add("data 2) etc

, а затем используя l oop, вы можете использовать несколько заголовков.

Вариант 3. Использование Excel, используйте apacahe POI, а затем запишите функцию readExcel и передайте эти значения в свой сценарий. См. https://www.javatpoint.com/how-to-read-excel-file-in-java

...