From Fedora Project Wiki

No edit summary
(Add section Recent Development)
 
(27 intermediate revisions by 4 users not shown)
Line 1: Line 1:
= Nitrate =
= Nitrate =


Nitrate a new test case management system, it's written in Python and uses the Django web framework.  
Nitrate a new test case management system, it's written in [http://python.org/ Python] and uses the [http://www.djangoproject.com/ Django] web framework.  


Its features include:
The TCMS provides:
* Easy web UI for plan/case/run management and executing tasks.
 
* Managers with a source of information on planning, cases and execution status.
* Reproducibility across planning, cases and execution.
* Audit traceability.
* Increased productivity - Associates are able to identify and work on gaps in product coverage.  
* Fully functional XML-RPC interface.
* Fully functional XML-RPC interface.
* Multiple authentication backends.  
* Multiple authentication backends.
 
"If it is not in the TCMS then we do not do it", and the converse: "If we do it then it is in the TCMS".<br/>
That motto has been the paradigm driving the development of the TCMS. The development team has created a canonical source of information about testing that is useful to both managers and QE Associates.


= Source Code =
= Source Code =


We are using "git" to manage our source code. An excellent tutorial on the use of git can be found at [http://book.git-scm.com/ for Git-Scm]
We are using "git" to manage our source code. An excellent tutorial on the use of git can be found at [http://book.git-scm.com/ Git-Scm].
The source code can be viewed via a web UI at [http://git.fedorahosted.org/git/nitrate.git for git fedorahosted].
 
The source code is hosted in [https://github.com/Nitrate/Nitrate/ Github].
 
= Recent Development =


Anonymous access:
Refer to [https://github.com/Nitrate/Nitrate/milestone/1 Milestone 4.0].


[[git clone git://git.fedorahosted.org/nitrate.git]]
= Installation =


== Deploy with Apache ==


Commit access:
A workable example of installation in Red Hat Enterprise Linux 6 is supplied in the project's docmentation. Refer to [http://nitrate.readthedocs.org/en/latest/installing_in_rhel.html Installing nitrate on RHEL6 with Apache and MySQL]


[[git clone ssh://git.fedorahosted.org/git/nitrate.git]]
== Deploy with Nginx ==


With benchmark, we found Nginx + FCGI is faster than Apache + Mod_python, To use the Nginix to deploy the Nitrate will be a good idea for production environment.


= Installation =
The configuration sample located at: https://github.com/Nitrate/Nitrate/blob/develop/contrib/conf/nitrate-nginx.conf
 
The file is very initial and probably out-dated. Patches are welcome.
 
= Setup your development environment =
 
Refer to [http://nitrate.readthedocs.org/en/latest/set_dev_env.html Setting up a development environment on Fedora]
 
= Bug Reports =
 
Refer to [http://nitrate.readthedocs.org/en/latest/bug_reporting.html Report an Issue].
 
= Basic admin works  =
After your typed your super user user name and password in the browser, you will see the "Home page" of Nitrate, there are some configuration needed by you enter in the admin system.
 
== Issue Tracker Initialization ==
 
Nitrate supports two kind of issue tracker, Bugzilla and [https://www.atlassian.com/software/jira/ JIRA].
 
Access [http://localhost:8000/admin/testcases/testcasebugsystem/ http://localhost:8000/admin/testcases/testcasebugsystem/] on your server, and add a new bug tracker URL to Nitrate, it's required by executing test run feature.<br>
 
Click the 'Add test case bug system' link in the top of the table, type the name and description as your wish, then type the 'Url reg exp' like 'https://bugzilla.redhat.com/show_bug.cgi?id=%s', The '%s' will be replaced by bug ID.<br/>
 
Nitrate supported multiple bug tracker system backend, the only requirement is the bug tracker supports access the bug with bug ID.
 
== User Groups Initialization ==
 
Access http://localhost:8000/admin/auth/group/ on your server, you need to create the group need by tester at least, apply all of add/change permissions(The permissions starts with 'auth_' also be excluded) to the group.
 
Then when a new memember join the system, just apply the tester group he will get the minimal permissions to create/update test plan/case/run and execute the run.
 
You also can create a group named 'Administrator', apply the people management permission (The permissions name starts with 'auth_') to it, allocate some trusted people to the group for the user management work.


* [[Using the Koji build system]]
* [[/ServerHowTo| Run Your Own Koji Build Server]]
* [[/KojiLiveCDHowTo| Building Images in Koji]]
* [[/Policies| Defining hub policies]]
* [http://jianlee.ylinux.org/Computer/Server/koji.html  Chinese howto about Koji Build Server]


= Contact us =
= Contact us =


* Email: nitrate-devel@lists.fedorahosted.org
* Email: nitrate-devel@lists.fedorahosted.org
* Mailing list: https://fedorahosted.org/mailman/listinfo/nitrate-devel
* Mailing list: https://fedorahosted.org/mailman/listinfo/nitrate-devel
* IRC Channel: nitrate-devel @ irc.freenode.org
* IRC Channel: nitrate @ irc.freenode.org
* Ask questions: https://github.com/Nitrate/Nitrate/issues/new with label <code>question</code>

Latest revision as of 10:49, 20 February 2017

Nitrate

Nitrate a new test case management system, it's written in Python and uses the Django web framework.

The TCMS provides:

  • Managers with a source of information on planning, cases and execution status.
  • Reproducibility across planning, cases and execution.
  • Audit traceability.
  • Increased productivity - Associates are able to identify and work on gaps in product coverage.
  • Fully functional XML-RPC interface.
  • Multiple authentication backends.

"If it is not in the TCMS then we do not do it", and the converse: "If we do it then it is in the TCMS".
That motto has been the paradigm driving the development of the TCMS. The development team has created a canonical source of information about testing that is useful to both managers and QE Associates.

Source Code

We are using "git" to manage our source code. An excellent tutorial on the use of git can be found at Git-Scm.

The source code is hosted in Github.

Recent Development

Refer to Milestone 4.0.

Installation

Deploy with Apache

A workable example of installation in Red Hat Enterprise Linux 6 is supplied in the project's docmentation. Refer to Installing nitrate on RHEL6 with Apache and MySQL

Deploy with Nginx

With benchmark, we found Nginx + FCGI is faster than Apache + Mod_python, To use the Nginix to deploy the Nitrate will be a good idea for production environment.

The configuration sample located at: https://github.com/Nitrate/Nitrate/blob/develop/contrib/conf/nitrate-nginx.conf

The file is very initial and probably out-dated. Patches are welcome.

Setup your development environment

Refer to Setting up a development environment on Fedora

Bug Reports

Refer to Report an Issue.

Basic admin works

After your typed your super user user name and password in the browser, you will see the "Home page" of Nitrate, there are some configuration needed by you enter in the admin system.

Issue Tracker Initialization

Nitrate supports two kind of issue tracker, Bugzilla and JIRA.

Access http://localhost:8000/admin/testcases/testcasebugsystem/ on your server, and add a new bug tracker URL to Nitrate, it's required by executing test run feature.

Click the 'Add test case bug system' link in the top of the table, type the name and description as your wish, then type the 'Url reg exp' like 'https://bugzilla.redhat.com/show_bug.cgi?id=%s', The '%s' will be replaced by bug ID.

Nitrate supported multiple bug tracker system backend, the only requirement is the bug tracker supports access the bug with bug ID.

User Groups Initialization

Access http://localhost:8000/admin/auth/group/ on your server, you need to create the group need by tester at least, apply all of add/change permissions(The permissions starts with 'auth_' also be excluded) to the group.

Then when a new memember join the system, just apply the tester group he will get the minimal permissions to create/update test plan/case/run and execute the run.

You also can create a group named 'Administrator', apply the people management permission (The permissions name starts with 'auth_') to it, allocate some trusted people to the group for the user management work.


Contact us