Automation framework evaluation: Difference between revisions
No edit summary |
No edit summary |
||
(7 intermediate revisions by the same user not shown) | |||
Line 16: | Line 16: | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
! Framework(with link) ! | ! Framework(with link) | ||
Feature list | ! Feature list | ||
# Do tests describe intent clearly? | |||
# Is system information gathered? | |||
# Do results readable by man and computer? | |||
# Is run and develop process fast? | |||
# Does it able to be run on cluster in parallel? | |||
! More advantages | |||
! More disadvantages | |||
|- | |- | ||
| [https://github.com/autotest/autotest autotest] | | [https://github.com/autotest/autotest autotest] | ||
It is designed primarily to test the Linux kernel, though it is useful for many other | It is designed primarily to test the Linux kernel, though it is useful for many other | ||
functions such | functions such as qualifying new hardware. It used and developed by a number of | ||
organizations, including Google, IBM, Red Hat, | organizations, including Google, IBM, Red Hat, and many others. | ||
Developed on Python | Developed on Python | ||
[[File:autotest_sample_report.tar.bz2]] | |||
|| | || | ||
# Test have meta information but framework don't use it. | |||
# yes, several types of sys info collected, include profiling and crahes | |||
# yes, own text easy-to-parse text report, html report and possible tap. have own sql-based reporting base and limited UI for it. | |||
# yes | |||
# with some limited programming - yes | |||
|| | || | ||
* ready for work linux kernel, supports some logging services and crashdump | * ready for work linux kernel, supports some logging services and crashdump | ||
Line 48: | Line 56: | ||
| [http://staf.sourceforge.net/ STAF] | | [http://staf.sourceforge.net/ STAF] | ||
The Software Testing Automation Framework (STAF) is an open source, multi-platform, multi-language framework, lead by IBM | The Software Testing Automation Framework (STAF) is an open source, multi-platform, multi-language framework, lead by IBM | ||
Core developed on C. You can interact with STAF from many languages (Java, C, C++, Python,Perl, Tcl, Rexx) and from the command line/shell prompt. | Core developed on C. You can interact with STAF from many languages (Java, C, C++, Python,Perl, Tcl, Rexx) and from the command line/shell prompt. Strictly says, it is not a framework but set of services and libraries for making own test | ||
|| | || | ||
# No test management provided | |||
# few options about host are collected | |||
#- | |||
#- | |||
#with some limited programming - yes | |||
|| | || | ||
* multi-platform: works on Windows, Linux, AIX | * multi-platform: works on Windows, Linux, AIX | ||
Line 81: | Line 94: | ||
| [https://github.com/Xyratex/xperior Xperior] | | [https://github.com/Xyratex/xperior Xperior] | ||
Xperior is an open source framework developed on Perl by Xyratex for executing lustre tests from current shell-based testing framework. More [http://www.eofs.eu/fileadmin/lad2012/22_Rutman-Gearing_Xyratex-Intel_Lustre_Testing_LAD_2012.pdf info] was presented at LAD '12. | Xperior is an open source framework developed on Perl by Xyratex for executing lustre tests from current shell-based testing framework. More [http://www.eofs.eu/fileadmin/lad2012/22_Rutman-Gearing_Xyratex-Intel_Lustre_Testing_LAD_2012.pdf info] was presented at LAD '12. | ||
[[File:report_sample.zip]] | |||
|| | || | ||
# test could be described, about 10 fields now are used. | |||
# only node status before run and lustre-diagnostic after test failure. Also there is few extension for reformat lustre after every tests, coverage collection, console log collection via netconsole, more could be easily added | |||
# yes, yaml format of results and few convertors to junit, html and tap output documetns | |||
# yes | |||
# with external tool like jenkins - yes. | |||
|| | || | ||
* have separated lustre configuration | |||
* has some knowledge about current luste tests structure | * has some knowledge about current luste tests structure | ||
* compatible the most of acc-small lustre test set, allow to configure some test parameters (e.g. per-test execution timeout) | * compatible the most of acc-small lustre test set, allow to configure some test parameters (e.g. per-test execution timeout) | ||
* could be extended for new executors | * could be extended for new executors | ||
* test result is per-test yaml file and html report could be generated | * test result is per-test yaml file and html report could be generated | ||
* could collect some logs from systems under tests on per-test basis, and this could be simple extended | * could collect some logs from systems under tests on per-test basis, and this could be simple extended. Also there are script for uploading to mongo database. | ||
* has good internal unit test coverage | * has good internal unit test coverage | ||
* provides tagging to categorize and select test cases to be run. include/exclude lists | |||
* provides test-case and test-suite level setup, properties are inherited from suite to tests | |||
|| | |||
* doesn't maintain directly nodes, lustre mounts, cluster status | * doesn't maintain directly nodes, lustre mounts, cluster status | ||
* no security | * no security | ||
|- | |- | ||
|} | |} |
Latest revision as of 12:01, 24 January 2013
In order to automatically service and track test requests, as well as deploy testing resources, an upper-level test automation framework would sit "on top of" the Lustre test infrastructure.
Some requirements/desires for the automation framework:
- Aware of multiple clusters
- Able to create virtual clusters as VMs
- Able to automatically start testing based on various triggers, e.g. git commit hooks
- Maintains a prioritizable job queue
- Collect test output status in a database
- Visually represent pass/failure in a clear, concise manner
- Should facilitate easy interpretation of test "trends"; i.e. statistical-based test results
Framework(with link) | Feature list
|
More advantages | More disadvantages | |
---|---|---|---|---|
autotest
It is designed primarily to test the Linux kernel, though it is useful for many other functions such as qualifying new hardware. It used and developed by a number of organizations, including Google, IBM, Red Hat, and many others. Developed on Python File:Autotest sample report.tar.bz2 |
|
in server mode:
|
| |
STAF
The Software Testing Automation Framework (STAF) is an open source, multi-platform, multi-language framework, lead by IBM Core developed on C. You can interact with STAF from many languages (Java, C, C++, Python,Perl, Tcl, Rexx) and from the command line/shell prompt. Strictly says, it is not a framework but set of services and libraries for making own test |
|
|
| |
robotframework
Robot Framework is a python-based an open source generic test framework. |
|
|
||
Xperior
Xperior is an open source framework developed on Perl by Xyratex for executing lustre tests from current shell-based testing framework. More info was presented at LAD '12. |
|
|
|