Feature: Users
Operations about user
Scenario: Get user by user name
When I perform
GET operation for user using endpoint "/user/{username}" by using User name
"Raju"
Then I should see
the response as successful with status code as 200 ok
Step Definition for GET operation
namespace APIAutomation.Features
{
[Binding] //It's
binding the feature file with step definition file
public class UsersSteps
{
public RestClient client;
public RestRequest request;
public
IRestResponse response;
[Given(@"I perform api operation on petstore server
""(.*)""")]
public void
GivenIPerformApiOperationOnPetstoreServer(string baseUrl)
{
//Create a
Request pointing to the Service Endpoint
client = new RestClient(baseUrl);
}
[When(@"I perform GET operation for user using endpoint
""(.*)"" by using User name
""(.*)""")] public void WhenIPerformGETOperationForUserUsingEndpointByUsingUserName(string endpoint, string username)
{
//Create the
GET request using given endpoint
request = new RestRequest(endpoint, Method.GET);
//passing url segment
request.AddParameter("username", username,
ParameterType.UrlSegment);
//execute the
request
response = client.Execute(request);
}
[Then(@"I
should see the response as successful with status code as (.*) ok")]
public void
ThenIShouldSeeTheResponseAsSuccessfulWithStatusCodeAsOk(int status)
{
//Converting
the status code from response to integer format
int statusCode = (int)response.StatusCode;
//Asserting the
status code from the response
Assert.AreEqual(status, statusCode,
"Statuscode is not a " + status);
}
}
}
Comments
Post a Comment