Version Dependency

ExtentX versions 1.0.0+ are only compatible with ExtentReports 3.0.0+ of Java and .NET.

Installation

If MongoDB and ExtentX server will run on the same host, follow the directions below, otherwise see the subsequent section to setup ExtentX to detect MongoDB on another host.

MongoDB & NodeJS on same host

  1. Download and install NodeJS
  2. Download and install MongoDB
  3. Run Mongo daemon
    1. Open Console
    2. Navigate to MongoDB folder
    3. Run mongod
  4. Download ExtentX, unzip, navigate to its folder and run:
    1. npm install
    2. sails lift
  5. Open browser and navigate to the NodeJS server URL + port. Ex: localhost:1337

MongoDB & NodeJS on different host

  1. Download and install NodeJS
  2. Download and install MongoDB
  3. Run Mongo daemon
    1. Open Console
    2. Navigate to MongoDB folder
    3. Run mongod
  4. Download ExtentX, unzip, navigate to its folder and:
    1. open %extentx%/config/connections.js
    2. change "host" and "port" to where MongoDB is running
      
      extent: {
        adapter: 'sails-mongo',
        host: 'localhost', // change to host where MongoDB is running
        port: 27017, // change toport where MongoDB is running
        database: 'extent'
      }
      						
    3. npm install
    4. sails lift
  5. Open browser and navigate to the NodeJS server URL + port. Ex: localhost:1337

Install on Ubuntu

  1. Download and install MongoDB
    
    // Import the public key used by the package management system
    sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
    
    // Create a list file for MongoDB (Ubuntu 14.x)
    echo "deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list
    
    // Reload local package database
    sudo apt-get update
    
    // Install mongodb
    sudo apt-get install -y mongodb-org
    
    // Run
    sudo service mongod start    
                    
  2. Download and install NodeJS
    
    // install nodejs
    sudo apt-get install nodejs
    
    // install npm
    sudo apt-get install npm
    
    // update npm
    sudo npm install npm -g
                    
  3. Download ExtentX, unzip, navigate to folder
  4. Run commands:
    
    sudo npm install -g sails
    sudo npm install   
                    

Upgrading to a newer version of ExtentX

To upgrade to a newer version, download the latest version, unzip and depending upon your setup:

  • [MongoDB and NodeJS are on the same host] Follow directions step #4 onwards, here.
  • [MongoDB and NodeJS are on different hosts] Follow directions step #4 onwards, here.

Configure ExtentReports to use ExtentX


ExtentReports extent = new ExtentReports("...");

// if using multiple projects, set project name
// doing so will allow you to filter by project and view all its reports
extent.assignProject("projectName");

// start x
extent.x(mongo-db-host, port);
		

For more information on connecting to ExtentX from ExtentReports, see here for Java and here for .NET.

Admin Functions

ExtentX allows admin level access to perform operations not possible to the general viewer. These are:

  • Delete individual reports and associated elements (test, categories, nodes, logs etc)
     
  • Access to the admin view functions:
     

Default user/password is:


user:      root
password:  password
 

License

Extent - Reporting API and Server Copyright (C) 2016 Anshoo Arora, RelevantCodes.com All rights reserved

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESSOR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER ORCONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHERIN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.