Difference between revisions of "stoney core: REST API (Testing)"

From stoney cloud
Jump to: navigation, search
[unchecked revision][unchecked revision]
(Testing Naming Schema)
(Testing Naming Schema)
Line 18: Line 18:
  
 
To make sure, that the tests are executed in the proper order, the following naming schema applies:
 
To make sure, that the tests are executed in the proper order, the following naming schema applies:
* 0000_header_spec_js: Header (these tests will probably also be integrated into the tests based on the relationships)
+
* 0000 Header (these tests will probably also be integrated into the tests based on the relationships)
* 0100_authentication_abc_spec_js: Authentication (these tests will probably also be integrated into the tests based on the relationships)
+
** 0000_header_spec.js
* 0200_service_provider_person_spec.js: [[stoney_core:_REST_API#Service_Provider_Person_.28SPP.29 | Service Provider Person (SPP)]]
+
* 0100 Authentication (these tests will probably also be integrated into the tests based on the relationships)
* 0300_reseller_employee_spec_js: [[stoney_core:_REST_API#Reseller_Employee_.28RE.29 | Reseller Employee (RE)]]
+
** 0100_auth_spec.js
* 0400_reseller_person_spec_js: [[stoney_core:_REST_API#Reseller_Person_.28P.29_and_Customer_Person_.28P.29 | Reseller Person (PP)]]
+
* 0200 [[stoney_core:_REST_API#Service_Provider_Person_.28SPP.29 | Service Provider Person (SPP)]]
* 0500_customer_employee_spec_js: [[stoney_core:_REST_API#Customer_Employee_.28CE.29 | Customer Employee (CE)]]
+
** 0200_service_provider_person_resellers_collection_retrieval_spec.js
* 0600_customer_person_spec_js: [[stoney_core:_REST_API#Reseller_Person_.28P.29_and_Customer_Person_.28P.29 | Customer Person (CP)]]
+
** 0201_service_provider_person_resellers_element_retrieval_spec.js
 +
** 0202_service_provider_person_customers_collection_retrieval_spec.js
 +
** 0203_service_provider_person_customers_element_retrieval_spec.js
 +
** 0204_service_provider_person_people_collection_retrieval_spec.js
 +
** 0205_service_provider_person_people_element_retrieval_spec.js
 +
** 0207_service_provider_person_search_resellers_spec.js
 +
** 0208_service_provider_person_search_customers_spec.js
 +
** 0209_service_provider_person_search_people_spec.js
 +
 
 +
* 0300 [[stoney_core:_REST_API#Reseller_Employee_.28RE.29 | Reseller Employee (RE)]]
 +
* 0400 [[stoney_core:_REST_API#Reseller_Person_.28P.29_and_Customer_Person_.28P.29 | Reseller Person (PP)]]
 +
* 0500 [[stoney_core:_REST_API#Customer_Employee_.28CE.29 | Customer Employee (CE)]]
 +
* 0600 [[stoney_core:_REST_API#Reseller_Person_.28P.29_and_Customer_Person_.28P.29 | Customer Person (CP)]]
  
 
= What are we testing? =
 
= What are we testing? =

Revision as of 17:09, 4 August 2014

Overview

This page describes, how and what to test. The goal is to automate all tests with Frisby. Frisby is a REST API testing framework built on node.js and Jasmine.

stoney core resources

The following stoney core resources have automated Frisby tests:

Testing Naming Schema

The automated Frisby tests test all resources and sorted based on users and their relationships. As described in stoney core: REST API, the relationships are hierarchical:

Service Provider Person > Reseller Employee > Customer Employee > Reseller Person and Customer Person

The further down you go, the less rights a person has. Therefore the same tests can be run for all the users, just the expectations change.

To make sure, that the tests are executed in the proper order, the following naming schema applies:

  • 0000 Header (these tests will probably also be integrated into the tests based on the relationships)
    • 0000_header_spec.js
  • 0100 Authentication (these tests will probably also be integrated into the tests based on the relationships)
    • 0100_auth_spec.js
  • 0200 Service Provider Person (SPP)
    • 0200_service_provider_person_resellers_collection_retrieval_spec.js
    • 0201_service_provider_person_resellers_element_retrieval_spec.js
    • 0202_service_provider_person_customers_collection_retrieval_spec.js
    • 0203_service_provider_person_customers_element_retrieval_spec.js
    • 0204_service_provider_person_people_collection_retrieval_spec.js
    • 0205_service_provider_person_people_element_retrieval_spec.js
    • 0207_service_provider_person_search_resellers_spec.js
    • 0208_service_provider_person_search_customers_spec.js
    • 0209_service_provider_person_search_people_spec.js

What are we testing?