Contents
1. Introduction
Bitnami TestLink Stack Single-Tier Bitnami Cloud Images extend stack appliances to run in a cloud computing environment. You can run Bitnami applications on a pay-as-you-go basis, programmatically starting and stopping them. Bitnami TestLink Stack is pre-configured and ready-to-use immediately on any of the platforms below. TestLink is a web-based test management system that facilitates software quality assurance.It is developed and maintained by Teamtest. The platform offers support for test cases, test suites, test plans, test projects and user management, as well as various reports and statistics. Bitnami TestLink Stack Installers Bitnami native installers automate the setup of a Bitnami application stack on Windows, Mac OS and Linux. Each installer includes all of the software necessary to run out of the box (the stack). The process is simple; just download, click next-next-next and you are done!
TestLink Open Source Test Management. TestLink Stable (1.9.17 - Alan Turing) Get it from sourceforge Get a Bitnami Virtual Appliance Support TestLink development. I was successfully able to link together Mantis and Test link on Ubuntu Linux. I hope what I learned will help others. It is not that difficult. Install Mantis and Testlink separately on the same machine. Install Testlink in the folder '/var/www', so that it can be invoked directly from the browser. Release 1.9 Beta3 is unstable - do not use it.
TestLink is a web based test management and test execution system.It enables quality assurance teams to create and manage their testcases as well as to organize them into test plans. These test plansallow team members to execute test cases and track test resultsdynamically.
TestLink is a GPL licensed open source project. All of the source codebehind TestLink is freely available for download via SourceForgeor GitHub. If you are interested in contributing to the TestLinkeffort feel free to contact us. There is no hidden fee - 100% free forusing!
In an ideal world, testing would be a pretty straightforward process.A test team takes the product requirements, writes a test specificationdocument, reviews the tests, and then runs them all for each version ofthe product. The team is composed of full-time staff, and everyone knowsexactly what is expected of them.
In practice, few organisations have that luxury. There is not time to runall the tests on every product version - especially on fix-releases thatneed to be rolled out quickly. Requirements are constantly changing, andthe tests have to be changed in step. Test staff come and go. There aremisunderstandings over who was supposed to run which tests, so some getmissed. Management suddenly wants a status update at seven in the evening.
In these situations you need the support of a test management tool, suchas TestLink. The purpose of TestLink is to answer questions such as:
- For which requirements do we still need to write or update test cases?
- Which tests do you want me to run for this version?
- How much progress have we made on testing this release?
- Which test cases are currently failing, and what are the errors?
- On which version was this group of test cases last run, and is it time we ran them again?
- And ultimately: is this version of the product fit for release?
TestLink helps you to keep the test process under control. It forms arepository for requirements and test cases, and relates these to builds,platforms and staff. You allocate tests to staff who carry them out andrecord the results. A wide variety of reports provide information on whathas been done and what still needs to be done.
2. Release notes / CRITICAL Configuration Notes
This release contains bugfixes and enhancement for 1.9.18See CHANGELOG file for detailed list of issues fixed.
Give a look also to:https://github.com/TestLinkOpenSourceTRMS/testlink-code/wikihttps://github.com/TestLinkOpenSourceTRMS/testlink-documentation/wiki
CRITICAL PHP.INI Settings
max_input_vars
Available since PHP 5.3.9. Default value: 1000
If you are going to have test plans with more than 100 test cases, it willbe CRITICAL to increase this value in order to avoid issues such as CRASHor MALFUNCTION when adding test cases to test plan.
See this forum post on max_input_vars or this mantis issue fordetails.
memory_limit
Default value: 128MB
If you are going to re-import an XML file to update its test case data, thesystem might run out of memory. The original issue was resolved witha
memory_limit
value of 256MB.Oauth configuration
Since 1.9.17 there is new authorization method - using OAuth providers.Authentication against multiple oauth providers is supported.Currently it configured to work with Google OAuth and Github, but you can addany OAuth server that support protocol 2.0 and 2-step authentication.
There are some restrictions in using OAuth:
- OAuth should not be specified as Default Authentication method
- If user does not exist in DB and you try to login through oauth - userIDwill be saved to db with special auth type. And for secure reasons you can'tlogon via regular email/password into Testlink.
- If user already exists in DB then you can logon via password or via OAuth
To configure OAuth you should set in config provided by OAuth provider
oauth_client_id - id of OAuth programoauth_client_secret - secret codeoauth_grant_type - authorization_code is default valueoauth_url - url of OAuth servertoken_url - url for getting tokenoauth_profile - url of OAuth profile page
oauth_grant_type, oauth_scope - specific parameters for several OAuth providers. They are not necessary
Changes on LDAP CONFIGURATION
Since 1.9.16 authentication against Multiple LDAP Servers is supported.To implement this feature configuration parameters have been changed, as explainedhere:
TestLink Version < 1.9.16
TestLink Version >= 1.9.16
3. System Requirements - server
Server environment should consist of:
- web-server: Apache 2.x
- PHP > 5.5 It will be better if you use PHP 7.2.x
- DBMS: MySQL 5.7.x / MariaDB 10.1.x, Postgres 9.x, MS-SQL 201x
Supported client web-browsers:
- Firefox
- Internet Explorer 9.x or greater
- Chrome
ATTENTION: we have not enough resources to test on all kind of browsers.Right now development is done using Chrome & Firefox.
4. Installation & SECURITY
The following details the basic steps for installation on any system.Instructions may seem unix-centric but should work on Windows systems.
Barring complications, it should take you about 10-20 minutesto install, configure, and start using TestLink.
Short summary:
- Transfer files
- Uncompress files
- Launch web based installer
- First, transfer the file to your web-server using whatever methodyou like best (ftp, scp, etc).
You will need to telnet/ssh into the server machine for the next steps.
- Next, untar/gunzip it to the directory that you want.
The usual command is (1 step):
OR (2 steps):
Total Commander, Winzip, and other programs should also be ableto handle decompression of the archive.
At this point you may want to rename the directory to somethingdifferent to 'testlink'.
SECURITY
You need to configure:
- log directory (
$tlCfg->log_path
) - upload directory (
$g_repositoryPath
)
According to your installation, default values provided. However, these areexamples THAT DO NOT WORK OUT OF THE BOX.
Take a look at bug 5147, bug 5148, bug 4977 andbug 4906.
You should also need to configure write access for logging, upload andtemplate directories.
** FCKEDITOR UPLOAD **
ATTENTION: We now use CKEDITOR (see forum post)
- Launch web based installerWe will create the necessary database tables and a basic configurationfile. From your web server, access http://yoursite/testlink/or similar URL and follow instructions.
Check Installation manual and TestLink forum if you meet a problem.
5. Upgrade and Migration
When accessing Installer page you will find only the new installationoption. The migration has to be done manually for these special cases:
- Upgrade from 1.9.3 to 1.9.4/5/6/7/8/9/10/11/12/13/14/15/16/17
- Upgrade from 1.9.4/5 to 1.9.7
- Upgrade from 1.9.7 to 1.9.8
- Migration from other releases than 1.9.3
General Steps
- Make a backup of your current database.
- Using a new directory (DO NOT OVERWRITE your old installation),do only following steps from Install procedure:- Transfer files- Uncompress files
- Copy your old
config_db.inc.php
andcustom_config.inc.php
over to thenew directory. - Launch TestLink
- TestLink will check the database version. If some upgrade/migration isneeded, it will launch automatically the installer.
If you are updating a same major version (for example 1.7.0 to 1.7.1) youneed to use Upgrade Database.
Please look at MANTIS 6594: Migration scripts don't cover testcase steps and expected results, also test case ID's are empty in GUI
If you are using a different major version detailed in options, you needto use the specific Migrations.
If in some steps TestLink asks you for two databases, never use thesame name for both.
If you find nothing useful, post in the forum.
Always before login, after an upgrade/migration, clear browser cookies.
Special Cases
- Upgrade from 1.9.3 to 1.9.4/5/6/7/../16/17/18/19
WARNING: if you are using a table prefix replace
prefix
with your prefixa. Execute
install/sql/alter_tables/1.9.4/<your_db>/DB.1.5/step1/db_schema_update.sql
b. Execute install/sql/alter_tables/1.9.4/<your_db>/DB.1.5/stepZ/z_final_step.sql
then look at sections: 'Upgrade from 1.9.4/5 to 1.9.7','Upgrade from 1.9.7 to 1.9.8'
Hint: When using MySQL Query Browser make sure you are not using singlecommand execution. (open script or use special script tab toexecute the whole script at once)
- Upgrade from 1.9.4/5 to 1.9.7
WARNING: if you are using a table prefix replace
prefix
with your prefixa. Execute
install/sql/alter_tables/1.9.6/<your_db>/DB.1.6/step1/db_schema_update.sql
b. Execute install/sql/alter_tables/1.9.6/<your_db>/DB.1.6/stepZ/z_final_step.sql
then look at sections: 'Upgrade from 1.9.4/5 to 1.9.7','Upgrade from 1.9.7 to 1.9.8','Upgrade from 1.9.8 to 1.9.9','Upgrade from 1.9.9 to 1.9.10','Upgrade from 1.9.10 to 1.9.11','Upgrade from 1.9.11 to 1.9.12','Upgrade from 1.9.12 to 1.9.13','Upgrade from 1.9.13 to 1.9.14','Upgrade from 1.9.14 to 1.9.15','Upgrade from 1.9.15 to 1.9.16','Upgrade from 1.9.16 to 1.9.17'Upgrade from 1.9.17 to 1.9.18'Upgrade from 1.9.18 to 1.9.19'Upgrade from 1.9.19 to 1.9.20'
- Upgrade from 1.9.7 to 1.9.8
WARNING: if you are using a table prefix replace
prefix
with your prefixa. Execute
install/sql/alter_tables/1.9.8/<your_db>/DB.1.9.8/step1/db_schema_update.sql
b. Execute install/sql/alter_tables/1.9.8/<your_db>/DB.1.9.8/stepZ/z_final_step.sql
- Upgrade from 1.9.8 to 1.9.9
WARNING: if you are using a table prefix replace
prefix
with your prefixa. Execute
install/sql/alter_tables/1.9.9/<your_db>/DB.1.9.9/step1/db_schema_update.sql
b. Execute install/sql/alter_tables/1.9.9/<your_db>/DB.1.9.9/stepZ/z_final_step.sql
- Upgrade from 1.9.9 to 1.9.10
WARNING: if you are using a table prefix replace
prefix
with your prefixa. Execute
install/sql/alter_tables/1.9.10/<your_db>/DB.1.9.10/step1/db_data_update.sql
- Upgrade from 1.9.10 to 1.9.11
WARNING: if you are using a table prefix replace
prefix
with your prefixa. Execute
install/sql/alter_tables/1.9.11/<your_db>/DB.1.9.11/step1/db_schema_update.sql
b. Execute install/sql/alter_tables/1.9.11/<your_db>/DB.1.9.11/stepZ/z_final_step.sql
- Upgrade from 1.9.11 to 1.9.12
WARNING: if you are using a table prefix replace
prefix
with your prefixa. Execute
install/sql/alter_tables/1.9.12/<your_db>/DB.1.9.12/step1/db_schema_update.sql
b. Execute install/sql/alter_tables/1.9.12/<your_db>/DB.1.9.12/stepZ/z_final_step.sql
- Upgrade from 1.9.12 to 1.9.13
WARNING: if you are using a table prefix replace
prefix
with your prefixa. Execute
install/sql/alter_tables/1.9.13/<your_db>/DB.1.9.13/step1/db_schema_update.sql
b. Execute install/sql/alter_tables/1.9.13/<your_db>/DB.1.9.13/stepZ/z_final_step.sql
- Upgrade from 1.9.13 to 1.9.14
WARNING: if you are using a table prefix replace
prefix
with your prefixa. Execute
install/sql/alter_tables/1.9.14/<your_db>/DB.1.9.14/step1/db_schema_update.sql
b. Execute install/sql/alter_tables/1.9.14/<your_db>/DB.1.9.14/stepZ/z_final_step.sql
- Upgrade from 1.9.14 to 1.9.15
WARNING: if you are using a table prefix replace
prefix
with your prefixa. Execute
install/sql/alter_tables/1.9.15/<your_db>/DB.1.9.15/step1/db_schema_update.sql
b. Execute (IF EXISTS) install/sql/alter_tables/1.9.15/<your_db>/DB.1.9.15/stepZ/z_final_step.sql
- Upgrade from 1.9.15 to 1.9.16
WARNING: if you are using a table prefix replace
prefix
with your prefixa. Execute
install/sql/alter_tables/1.9.16/<your_db>/DB.1.9.16/step1/db_schema_update.sql
b. Execute (IF EXISTS) install/sql/alter_tables/1.9.16/<your_db>/DB.1.9.16/stepZ/z_final_step.sql
- Upgrade from 1.9.16 to 1.9.17
WARNING: if you are using a table prefix replace
prefix
with your prefixa. Execute
install/sql/alter_tables/1.9.17/<your_db>/DB.1.9.17/step1/db_schema_update.sql
b. Execute (IF EXISTS) install/sql/alter_tables/1.9.17/<your_db>/DB.1.9.17/stepZ/z_final_step.sql
- Upgrade from 1.9.17 to 1.9.18
WARNING: if you are using a table prefix replace
prefix
with your prefixa. Execute
install/sql/alter_tables/1.9.18/<your_db>/DB.1.9.18/step1/db_schema_update.sql
b. Execute (IF EXISTS) install/sql/alter_tables/1.9.18/<your_db>/DB.1.9.18/stepZ/z_final_step.sql
- Upgrade from 1.9.18 to 1.9.19
WARNING: if you are using a table prefix replace
prefix
with your prefixa. Execute
install/sql/alter_tables/1.9.19/<your_db>/DB.1.9.19/step1/db_schema_update.sql
b. Execute (IF EXISTS) install/sql/alter_tables/1.9.19/<your_db>/DB.1.9.19/stepZ/z_final_step.sql
- Upgrade from 1.9.19 to 1.9.20
WARNING: if you are using a table prefix replace
prefix
with your prefixa. Execute
install/sql/alter_tables/1.9.20/<your_db>/DB.1.9.20/step1/db_schema_update.sql
b. Execute (IF EXISTS) install/sql/alter_tables/1.9.20/<your_db>/DB.1.9.20/stepZ/z_final_step.sql
Hint: When using MySQL Query Browser make sure you are not using singlecommand execution. (open script or use special script tab toexecute the whole script at once)
USE THE FORUM SECTION and the USER UPGRADE SECTION
- Migration from other releases before 1.9.3
You have always have to migrate one by one to each version that is newerthan yours. Extreme example: migration from 1.7.4
You have to read carefully README and instructions (if any) provided byinstaller. Sometimes version changes do not require actions on DB structureor data.
6. TestLink Team
This list comprises people who have helped:
Most Active on this release
- Francisco Mancardi - Project lead, builds, core developer, contributorscode reviewer (well, really the One Man Band ;) )
- Asiel Brumfield - Infrastructure
- Netzuleando Development OpenSource ([email protected])
Contributors and developers active on older releases
- Maradana Amardeep - Leader of testlink-qa group effort on 1.9.5
- Bruno de Paula Kinoshita - some work on API, CSRF, Turn Key Linux
- Julian Krien - Leader of testlink-qa group effort on 1.9.1,1.9.2,1.9.3
- Andreas Simon
- Erik Eloff
- Martin Havlat - Project lead, builds, infrastructure, developer
- Andreas Morsing - core developer
- Amit Khullar
TestLink - QA Team - for 1.9.4
- Romoy Headly - QA Manager
- Sujata Verma
- Damien Mathieu
- Amardeep Maradana
- Amit Khullar
- Andreas Simon
- Ngoc Vu
- Biache Benoit
TestLink - QA - for 1.9 RC1
- Andreia Balani
- Andreas Simon
- Biache Benoit
- James Bohnert
- Micky Zhang
- Rocky Yang
- Masami Ichikawa - Automated Testing
- Toshiyuki Kawanishi - Japanese localization, developer
- Chad Rosen - (Originator - version 1.0.x)
- Kevin Levy - Developer
- Asiel Brumfield - Infrastructure, developer
- Jason B. Archibald - Developer
- Tools R Us - contributing team
- Oscar Castroviejo - trackplus interface
- Seweryn Plywaczyk - text area custom field
- [email protected] and Alexandre Da Costa - French localization
- Walter Giaquinto/Alessandro Lia and [email protected] - Italian localization
- Alessandro Lia - Javascript and CSS advice.
- Leonardo Molinari - Portuguese (Brazil) localization
- Hélio Guilherme - Portuguese localization
- [email protected] - Spanish localization
- Jonas Fleer - search test case by custom field on test projects
- Lightbulb Technology Services Pvt. Ltd. - techpartners: import test cases from XLS [email protected] and [email protected]
- Kester Mielke [email protected] (execution tree colouring and counters by tc status)
- Peter Rooms - Bug coloring and labeling according status using same colors as Mantis.
- Eugenia Drosdezki
- Move/copy multiple testcases
- Access to content of docs folder on combo box
- Multiselect OR keywords filter
- Japanese Testing Engineer's Forum (TEF) in JapanWorking Group of TestLink Japanese Translation ProjectAtsushi Nagata, AZMA Daisuke, Hiromi Nishiyama,Kaname Mochizuki, Kaoru Nakamura, Kunio Murakami,Lumina Nishihara, Marino Suda, Masahide Katsumata,Masami Ichikawa, Masataka Yoneta, Sadahiko Hantani,Shinichi Sugiyama, Shinsuke Matsuki, Shizuka Ban,Takahiro Wada, Toshinori Sawaguchi, Toshiyuki Kawanishi,Yasuhiko Okada, Yoichi Kunihiro, Yoshihiro Yoshimura,Yukiko Kajino Yasuharu Nishi
Code reuse
We try to follow as much as possible the following principle:
Do not reinvent the wheel.
We use code and documentation from other Open Source Systems(see
CODE_REUSE
document for details).7. Bug Reports and Feedback
You may contact TestLink User Community Forum.
If you found this software useful for your company pleasepost in forum on section 'Companies using TestLink'.
To submit a bug or a feature, please use ONLY our Mantis installation.
You can follow us on twitter @TLOpenSource
8. Supporting our work
if you find TestLink useful, think about a donation to support our work.
Contact us at [email protected]
You can donate using PayPal or Flattr.
9. Regarding forum usage www.testlink.org
PLEASE: read these short hints before you write a topic:
- :!: Use search forum before you add a new question.
- :!: Did you search User or Installation manual before?
- :!: Don't use the forum as a Bug Tracker, use Mantis.Bug issues reported here will be DELETED
- :!: Consider that some issues are related to Apache, browser or databaseinstead of TestLink. Use Google first.
10. Changes
1.9.19
- DB Schema changes new unique indexes.
1.9.18
- DB Schema changes to allow fine grain management of different entities.
- more features on requirements/test case links
- more features on attachments & keywords
- more on data management... and more (read CHANGELOG file)
1.9.17
- oAuth Authentication with GitHub
- code repository integration (to manage external scripts)
- more features on requirements... and more (read CHANGELOG file)
1.9.16
- issues on step are saved on TestLink DB wth step ID
- redmine integration: reported will be testlink user creating issue.
- ADODB upgraded
- Ckeditor upgraded... and more (read CHANGELOG file)
1.9.15
- plugin system by Collabnet... and more (read CHANGELOG file)
1.9.14
- proxy config available for MANTISSOAP & JIRASOAP Integration
1.9.13
How To Download Testlink
- new tag to allow inline images in test case summary, preconditions, and steps
- new tag to allow inline images in test suite details
- new tag to allow inline images in requirement scope
- Test Step execution - Attachment management
- Automatically copy linked bugs from previous execution to the new one
- Export Test Spec - add option to export external ID WITH PREFIX
- Improvements on JIRA integration:
- user can set values on GUI for Components, Priorities, Versions, IssueTypes
- getting domain values from JIRA.... and more (read CHANGELOG file)
1.9.12
- Test case relations
- Improvements on Issue Tracker integration (edit notes when linking)
- Requirements Overview performance improvements
1.9.10
- Long-awaited feature: execution notes & results for test steps
1.9.9
- User can have two different (mutually exclusive) kinds of authentication
1.9.6
- Admin role can not be edit any more
1.9.7
- Reports do not use Custom fields any more:
CF_ESTIMATED_EXEC_TIME
CF_EXEC_TIME
Specific columns have been added to tcversions and executions tables.
- Smarty 3 is the default.
11. Testlink & FreeTest
There is a project in Brazil regarding the development of a method/processfor testing and delivery, focused on providing a method suitable for micro/mini companies.
If you are interested you can get some info:
12. Security
1.9.15
- Multiple XSS and Blind SQL Injection byNetsparker Web Application Security Scanner.They have also provided a free account.
1.9.12
- Research team of Portcullis Computer Security Ltdcedric (mantis.testlink.org user name)
1.9.10
- We want to thank xistence ([email protected]) for his tests.
13. JIRA DB interface changes
- TICKET 6028: Integration with Jira 6.1 broken.(Due to JIRA schema changes)Contribution by adnkoks
You need to change your xml configuration in TestLink to add a new MANDATORYproperty:
Without this property TestLink WILL CRASH => this is a desired behaviour
14. People/Companies supporting TestLink
- Bitnami: provided a VM on Cloud to do tests
- Team Cortado (Germany): paid for custom development of a long-awaitedfeature: execution notes & results for test steps, donating featureto community (it is not the first time they are doing this!)
- MAMP PRO
- Hitek School: Group of students helped to test TestLink
- Wellington Institute of Technology: Group of students working oncreating automation infrastructure to test TestLink
15. Use forum.testlink.org
Information has been collected with users' help
16. User cries: I WANT HELP !!!
Relax, as usual I've to say the resources are limited,that this effort is not supported by a company or a foundationbut is result of usage of free time.
Guidelines for getting help and/or solving a situation are what I use everyday:First try for yourself searching on:
- mantis.testlink.org
- forum.testlink.org
Please do not operate on lazy mode: just asking.First thing will be always asked will be:
- have you already did some searches ?
When you report a potential issue on a TestLink version,first thing that will be requested will be the 30minTest:
- get latest code from github, do fresh install, retest & provide feedback.
Do not send PRIVATE email to ask for things that have to be PUBLIC, this isa bad approach. Use PRIVATE CHANNELS only on Dev Team Request.
If you need more specialized help, it can be provided if you pay for it.
17. Use Mantis documentation
TICKET with available fixes for latest stable version (1.9.16)
18. Link to GITORIOUS COMMITS
Some time ago we migrated from Gitorious (thanks a lot for all the yearsof free repo) to Github. On tickets or documentation that belong to theGitorious era, you will find links to commits that are not accessible anymore as-is.
But accessing the same commits in Github (the commit IDs do not change) isjust a matter of understanding how to change the URL Part that is presentBEFORE the commit ID. => then Nike => Just DO IT