Как проверить, что в методе Get определенные данные совпадают или не совпадают в restsharp - PullRequest
1 голос
/ 27 июня 2019

Парень Я новичок в RestSharp для автоматизации на API.Как узнать, что конкретные данные существуют в методе Get.В моем API существует 3 объекта.Это нумерация страниц, данные и информация.Сейчас я хочу проверить, совпадает или нет значение имени в объекте «data».

Я использовал концепцию JsonDeserializer.Но я не могу переместить объект данных.

var client = new RestClient("https://ecovon.com/search?keyword=marketing&page=1");
var request = new RestRequest(Method.GET);

//Header values.
request.AddHeader("Content-Type", "application/json");

//Execute script
IRestResponse restResponse = client.Execute(request);
var deserialize = new JsonDeserializer();
var output = deserialize.Deserialize<Dictionary<string, string>>(restResponse);

var result = output["firstname"];
Assert.AreEqual(result, "Matt", "Name not matched.");

1 Ответ

0 голосов
/ 27 июня 2019

Простой ответ - нет.

Когда вы тестируете API-интерфейсы, у вас есть несколько вариантов.

  1. Вы можете добавить некоторые тестовые данные и затем работать с ними, однако становится сложно, когда несколько человек запускают автоматизированные тесты, а затем данные меняются, поэтому я не большой поклонник этого подхода.

  2. прежде чем что-либо тестировать, сначала вы создаете нужные данные и утверждаете против этого. Когда вы закончите, просто удалите созданные вами данные, чтобы они не загрязняли существующую тестируемую систему.

Представьте себе этот сценарий:

у вас есть пользователь, имя Фрэнк , а второе имя Джонсон . Вам также нужен уникальный адрес электронной почты, чтобы создать его.

вы хотите проверить метод, который возвращает полное имя Фрэнк Джонсон .

Вы можете использовать guid в качестве имени пользователя в формате guid@something.com, где вы сами указываете GUID. это будет уникальным, так что часть покрыта. Вы настраиваете остальные данные. Это делается с использованием конечной точки API.

Как только пользователь создан, вы начинаете вызывать конечную точку, которую вы действительно хотите проверить, используя что-то, что вы знаете, чтобы идентифицировать правильного пользователя, возможно, его электронную почту, идентификатор, что бы у вас не было.

Вы делаете утверждение, проверяете, что все правильно, и, наконец, вы используете другую конечную точку, чтобы удалить все эти данные, которые вы только что создали. Это может быть даже конечная точка, которую вы, например, не выставляете в производственной среде, или вы защищаете ее, чтобы никто другой ее не смог использовать.

Итак, ваш тест конечной точки теперь включает вызов 3 конечных точек:

  • создать тестовые данные
  • вызвать тестируемую конечную точку и выполнить утверждения
  • удалить данные теста

это немного больше работы, но оно того стоит и дает вам уверенность в том, что все работает как надо.

вы следуете этому методу для всего, что вы хотите проверить, поэтому в вашем случае создайте то, что вам нужно, в соответствии с вашим сценарием тестирования, вы будете знать, сколько данных вы должны получить и как они должны выглядеть, и все готово .

...