kiwitcms / Kiwi

open source test management system with over 2 million downloads!
https://kiwitcms.org
GNU General Public License v2.0
986 stars 294 forks source link

Custom Fields / Key-Value Meta-Data #3206

Open touchedthecode opened 1 year ago

touchedthecode commented 1 year ago

Is your feature request related to a problem? Please describe. I have a lot of meta-data for my test cases which I currently manage by using tags. Since tags are simple strings, I do something like "#S-ID:123", "X-ID: 321", ...

Describe the solution you'd like I would like to be able to create custom fields for test cases (maybe even test plans and test runs) that show up in all of my test cases.

In my example above, when creating/editing a test case, my test cases would have input fields that are called "S-ID" and "X-ID". that I can fill out.

I was thinking about something simple like this:

kiwi-tcms-custom-fields

atodorov commented 1 year ago

I would like to be able to create custom fields for test cases (maybe even test plans and test runs) that show up in all of my test cases.

How is that different and better than using tags ? Without further explanation it looks exactly the same with a slightly different UI.

touchedthecode commented 1 year ago

I would like to be able to create custom fields for test cases (maybe even test plans and test runs) that show up in all of my test cases.

How is that different and better than using tags ? Without further explanation it looks exactly the same with a slightly different UI.

The UI Screenshot was just a quick example I created to demonstrate an easy way to implement this feature. You could also think about it like this:

image

The fundamental difference between using tags and custom fields for meta-data lies in three key areas:

Ease of use: Tags in Kiwi TCMS require manual input each time we create or edit a test case. For instance, with an "Issue-ID" tag, I need to remember the specific format each time ("#Issue-ID: ...") and manually input it. With a custom field, we would have a predefined field in which we could simply enter the value, thus reducing the risk of errors or inconsistencies.

Editability: Currently, tags cannot be edited in Kiwi TCMS. If there is a mistake in the input or an update is needed, the existing tag has to be deleted and a new one needs to be created from scratch. With custom fields, we could have the ability to edit the content directly, making the process more efficient.

Searchability and Filterability: When searching for test cases with specific meta-data using tags, one has to remember the exact format of the tag. This could lead to difficulty in retrieving relevant information. Custom fields, on the other hand, could serve as searchable and filterable fields where users can directly input what they're looking for, thereby simplifying the process.

image

Additionally, the use of custom fields could improve the process of sharing and maintaining test cases. It would provide a clear and structured format of meta-data that is important to the test case, which would be beneficial for anyone who writes or maintains test cases.

I hope this explanation provides more clarity on the benefits and differences of the proposed feature. I am convinced that this would be a beneficial enhancement to Kiwi TCMS, as most of the Test Case Management Tools I've used already provided this feature.

wazzeps commented 11 months ago

This is definitely an important improvement and it would be nice to be able to add more than just text fields.

Some TMSs have the ability to add fields of the following types:

I work with mobile application tests and I would like to be able to add a multi choice list to effectively manage the platforms for which a test case is relevant. Tags handle this but in the case of two+ different classifications I would not want to mix them in one place.

Or instead of the Automated checkbox I would like to have a single choice field with the following automation statuses: on automation, automated, will not be automated, requires autotest maintenance.

All this will allow the TMS to be more effectively integrated into existing testing processes.

I like Kiwi for its flexibility and this improvement will enhance this advantage.