Kiwi TCMS 5.0 发布,全功能测试用例管理系统

发布于 2018年07月25日
收藏 6

Kiwi TCMS 5.0 发布了,Kiwi TCMS 是一个集测试计划、测试运行和测试用例于一身的管理系统,用 Python 和 Django 编写。它具有许多强大的功能,如 Bugzilla 和 JIRA 集成,快速测试计划和运行搜索,针对每个计划、运行和案例以及 XML-RPC API 的强大访问控制。

此次更新引入了新的数据库迁移、对象历史记录跟踪、旧功能和未使用代码的删除,以及大量内部更新和 bug 修复:


  • Remove CACHE because not used

  • Remove PLAN_EMAIL_TEMPLATECASE_EMAIL_TEMPLATE and CASE_DELETE_EMAIL_TEMPLATE. Templates can still be overriden if desired


  • Upgrade to Django 2.0.7

  • Allow to delete TestPlan. Fixes Issue #273

  • Don't include username in dashboard URL

  • Copy latest TestPlan text when cloning

  • Always require users to be logged in. Anonymous users will not be allowed access by default. Read-only access to some views (e.g. get TestPlan or TestRun) can be enabled by disabling GlobalLoginRequiredMiddleware! Fixes Issue #230

  • Start tracking change history for TestPlan, TestCase, TestRun and TestCaseRun. Fixes Issue #294

  • History changes are recorded as unified diff which is a universally recognized format

  • Show the actual changes in email notifications. Fixes Issue #199

Bug fixes

  • Fix UnboundLocalError local variable 'message' referenced before assignment. Fixes Sentry KIWI-TCMS-1S

  • Make email address unique when adding users via admin panel. Fixes Issue #352 and Issue #68

  • Fix unsupported operand type(s) for +=: 'int' and 'datetime.timedelta' by initializing timedelta variable properly. Fixes Sentry KIWI-TCMS-1Y

  • Remove core.models.fields with MySQL time conversions. Fixes Issue #390

  • Fix bad JavaScript comparison. Fixes Coverity #289956

  • Remove expression with no effect. Fixes Coverity #289974

  • Rewrite request_host_link() to fix Coverity #289987

  • Fix Coverity #289923 - Typo in identifier

  • Don't send emails for changes performed by myself. Fixes Issue #216


  • Fix pylint issues in several modules (Anton Sankov & Ivaylo Ivanov)

  • Fix wrong Plan Type template variable in advanced search form

  • Do not use Model.objects.update() because it doesn't respect history

  • Use the standard ModelChoiceField instead of custom one

  • Use updateRunStatus() instead of deprecated updateObject()

  • Simplify JavaScript function getInfo() and use it multiple times

  • Simplify previewPlan() by removing unused parameters

  • Unify addChildPlan() and removeChildPlan()

  • Unify getInfoAndUpdateObject() with changeCaseRunAssignee()

  • Unify onTestCaseStatusChange() with changeTestCaseStatus()

  • Convert TestCaseEmailSettings.cc_list to string field

  • Merge report/caseruns_table.html with reports/caseruns.html

  • Rename model UserActivateKey to UserActivationKey. Fixes Issue #276

  • Remove cached_entities(). Fixes Issue #307

  • Remove TestPlanText.checksum field

  • Remove checksum fields for TestCaseText model

  • Remove unused and home-grown template tags

  • Remove unused fields auto_blinddowndescriptionsortkey from TestCaseRunStatus model. Fixes Issue #186

  • Remove Meta.db_name effectively renaming all tables. New names will use Django's default naming scheme

  • Remove RawSQL queries. We are now 100% ORM based. Fixes Issue #36

  • Remove duplicate MultipleEmailField definition

  • Remove TCMSLog view, TCMSLogManagerTCMSLogModel

  • Remove TestPlanText model, use TestPlan.text instead

  • Remove unused JavaScript files - lib/detetmine_type.js - lib/hole.js - lib/scriptaculous-controls.js.patch - lib/validations.js - static/js/index.js

  • Remove constructPlanParentPreviewDialog()

  • Remove changeCasePriority()

  • Remove changeCaseRunOrder()

  • Remove debug_output() from JavaScript files

  • Remove deprecated /ajax/update/ end-point

  • Remove taggleSortCaseRun()

  • Remove strip_parameters()

  • Remove _InfoObjects.users()

  • Remove get_value_by_type()

  • Remove testcases.views.get_log()

  • Remove mail_scene() methods and related templates

Removed functionality

  • TestRun completion status is no longer updated automatically. You can still update the status manually via the 'Set Finished' or 'Set Running' links! Fixes Issue #367

  • Remove bookmarks functionality. There are many great bookmark manager apps and if the user is keen on bookmarks they should use one of them. Closes Issue #67 and Issue #210

  • Don't track & display history of changes for EnvGroup model

  • Remove Disable/Enable buttons from TestPlan page. Enabling and disabling can still be done via the edit page

  • Remove changeParentPlan() and the ability to change TestPlan parents from the 'Tree View' tab. This can be done via the edit page

  • When viewing a TestPlan the user is no longer able to specify a sorkey for a particular TestCase. Instead they can use the Re-order cases button and move around the entire row of cases to adjust the sort order

  • When working with test case results, inside a TestRun you will not be allowed to change the order of execution. Order should be defined inside the TestPlan instead

  • Remove XmlRpcLog() model. Kiwi TCMS will no longer log RPC calls to the database. This leads to a small performance boost and can be overriden on individual basis if you need to do so.


  • More source strings marked as translatable

  • New translations for Chinese Simplified, Chinese Traditional, German and Slovenian

  • Stop keeping compiled translations under git. Fixes Issue #387

tcms-api 5.0 

  • Requires Python 3.6 or newer because it fixes bugs related to Django's disabling of keep-alive connections. See

  • The rpc client is now accessed via TCMS().exec.<Server-Method>

  • Leave only XML-RPC transport classes! This removes the top-level interface behind the API client and the consuming side is left to work with Python dictionaries instead of objects.

  • Remove the interactive tcms script

  • Remove tcms_api.config module

  • Remove logging class

  • Remove script_examples/ directory. These were never tested and maintained



转载请注明:文章转载自 开源中国社区 []
本文标题:Kiwi TCMS 5.0 发布,全功能测试用例管理系统