예제 #1
0
""" Project definition for testing a project with all requirements but no sources. """

from hqlib import metric_source, requirement
from hqlib.domain import Project, Product, Team, Document, Application, Component, Environment, Process

# Sources
HISTORY = metric_source.CompactHistory(
    'tests/integrationtests/test_all_requirements_no_sources/history.json')

# The project
PROJECT = Project('Integrationtest',
                  name='all requirements but no sources',
                  metric_sources={metric_source.History: HISTORY},
                  added_requirements=Project.optional_requirements())

# Documents.
DOC = Document(name='Document XYZ',
               added_requirements=Document.optional_requirements())
PROJECT.add_document(DOC)

# Teams of the project.
TEAM = Team(name='Team 123',
            short_name='TE',
            added_requirements=Team.optional_requirements())
PROJECT.add_team(TEAM)

# Environment of the project

ENVIRONMENT = Environment(
    name='Environment',
    short_name='EN',
예제 #2
0
from hqlib import metric_source
from hqlib.domain import Project, Application

# Metric sources
HISTORY = metric_source.CompactHistory("history.json")
SONAR = metric_source.Sonar("https://sonarcloud.io/")

# The project
PROJECT = Project(
    "ICTU", name="HQ",
    metric_sources={
        metric_source.History: HISTORY,
        metric_source.Sonar: SONAR})

# The product developed by the project
APPLICATION = Application(
    short_name="HQ", name="HQ - Holistic Software Quality Reporting",
    metric_source_ids={
        SONAR: 'nl.ictu:hq'})

PROJECT.add_product(APPLICATION)

# Dashboard layout
# Columns in the dashboard is specified as a list of tuples. Each tuple
# contains a column header and the column span.
DASHBOARD_COLUMNS = [("Product", 1), ("Meta", 1)]

# Rows in the dashboard is a list of row tuples. Each row tuple consists of
# tuples that describe a cell in the dashboard. Each cell is a tuple containing
# the product or team and the color. Optionally the cell tuple can contain a
# third value which is a tuple containing the column and row span for the cell.
예제 #3
0
from hqlib import metric_source, requirement
from hqlib.domain import Project, Product, Application, Component, Team, Document, Environment, Process

# Sources
HISTORY = metric_source.History('tests/integrationtests/test_no_source_ids/history.json')
GIT = metric_source.Git(url='http://git/repo')
SONAR = metric_source.Sonar('http://sonar/')
BUG_TRACKER = metric_source.JiraFilter(url='http://jira/', username='******', password='******')
WEKAN = metric_source.WekanBoard('http://wekan', username='******', password='******')

# The project
PROJECT = Project(
    'Integrationtest', name='all requirements and sources, but no source ids',
    metric_sources={
        metric_source.History: HISTORY,
        metric_source.VersionControlSystem: GIT,
        metric_source.BugTracker: BUG_TRACKER,
        metric_source.ActionLog: WEKAN,
        metric_source.UnitTestReport: SONAR,
        metric_source.Sonar: SONAR},
    added_requirements=Project.optional_requirements())

# Documents.
DOC = Document(name='Document XYZ', added_requirements=Document.optional_requirements())
PROJECT.add_document(DOC)

# Teams of the project.
TEAM = Team(name='Team 123', short_name='TE', added_requirements=Team.optional_requirements())
PROJECT.add_team(TEAM)

# Process of the project
예제 #4
0
""" Project definition for testing a project with all requirements but no sources. """

from hqlib import metric_source, requirement
from hqlib.domain import Project, Product, Team, Document, Application, Component, Environment, Process

# Sources
HISTORY = metric_source.CompactHistory('tests/integrationtests/test_all_requirements_no_sources/history.json')

# The project
PROJECT = Project(
    'Integrationtest', name='all requirements but no sources',
    metric_sources={metric_source.History: HISTORY},
    added_requirements=Project.optional_requirements())

# Documents.
DOC = Document(name='Document XYZ', added_requirements=Document.optional_requirements())
PROJECT.add_document(DOC)

# Teams of the project.
TEAM = Team(name='Team 123', short_name='TE', added_requirements=Team.optional_requirements())
PROJECT.add_team(TEAM)

# Environment of the project

ENVIRONMENT = Environment(name='Environment', short_name='EN', added_requirements=Environment.optional_requirements())
PROJECT.add_environment(ENVIRONMENT)

# Process of the project

PROCESS = Process(name="Scrum", short_name="SC", added_requirements=Process.optional_requirements())
PROJECT.add_process(PROCESS)
예제 #5
0
PROJECT = Project(
    'Organization name',
    name='Quality Report',
    metric_sources={
        metric_source.Jenkins: BUILD_SERVER,
        metric_source.Sonar: SONAR,
        metric_source.SystemTestReport: JUNIT,
        metric_source.JaCoCo: JACOCO,
        metric_source.ZAPScanReport: ZAP_SCAN_REPORT,
        metric_source.History: HISTORY,
        metric_source.CIServer: JENKINS,
        metric_source.ActionLog: TRELLO_BOARD,
        metric_source.RiskLog: TRELLO_BOARD,
        metric_source.UserStoriesInProgressTracker:
        USER_STORIES_IN_PROGRESS_TRACKER,
        metric_source.UserStoriesDurationTracker:
        USER_STORIES_DURATION_TRACKER,
        metric_source.ManualLogicalTestCaseTracker: DURATION_MANUAL_TEST_CASES,
        metric_source.UserStoryWithoutSecurityRiskAssessmentTracker:
        USER_STORIES_IN_PROGRESS_TRACKER,
        metric_source.UserStoryWithoutPerformanceRiskAssessmentTracker:
        USER_STORIES_IN_PROGRESS_TRACKER,
        metric_source.FileWithDate: SECURITY_REPORT_PROXY
    },
    metric_source_ids={
        TRELLO_BOARD: '5fe',
        DURATION_MANUAL_TEST_CASES: '15999',
        USER_STORIES_IN_PROGRESS_TRACKER: '15208'
    },
    # Override the total LOC metric targets:
    metric_options={metric.TotalLOC: dict(target=1000000, low_target=2000000)},
    requirements=[
        requirement.TrustedProductMaintainability, requirement.TrackManualLTCs,
        requirement.TrackSecurityAndPerformanceRisks, requirement.TrackActions
    ])
""" Project definition for testing a project with all requirements and sources, but no source ids. """

from hqlib import metric_source
from hqlib.domain import Project

import project_definition

# Sources
HISTORY = metric_source.History('tests/integrationtests/test_no_source_ids/second_history.json')

# The project
PROJECT = Project(
    'Integrationtest', name='all requirements and sources, but no source ids',
    metric_sources={
        metric_source.History: HISTORY,
        metric_source.VersionControlSystem: project_definition.GIT,
        metric_source.BugTracker: project_definition.BUG_TRACKER,
        metric_source.Sonar: project_definition.SONAR},
    requirements=project_definition.PROJECT.requirements())

# Documents.
PROJECT.add_document(project_definition.DOC)

# Development environment
PROJECT.add_environment(project_definition.ENVIRONMENT)

# Process of the project
PROJECT.add_process(project_definition.PROCESS)

# Teams of the project.
PROJECT.add_team(project_definition.TEAM)
from hqlib import metric_source
from hqlib.domain import Project, Application

# Metric sources
HISTORY = metric_source.CompactHistory("history.json")
SONAR = metric_source.Sonar("https://sonarcloud.io/")

# The project
PROJECT = Project("ICTU",
                  name="HQ",
                  metric_sources={
                      metric_source.History: HISTORY,
                      metric_source.Sonar: SONAR
                  })

# The product developed by the project
APPLICATION = Application(short_name="HQ",
                          name="HQ - Holistic Software Quality Reporting",
                          metric_source_ids={SONAR: 'nl.ictu:hq'})

PROJECT.add_product(APPLICATION)

# Dashboard layout
# Columns in the dashboard is specified as a list of tuples. Each tuple
# contains a column header and the column span.
DASHBOARD_COLUMNS = [("Product", 1), ("Meta", 1)]

# Rows in the dashboard is a list of row tuples. Each row tuple consists of
# tuples that describe a cell in the dashboard. Each cell is a tuple containing
# the product or team and the color. Optionally the cell tuple can contain a
# third value which is a tuple containing the column and row span for the cell.
예제 #8
0
# The project
PROJECT = Project('Organization name', name='Quality Report',
                  metric_sources={
                      metric_source.VersionControlSystem: GIT,
                      metric_source.Sonar: SONAR,
                      metric_source.AxeReport: AXE,
                      metric_source.SystemTestReport: JUNIT,
                      metric_source.ARTCoverageReport : LCOV,
                      metric_source.OWASPDependencyReport: OWASP_DEPENDENCY_REPORT,
                      metric_source.ZAPScanReport: ZAP_SCAN_REPORT,
                      metric_source.History: HISTORY,
                      metric_source.CIServer: JENKINS,
                      metric_source.ActionLog: TRELLO_BOARD,
                      metric_source.RiskLog: TRELLO_BOARD,
                      metric_source.UserStoriesInProgressTracker: USER_STORIES_IN_PROGRESS_TRACKER,
                      metric_source.UserStoriesDurationTracker: USER_STORIES_DURATION_TRACKER,
                      metric_source.ManualLogicalTestCaseTracker: DURATION_MANUAL_TEST_CASES,
                      metric_source.UserStoryWithoutSecurityRiskAssessmentTracker: USER_STORIES_IN_PROGRESS_TRACKER,
                      metric_source.UserStoryWithoutPerformanceRiskAssessmentTracker: USER_STORIES_IN_PROGRESS_TRACKER,
                      metric_source.FileWithDate: SECURITY_REPORT_PROXY
                  },
                  metric_source_ids={
                      TRELLO_BOARD: '5fe',
                      DURATION_MANUAL_TEST_CASES: '15999',
                      USER_STORIES_IN_PROGRESS_TRACKER: '15208'
                  },
                  # Override the total LOC metric targets:
                  metric_options={
                      metric.TotalLOC: dict(target=1000000, low_target=2000000)},
                  requirements=[requirement.TrustedProductMaintainability, requirement.TrackManualLTCs,
                                requirement.TrackSecurityAndPerformanceRisks, requirement.TrackActions])
from hqlib import metric_source
from hqlib.domain import Project

import project_definition

# Sources
HISTORY = metric_source.History(
    'tests/integrationtests/test_no_source_ids/second_history.json')

# The project
PROJECT = Project('Integrationtest',
                  name='all requirements and sources, but no source ids',
                  metric_sources={
                      metric_source.History: HISTORY,
                      metric_source.VersionControlSystem:
                      project_definition.GIT,
                      metric_source.BugTracker: project_definition.BUG_TRACKER,
                      metric_source.Sonar: project_definition.SONAR
                  },
                  requirements=project_definition.PROJECT.requirements())

# Documents.
PROJECT.add_document(project_definition.DOC)

# Development environment
PROJECT.add_environment(project_definition.ENVIRONMENT)

# Process of the project
PROJECT.add_process(project_definition.PROCESS)

# Teams of the project.