| « If I was Secretary of State for Education .... | Are you a learning solutions architect? » |
Testing is one of those tasks, like writing documentation, that most of us tend to avoid until abolutely necessary. A good test process, however, should help to ensure that you deliver exactly what the client ordered, and allow you to prioritise fixing problems in the your system.
Depending on the size of your project, and the number of interlinked systems, you may have a number of different stages of testing activity, such as:
- Unit testing - looking at each component part of one system
- Unit link testing - looking at whether the "units" fit into their host system OK
- Systems testing - looking at the whole of one system
- Integration testing - looking at how the different systems join up
- End-to-end testing - running the whole process through, from start to finish
Each stage will have Test Plans, that link back to a Test Specification which contains Test Cases, that are based on a Requirements Document which will have come from the client. The Test Plans are execute for each Release, and results collected along with appropriate evidence.
That does not just apply to software - it applies to any system or process that you have to make sure works in a consistently reproducable way.
As you can imagine, managing testing across multi-disciplinary teams, with multiple systems and a suite of Requirements Documents, can be pretty complex - particularly if you need to maintain an audit trail showing what has been done, when, why and by whom.
Spreadsheets are often the first port of call for collecting the information together. However, very quickly, you end up with multiple versions, used in different ways by different teams, and no easy way to track the data through them.
The obvious solution is a multi-user relational database that:
- contains all the test information about the testing on a particular project
- allows particular users permission to update particular fields through data entry forms
- provides reports on the whole test process
Testlink is such a product. So far, it's the only one I've seen, so I've nothing to compare it with other than the spreadsheet based system. However, my first reactions to it are very positive, with a few minor glitches.
Testlink works on the PHP/MySQL platform (and other databases), so, after downloading from Sourceforge, I installed it on my local test web server. Users of the Etomite content management system will recognise the install screens. They walk you through the process of setting up the link to the database and pick up any potential sources of problems in your PC configuration.
Once you're in as administrator you first have to create a Test Project. This is the container for all the testing activity for a particular project. Each Test Project is independent, and users can have different roles within different projects. You can also create new roles and give them specific permissions.
Then it's on to adding your Requirements (optional), which can be imported from a CSV file (as can many of the other data elements, eg. Test Cases).
Once the Requirements are in, you start building a Test Specification, with Test Cases, grouped into Test Suites.
Then you hand it over to your Testers to execute the Tests, record their results and add evidence.
At any stage you can run off a full range of reports, in HTML, OpenOffice and MS Word formats.
So, it's all looking good. What are the glitches?
As a system, Testlink is pretty intuitive, as long as you know something about Test processes. Without that you'll be reliant on the documentation. This is thorough and detailed, but reflects the multi-national nature of the Testlink development team. At some points the English used could be clearer. But that's a minor glitch - easily fixed by someone with the time to improve it.
The only other problem is actually implementing the software. The advantage of spreadsheets is that they can be distributed and collected through normal, email-based, channels.
To get people using any system like Testlink will mean getting approval for a server, setting up the server and any associated firewall ports, adding all the users, and setting up appropriate roles and permissions. All of those aspects need maintenance, particularly if your userbase is flexible and changes frequently.
If you can overcome the implementation problem, then a system like Testlink would be a valuable addition to any team that has a lot of testing to do.
8 comments
would like to know if Testlink also helps to execute automated tests like Quality center
@ jyoti : Test link doesn’t support test automation (http://en.wikipedia.org/wiki/Test_management_tools)
but there is a jenkins plugin to TestLink that alows to store results of unit-test in TestLink (https://wiki.jenkins-ci.org/display/JENKINS/TestLink+Plugin)
@Mark : nice work ! I would love to see a comparison of TestLink with other open source tools like Salome TMF (http://wiki.ow2.org/salome-tmf/) or Squash TM (http://www.squashtest.org) .
@Mark : nice work ! I would love to see a comparison of TestLink with other open source tools like Salome TMF (http://wiki.ow2.org/salome-tmf/) or Squash TM (http://www.squashtest.org) .
Hi,
I have just started to use test link and still learning about it but I think it is a painful tool to use so far with limitation for test matrix configuration.
1. testlink is complicated and not easy to use like some other tools. e.g. TestRail
2. Linking of test and test project management make it more complicated to use it in the test plan
3. Things are not simple ; e.g . User define test cases/suites, user create Test Plan and test plan has many runs with many configuration.
What a tester needs is a test case and many configuration, conditions, OS, Browser added to the test case and tool should generate all the test cases based on the matrix configuration, Testlink does not handle multi configuration; e.g test case: Login , execute/ run on Browser [IE9, Firefox], OS(Win7, Unix), so 2 x2 = 4 test cases, how about adding 64bit and 32bit, so 2 x 2 x 2=8 tests to execute.
and more complication is added here, using keywords, platforms
I think TestLink needs one person full time to just manage it
Testcube is a “newer” testmanagement tool. Does anyone have knowledge of both tools. And has a opinion about this?
Hi,
Can you plz tell me if testlink is a right tool if I need to manage more than 6000 test cases. Can I manage requirements for every iterations, can I create traceability matrix to map test cases to requirements?
This post has 1 feedback awaiting moderation...