Cognizant CxA Viewer - 2.0 is an open-source project.
The Cognizant CxA Viewer 2.0 leverages existing functional automation (Selenium) scripts for client-side (page-level) performance evaluation and identify accessibility issues and also provide recommendations to improve end-user experience.
- Easy to leverage existing Selenium scripts
- Automated accessibility scan based on WCAG 2.2 guidelines
- Support testing with proxy and non-proxy based applciations
- Support single user client side performance evaluation and profiling
- Support performance evaluation with cache/no-cache
- Produce resultant json outputs with recommendations for accessibility and client side performance evaluation
- Easy to identify accessibility violation and provide recommendation to fix it
- Client side performance profiling report with optimization recommendations
- Integrates seamlessly with a Java based selenium framework (i.e. Gradle,TestNg)
- Easy to integrate with Kibana or other dashboards for reporting
Click here to download the latest version of Cognizant CxA Viewer 2.0. After extracting the zip, follow the steps from docs.
To get started with the Cognizant Customer Experience Assurance Viewer, follow the steps below:
- Clone the repository:
git clone https://github.com/CognizantOpenSource/Cognizant-Customer-Experience-Assurance-Viewer-2.0.git
- Both front-end and back-end will be in different folders
- The installation doc will be available on docs/Techinical details and User Guide.pdf
The below jar files can be specified in pom.xml file in the maven project:
- axe-selenium-3.0.jar
- browsermob-core-2.1.5.jar
- browsermob-legacy-2.1.5.jar
- browsermob-dist-2.1.5.jar
- browsermob-rest-2.1.5.jar
- json-simple-1.1.1.jar
- dec-0.1.2.jar
- json-20140107.jar
- jsoup-1.11.3.jar
- json-simple-1.1.1.jar
- selenium-java-3.141.59.jar or latest
- selenium-support-3.141.59.jar or latest
- guava-30.1-jre.jar
You can check the Help Documentation from here
- chromedriver.exe (should be same as chrome browser version)
- geckodriver.exe
- Open Eclipse
- Browse your workspace path and click 'OK'button
- Goto File-> Import-> Existing Maven Projects
- Click 'Next' button
- Browse for the existing project where CxA Viewer 2.0 project is exist.
- Click 'OK' button
- Click 'Finish' button
Item | Description |
---|---|
bin | Location of the class files |
src | Location of the source code files |
drivers | Location of the driver (.exe) files |
cx_config | Location of the dataFile.properties file |
This dataFile.properties
file located in the cx_config
folder is used to parameter the fields such as environment, project, build, browser, homepage url, report path, test type and iteration count for CxA Viewer 2.0 to trigger the test and generate the test report. We can change these parameters as needed.
Below is the format of dataFile.properties file:
ENV=<EnvironmentName>
PROJECT=<ProjectName>
browser=<BrowserName>
-
#browser=Chrome- -> to run in chrome
#browser=Firefox- -> to run in firefox
BUILD=build
URL=<HomePageURL>
#URL=www.google.com
ReportPath=cx_reports
testType="<test type>
"
#testType="pt" -> to trigger client-side performance test
#testType="at" -> to trigger accessibility validations
iterationCount=<Numberofperformanceiterations>
#iterationCount=2 -> to run 2 iterations (maximum it will support 3 iterations)
1.In the setup() method, find the direct urls provided for performance and accessibility validations (you can write the code for the click event as well)
2.Syntax of PerformanceExecution() Method:
Prototype:PerformanceExecution(browser,environment,URL,PageName,XPATH,SLA)
E.g.PerformanceExecution(browser,ENV,"http://google.com","Google Home","//*[@id=\"tab\"]/div/div/div[2]/div/div/div/form/div",4000L);
3.In the performance execution method, just change the following arguements as per the requirements:
URL
PageName
XPATH
SLA
4.Syntax of runA11y.exec() Method:
Prototype:runA11y.exec(ReportPath,PageName,driver);
E.g.runA11y.exec(ReportPath,"Google Home",driver);
Note:
Before invoking the above method, pass the required url in the driver.get() method. e.g. driver.get("www.google.com");
5.Change PageName
in the runA11y.exec() method
We welcome contributions from the community to enhance the capabilities of the Cognizant CxA Viewer 2.0. If you would like to contribute, please follow our guidelines outlined in the CONTRIBUTING.md file.
To provide clarity on what is expected of our members,Cognizant Customer Experience Assurance Viewer 2.0 has adopted the code of conduct defined by the Contributor Covenant. This document is used across many open source communities and we think it articulates our values well. For more, see the Code of Conduct.
Cognizant Customer Experience Assurance Viewer 2.0 is licensed under Apache License, Version 2.0. Feel free to use, modify, and distribute this software as per the terms of the license.
Thank you for your interest in our project! We hope you find the Cognizant CxA Viewer 2.0 valuable for your business needs.