示例#1
0
class TestTokenApi(unittest.TestCase):
    @allure.step('Read Config for Data')
    def setUp(self):
        data = read_config_file()
        self.base_url = data['base_url']
        self.valid_credentials = data['valid_credentials']
        self.invalid_credentials = data['invalid_credentials']

    @allure.step('Token API With valid Credentials')
    @pytest.mark.run(order=1)
    def test_get_token_valid(self):
        self.api = ApiInterface(self.base_url)
        response = self.api.get_token(self.valid_credentials)
        assert response['status_code'] == 200
        assert response['response']['token'] is not None

    @allure.step('Token API with Invalid Credentials')
    @pytest.mark.run(order=2)
    def test_get_token_invalid(self):
        self.api = ApiInterface(self.base_url)
        response = self.api.get_token(self.invalid_credentials)
        print(response)
        self.assertEqual(response['status_code'], 401)
        self.assertEqual(response['response']['message'], 'Invalid User')

    @allure.step('Token API with NO Credentials')
    @pytest.mark.run(order=3)
    def test_get_token_no_header(self):
        self.api = ApiInterface(self.base_url)
        response = self.api.get_token()
        print(response)
        self.assertEqual(response['status_code'], 401)
        self.assertEqual(response['response']['message'], 'Invalid User')
示例#2
0
class TestAPIFlow(unittest.TestCase):
    @allure.step('Get User Token')
    def setUp(self):
        data = read_config_file()
        self.base_url = data['base_url']
        self.valid_credentials = data['valid_credentials']
        self.get_token()

    def get_token(self):
        self.api = ApiInterface(self.base_url)
        response = self.api.get_token(self.valid_credentials)
        self.token = response['response']['token']
        print('get_token: ', self.token)

    @allure.step('Fetch User Information')
    @pytest.mark.run(order=1)
    def test_get_user_information(self):
        self.user = self.valid_credentials[0]
        response = self.api.get_user(user=self.user, token=self.token)
        print('test_get_user_information: ', response)
        self.assertEqual(response['response']['message'],
                         'retrieval succesful')

    @allure.step('Get All Users')
    @pytest.mark.run(order=2)
    def test_get_all_users(self):
        response = self.api.get_all_users()
        print('test_get_all_users: ', response['response']['status'])
        self.assertEqual(response['response']['status'], 'SUCCESS')

    @allure.step('Update User Information')
    @pytest.mark.run(order=3)
    def test_update_user_information(self):
        self.user = self.valid_credentials[0]
        json_data = generate_fake_data()
        response = self.api.update_user(user=self.user,
                                        json=json.loads(json.dumps(json_data)),
                                        token=self.token)
        print('test_update_user_information: ', response)
        status_code = response['status_code']
        self.assertEqual(status_code, 201)

    @allure.step('Fetch Updated User Information')
    @pytest.mark.run(order=4)
    def test_get_updated_user_information(self):
        self.user = self.valid_credentials[0]
        response = self.api.get_user(user=self.user, token=self.token)
        print('test_get_updated_user_information: ', response)
        self.assertEqual(response['response']['message'],
                         'retrieval succesful')
示例#3
0
 def get_token(cls):
     TestGetUserInfo.api = ApiInterface(TestGetUserInfo.base_url)
     response = TestGetUserInfo.api.get_token(
         TestGetUserInfo.valid_credentials)
     assert response['status_code'] == 200
     assert response['response']['token'] is not None
     TestGetUserInfo.token = response['response']['token']
     print('get_token: ', TestGetUserInfo.token)
class TestAPIFlow(unittest.TestCase):
    @allure.step('Get User Token')
    def setUp(self):
        data = read_config_file()
        self.base_url = data['base_url']
        self.valid_credentials = data['valid_credentials']
        self.get_token()

    def get_token(self):
        self.api = ApiInterface(self.base_url)
        response = self.api.get_token(self.valid_credentials)
        self.token = response['response']['token']
        print('get_token: ', self.token)

    @allure.step('Update User Information - Faker Data')
    @pytest.mark.run(order=1)
    def test_update_user_information_faker(self):
        self.user = self.valid_credentials[0]
        json_data = generate_fake_data()
        response = self.api.update_user(user=self.user,
                                        json=json.loads(json.dumps(json_data)),
                                        token=self.token)
        print('test_update_user_information: ', response)
        status_code = response['status_code']
        self.assertEqual(status_code, 201)

    @allure.step('Update User Information - Not allowed Field')
    @pytest.mark.run(order=2)
    def test_update_user_information_not_allowed_field(self):
        self.user = self.valid_credentials[0]
        json_data = {"field": "value"}
        response = self.api.update_user(user=self.user,
                                        json=json.loads(json.dumps(json_data)),
                                        token=self.token)
        print('test_update_user_information: ', response)
        status_code = response['status_code']
        message = response['message']
        self.assertEqual(status_code, 403)
        self.assertEqual(message, 'Field update not allowed')
示例#5
0
class TestGetAllUsers(unittest.TestCase):

    @allure.step('Read Config for Data')
    def setUp(self):
        data = read_config_file()
        self.base_url = data['base_url']

    @allure.step('Get All Users Information')
    @pytest.mark.run(order=1)
    def test_get_all_users(self):
        self.api = ApiInterface(self.base_url)
        response = self.api.get_all_users()
        print('test_get_all_users: ', response)
        assert response['response']['status'] == 'SUCCESS'
 def get_token(self):
     self.api = ApiInterface(self.base_url)
     response = self.api.get_token(self.valid_credentials)
     self.token = response['response']['token']
     print('get_token: ', self.token)
示例#7
0
 def test_get_all_users(self):
     self.api = ApiInterface(self.base_url)
     response = self.api.get_all_users()
     print('test_get_all_users: ', response)
     assert response['response']['status'] == 'SUCCESS'
示例#8
0
 def test_get_token_no_header(self):
     self.api = ApiInterface(self.base_url)
     response = self.api.get_token()
     print(response)
     self.assertEqual(response['status_code'], 401)
     self.assertEqual(response['response']['message'], 'Invalid User')
示例#9
0
 def test_get_token_invalid(self):
     self.api = ApiInterface(self.base_url)
     response = self.api.get_token(self.invalid_credentials)
     print(response)
     self.assertEqual(response['status_code'], 401)
     self.assertEqual(response['response']['message'], 'Invalid User')
示例#10
0
 def test_get_token_valid(self):
     self.api = ApiInterface(self.base_url)
     response = self.api.get_token(self.valid_credentials)
     assert response['status_code'] == 200
     assert response['response']['token'] is not None