Skip to content

1. How to

Elan Thangamani edited this page Jul 26, 2020 · 2 revisions

I. Initial Set up your project for the Swagger Specification :

  • Why/How to store the mock data in the centralized place: It always provides a choice to choose your data base and configure(spring-jpa). Need to provide data base information in the Application.properties in the "src/main/resources" directory of your spring boot application: This would requires if you don't want to loose the existing mock data because as you redeploy the code the data would be lost.

  • In memory DB: (Eveny restart you lose the old data)

    • virtualan.datasource.driver-class-name=org.hsqldb.jdbcDriver
    • virtualan.datasource.jdbcurl=jdbc:hsqldb:mem:dataSource
    • virtualan.datasource.username=sa
    • virtualan.datasource.password=
  • Add the following entry for each Interface Spec/Yaml to be set up as mock service:

    • to setup "petstore.yaml" need to add following entry in the pom.xml. refer the pom.xml for reference
     <execution>
     	<id>pet-service-vs-api</id>
     	<goals>
     		<goal>generate</goal>
     	</goals>
     	<configuration>
     		<inputSpec>${project.basedir}/src/main/resources/META-INF/resources/yaml/PetStore/petstore.yaml</inputSpec>
     		<output>${project.basedir}/target/external/</output>
     		<apiPackage>org.openapitools.virtualan.api</apiPackage>
     		<modelPackage>org.openapitools.virtualan.to</modelPackage>
     		<generatorName>spring</generatorName>
     		<configOptions>
                                 <virtualService>true</virtualService>
                         </configOptions>
     	</configuration>
     </execution>

II. Navigate to root directory of the folder where pom.xml was present:

  • Build:

       - mvn clean install  
    
    • If you have any proxy issue use this command: mvn -Dhttps.protocols=TLSv1,TLSv1.1,TLSv1.2 clean install
  • Run using standalone JAR:

    • java -jar target/virtualan-pet.jar
  • To set up data:

    - Using Virtualan-UI:       
    	https://github.com/virtualansoftware/virtualan/wiki/Test-Data-Set-up-using-Virtualan
    
    - open API Contract: 
      https://github.com/virtualansoftware/virtualan/blob/master/modules/virtualan-plugin/src/main/resources/META-INF/resources/yaml/VirtualService/virtualservices.yaml	
    
    - Using Virtualan-Rest service: for automation usecases
      https://github.com/virtualansoftware/virtualan-openapi-demo/blob/master/src/test/resources/features/demo/demo.feature
    
  • Invoke Virtualan UI: