Skip to content

kdyck/qaframework-core

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

badge-jdk License badge Twitter Follow

QARepo Core Framework (QCF)

QARepo core framework(QCF...pronounced cough) is Java-based framework that aims to simplify automated functional, UI and regression testing. QCF takes an opinionated approach to test automation and is designed to provide developers and testers the ability to easily tests web applications. QCF acts a wrapper on top of Selenium WebDriver and uses TestNG testing framework. QCF is OS neutral and runs on Mac, Windows, and Linux. It manages local WebDriver binaries via WebDriverManager and remote WebDrivers via SeleniumHQ's docker images. QARepo core is containerize using Docker and will run on any operating system or browser.

The framework is developer-centric and features the ability to run tests in the cloud, via Docker containers or locally. QCF has various tools and utilities for managing common test actions (e.g. window handling, alerts, Data Provider, file readers etc.). QCF currently manages reporting using Lo4j2 but we are currently working on rich HTML reports. QCF is work in progress but its a labor-of-love. Drop us a line if you have questions or suggestions. Happy testing!


Basic Usage

Managing WebDrivers, parallel test execution and threading can be difficult. QCF features a DriverFactory, threadsafe WebDriver instances and parallel test execution. The quickest way to get started with QARepo QCF is with the maven dependency. Right now the project is available as SNAPSHOT only. A stable build will be available in the coming weeks.

If you're just curious about how to run tests, the project includes a few sample tests, see the running testng suite section for details. Review the [Running TestNG Suite](#Running TestNG Suite) for details.

Maven Dependency

  <dependency>
     <groupId>com.qarepo</groupId>
    <artifactId>core-framework</artifactId>
     <version>1.0.0-SNAPSHOT</version>
  </dependency>

Running TestNG Suite

Below are details on how to run this test suite and the sample tests. You can run the tests using Docker, shaded executable Jar or locally from an IDE or command line.

  • TestNG config files are located in directory /src/main/resources/test-configs/
    • Docker conf: docker-testng.xml
    • TestNG conf: testng.xml

Using Docker Image

  1. Build docker-compose and start services: (Dockerized TestNG suite service use stand-alone chrome from Selenium)
    $ docker-compose up --build
    
    This will start the test service and selenium stand-alone chrome browser. The test suite will begin running immediately so make sure you only 'include' the groups you want to run to optimize feedback.

Using Shaded Executable jar

  1. Clone directory:
    $ git clone https://github.com/kdyck/qaframework-core.git
    
  2. Clean project and build and package shaded executable jar:
    $ mvn clean package
    
  3. Run *-SHADED.jar with String testng.xml file:
    $ java -jar ./target/core-framework-1.0.0-SHADED.jar "./src/main/resources/test-configs/testng.xml"
    

Using testng.xml and maven

  1. Clone directory:
    $ git clone https://github.com/kdyck/qaframework-core.git
    
  2. Navigate to ./src/resources/test-config directory
  3. Open testng.xml conf file for url under test
  4. Run the testng.xml conf-file

Issues or Need help?

About

QARepo core framework (QCF) is an open source Java-based framework for web application testing

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •