Hello everyone, in this article I will outline the progress that the Kiwi TCMS
team has made towards achieving the goals on our
2019 mission and roadmap.
TL,DR: Kiwi TCMS has made progress since January, it's been tough and may not have been
very visible. I feel like we've been behind schedule till now! The greatest
positive thing has been community and team development!
Complete the internal refactoring
Status: minimal progress, needs help
CodeClimate progress is:
- -30 code smells
- -40 duplications
- -30 other issues
- 4% technical debt improvement
- -200 hrs remaining until issues are fixed
This is mostly the result of code reviews and minor fixes, not targeted work.
We have not done any targeted work to resolve other issues reported by Scrutinizer,
Pylint, remove vendored-in JavaScript libraries, JavaScript refactoring or
classification of issues in 3rd party dependencies.
There are new people onboarding in the team right now and our plan is for
them to start grinding at these issues very soon!
Redesign the UI templates with the help of Patternfly
Status: 50% done, needs help
There are 27 HTML templates remaining to be redesigned (from 59). That's mostly
due to internal cleanup than targeted refactoring. More work on this item
will probably follow towards the end of the year after we get more priority items out of
the way and get more of the new team members rolling!
Modernize reporting aka Telemetry
Status: in progress, a bit behind schedule
The specs for the new Telemetry system
have been defined after taking into account feedback on GitHub issues. Anton Sankov is
the leading developer for this feature. So far we have 2 telemetry reports merged:
testing break-down and status matrix. The next one will be execution trends.
There are lots of minor issues or missing functionality in these first iterations
(compared to specification). Our plan is to have the major use-cases satisfied first
and then work to refine all of the existing telemetry pages.
Plugins for 3rd party test automation frameworks
Status: good, needs help
Until now we have released TAP, junit.xml and native JUnit 5 plugins. There's also
a PHPUnit plugin which is more or less complete but unreleased yet. Both JUnit 5
and PHPUnit plugins are developed by external contributors!
We often get asked for plugins for languages and frameworks we don't use or don't
even know! Given that our expertise is mostly in Python we will gladly accept your
pull requests if you decide to maintain or contribute to one of the plugins. This
will also help us get insight into what automation frameworks people are using
and how exactly you structure a test automation workflow around Kiwi TCMS.
Checkout the
documentation for links
and more info.
Redefine bug-tracker integration
Status: no progress
Last week, right after OpenExpo, we did a check-up session and this was one of the
areas identified with zero amount of progress. I have a strong preference to work
on this feature myself but have not been able to due to various other items that
need my attention.
The short version is that I'd prefer to remove all issue tracker specific code
and allow the tester to add arbitrary URLs to link to existing bugs. How to do
integration (even as simple as publishing a comment in the bug tracker) over
a generic interface still eludes me. In the next few weeks I will kick-off this
topic with a separate blog post/issue for everyone to comment on.
GitHub flow integration
Status: no progress
Our team spent some time making Kiwi TCMS the first open source TCMS available
on the GitHub Marketplace. We will
continue this integration effort and flow integration will emerge from that.
There's also many things that need to be done to satisfy GitHub's .
Agile integration with Trello
Status: no progress
Improve engineering productivity
Status: no progress
Our mission is to transform testing in your organization by providing
the tools for that via Kiwi TCMS. It is astonishing that so far nobody has provided
any kind of feedback in Issue #703
wrt improving productivity in their teams!
We have some ideas which have been blocked by lack of resources on the team and
refactoring tasks. Because we've adopted this as our mission this is an important
item for us and we'll continue working on it as resources allow.
Progress is to be expected towards the end of the year.
Community
Status: great, on track, needs work
This is our strongest area during the year so far. We have a strong presence in
several communities, our event schedule is busy enough and we are gaining more
recognition every day!
- Hosted project stand at 3/5 conferences with 2 more on-track
- Won the OpenAward for Best Tech Community
- Hosted several presentations and workshops with few more on track
- Found new talent to join the core team: 2 just ready to start contributing, 5 more in training
- 1 more senior engineer as a mentor. We also have a few independent wanna-be contributors
and will be hosting qualification interviews for marketing assistant very soon
- There are contributions and pull requests coming from users of Kiwi TCMS as well.
We'd like to see more of course.
- There are a couple of open source projects and companies using Kiwi TCMS who
are friendly towards the project. We are working with them to get a public
endorsement on the website and engage in more technical work together. Of course
everyone has limited resources and is very busy :-(
- Sponsors on OpenCollect are just
a few but we didn't have any previously so this is a good sign.
This is the moment to mention that not all is honey and roses in open source land.
Kiwi TCMS suffers from the problem that many of our users can't be contributors
or simply don't want to!
Manual testers can't program. This is a fact and a good sized chunk of our user base
actually performs manual testing. Those that can write automation and probably
code decently well may not be familiar with Python and Django. At least in Bulgaria
these two aren't very popular, definitely not among testers. That is to say this part
of the user-base simply doesn't have the necessary skills to contribute and the majority
of what we need is code contribution!
Another (fairly big IMO) group of users are coming from proprietary companies who
view open source and Kiwi TCMS as a zero cost option. Something that they take free
of charge and use it without ever contributing back. They don't understand nor really
care about the open source culture.
To make things worse we receive requests every single day via
our private email addresses or questions via IM despite our website clearly stating
community engagement rules. On a few occasions we have received very rude comments
of the sort "our company demands you fix this", "is this going to be ready this year"
(context implying entitlement), etc. To make things more ridiculous we've even received
support requests (via contact form) from companies and start-up
who get their return address wrong so we can't get in touch directly!
In short: don't demand anything from us unless you are ready to pay for it, work for it
yourself or propose a mutually beneficial scenario. We do try to keep the community
happy but more importantly follow our mission and develop our core team!
Happy testing!