[Fix] Updating hive_functions suite
1 file changed
tree: a4d77c60d2728ccbc5f6d02a208bd4a22bd4062f
  1. framework/
  2. .gitignore
  3. LICENSE.txt
  4. pom.xml
  5. README.md
README.md

Test Framework for Apache Drill

Test Framework for SQL on Hadoop technologies. Currently supports Apache Drill, a schema-free SQL query engine for Hadoop, NoSQL and cloud storage.

The framework is built for regression, integration & sanity testing. Includes test coverage (with baselines) for core Drill functionality, and supported features. A subset of these tests are used by the Apache Drill community for pre-commit and pre-release criteria.

Overview

  1. Clone the repository
  2. Configure test environment
  3. Review tests
  4. Build test framework
  5. Execute tests

Clone the repository

Refer to Github documentation on how to clone a repository.

Configure test environment

  1. The test framework requires a distributed file system such as HDFS or MapR-FS to be configured. Hive and HBase are additional dependencies to run all tests (refer to the example in the Execute Tests section to exclude tests with dependencies).
  2. The test framework expects Drill services to be setup on a clustered environment. Refer to Drill documentation for details on how to setup Drill.
  3. Copy the drillTestConfig file from framework/src/main/resources to your home directory as ~/.drillTestConfig. Edit suitably, following instructions in the file.
  4. Source .drillTestConfig. Confirm DRILL_HOME and other required environment variables are set.

Review tests:

Structure of Test Framework

Adding Tests

  1. In the framework/resources/[Functional/Advanced] directory, create a directory for a new test suite (or cd to an existing test suite).
  2. In the test suite directory, add testcases, expected results, and test definition file(s). Optionally include test suite sub directories to organize tests.
  3. Pairs of testcase (ex: query1.sql) and expected result files (ex: query1.e_tsv) are co-located and share the same name.
  4. You could generate expected result files using Postgres or any such database.
  5. In the framework/resources/Datasources directory, create corresponding datasource directories and copy over any required scripts and datasets required by the tests.

Structure of test definiton files

Build test framework

In the framework directory, execute mvn clean install first, to build the project and also download any dependent datasets configured in pom.xml

Execute tests

In the framework directory, execute the following command to run tests:

./run.sh -s <suites> -g <groups> -t <Timeout> -x <Exclude> -n <Concurrency>

Example:

Authors

Zhiyong
Chun
Krystal
Ramana
Abhishek
Vicky
Suresh
Khurram
Rahul
Steven
Jacques
Jason
Sudheesh