Category: ROCKEN Documentation

  • Story 2.2.9.8. RT. Profile preview. Interview tab. Target analysis

    Content

    General info

    The Target Analysis Tab within the Interview section of the Rocken Talent (RT) platform provides recruiters with insights into the candidate’s aspirations for their next job. It captures their ideal job responsibilities, companies they wish to avoid, and expectations for their future employer. This helps recruiters align opportunities with the candidate’s preferences and values.

    User story

    As a recruiter or hiring manager,
    I want to review the candidate’s target job preferences,
    so that I can identify opportunities that match their career goals and values.

    Visual design:

    https://www.figma.com/design/I5CXH7H3ICD0vfA1kPbcVf/Rocken-Design?node-id=47279-155562&t=RtaKHj5McNNv0wg6-4

     

     

    Acceptance criteria

     

    01

    Scenario: Display Header
    Given I open the Target Analysis tab
    When I view the section
    Then I should see the candidate’s name, role, and action buttons such as "Schedule Interview."

    image-20241211-145524.png

    02

    Scenario: View Desired Job Responsibilities
    Given the candidate has shared their aspirations for their next role
    When I view the corresponding section
    Then I should see a detailed narrative describing their ideal job responsibilities.

    03

    Scenario: View Companies to Avoid
    Given the candidate has provided a list of companies or industries they want to avoid
    When I view the section
    NEW Then I shouldn’t see the answer of this question in profile preview

    04

    Scenario: View Job Expectations
    Given the candidate has shared their expectations for their next role
    When I view the "Job Expectations" section
    Then I should see a list of expectations displayed as selectable tags (e.g., Work-life balance, Career growth).

    05

    Scenario: Edit Information
    Given I have editing permissions
    When I click on the "Edit" button for any section
    Then I should be able to modify and save the updated information.

    06

    Scenario: Tooltip for Job Expectations
    Given a recruiter might need clarification on an expectation
    When I hover over a tooltip icon near an expectation
    Then I should see a brief explanation or example.

    07

    Scenario: Responsive Design
    Given I access the Target Analysis tab on a mobile device
    When I view the tab
    Then all content should adjust responsively for optimal viewing.

    08

    Scenario: PDF Download
    Given the candidate’s profile includes target analysis data
    When I click the "PDF Download" button
    Then the target analysis data should be included in the downloaded file.

    09

    Scenario: Multi-language Support
    Given the platform supports multiple languages
    When I switch the language
    Then all questions and answers should display in the selected language.

  • Story 2.2.9.7. RT. Profile preview. Interview tab. Personal competencies

    Content

    General info

    The Personal Competencies Tab within the Interview section of the Rocken Talent (RT) platform focuses on the candidate’s core values, their contributions to past employers, and leadership experience. It allows recruiters to assess the candidate’s compatibility with the company’s culture and their potential to add value to the organization.

    User story

    As a recruiter or hiring manager,
    I want to review the candidate’s personal competencies and leadership experience,
    so that I can evaluate their alignment with company culture and their potential contributions.

    Visual design:

    https://www.figma.com/design/I5CXH7H3ICD0vfA1kPbcVf/Rocken-Design?node-id=47279-155301&t=RtaKHj5McNNv0wg6-4

     

     

    Acceptance criteria

     

    01

    Scenario: Display Header
    Given I open the Personal Competencies tab
    When I view the section
    Then I should see the candidate’s name, role, and action buttons such as "Schedule Interview."

    image-20241211-144942.png

    02

    Scenario: View values about workplace
    Given the candidate has answered the question about the values “What values are important to you in the workplace?
    When I view the section
    Then I should see their response

    03

    Scenario: View benefits
    Given the candidate has answered the question about benefits “What can employers as well as colleagues benefit from you?
    When I view the section
    Then I should see their response

    04

    Scenario: View Leadership Experience
    Given the candidate has answered the question about leadership experience “Do you have experience in a leadership position?
    When I view the section
    Then I should see their response

    05

    Scenario: show two answers if candidate have Leadership Experience
    Given profile preview, personal competencies
    When candidate answered “Yes” for the question “Do you have experience in a leadership position?
    Then I should see their response for two additional questions

    06

    Scenario: Responsive Design
    Given I access the Personal Competencies tab on a mobile device
    When I view the tab
    Then all content should adjust responsively for optimal viewing.

    07

    Scenario: Multi-language Support
    Given the platform supports multiple languages
    When I switch the language
    Then all questions and answers should display in the selected language.

  • Story 2.2.9.6. RT. Profile preview. Interview tab. Actual analysis

    Content

    General info

    The Actual Analysis Tab within the Interview section of the Rocken Talent (RT) platform is designed to provide recruiters and hiring managers with an in-depth understanding of the candidate’s current professional status, their motivations for seeking new opportunities, and their core competencies. This tab facilitates insightful discussions during the interview process.

    User story

    As a recruiter or hiring manager,
    I want to access a detailed analysis of a candidate’s current professional situation and skills,
    so that I can evaluate their qualifications and motivations effectively.

    Visual design:

    https://www.figma.com/design/I5CXH7H3ICD0vfA1kPbcVf/Rocken-Design?node-id=47279-154753&t=RtaKHj5McNNv0wg6-4

     

     

    Acceptance criteria

     

    01

    Scenario: Display Header
    Given I open the Actual Analysis tab
    When I view the section
    Then I should see the candidate’s name, role, and key action buttons (e.g., schedule an interview).

    Actual Analysis.png

    02

    Scenario: View Reasons for Job Change
    Given the candidate has provided their reasons for seeking new opportunities
    When I view the "Reasons for Job Change" question
    Then I should see their selected reasons (e.g., career advancement, new challenges).

    03

    Scenario: View Current Responsibilities
    Given the candidate has shared their current job responsibilities
    When I view the "Current Responsibilities" question
    Then I should see a detailed description of their key tasks and roles.

    04

    Scenario: View Core Competencies
    Given the candidate has provided their core competencies
    When I view the "Core Competencies" question
    Then I should see a detailed list of their professional strengths and skills acquired over their career.

    05

    Scenario: Skills Section
    Given the candidate has added skills to their profile
    When I view the skills section
    Then I should see their listed skills, each represented as a tag.

    06

    Scenario: Responsive Design
    Given I am accessing the Actual Analysis tab on a mobile device
    When I view the section
    Then all questions and answers should be displayed in a responsive format for easy reading.

    07

    Scenario: Edit Responses
    Given I have permission to edit candidate data
    When I click on the "Edit" button for any section
    Then I should be able to update their answers and save the changes.

    08

    Scenario: PDF Download
    Given the candidate’s profile includes their analysis responses
    When I click on "PDF Download"
    Then all responses in the Actual Analysis section should be included in the downloaded file.

    09

    Scenario: Tooltips for Questions
    Given a question may require additional clarification
    When I hover over the tooltip icon next to a question
    Then I should see a brief explanation or example.

    10

    Scenario: Action Buttons
    Given I am viewing the Actual Analysis tab
    When I click "Schedule Interview" or "Not Interested"
    Then the corresponding actions should be executed.

    11

    Scenario: Load Latest Data
    Given the candidate has recently updated their responses
    When I open the Actual Analysis tab
    Then the most recent data should be displayed.

    12

    Scenario: Multi-language Support
    Given the platform supports multiple languages
    When I switch the language
    Then all questions and responses in the Actual Analysis tab should update to the selected language.

  • Story 2.2.9.5. RT. Profile preview. Interview tab. Job profile

    Content

    General info

    The Interview Tab – Job Profile Section in the Rocken Talent (RT) platform is designed to provide users with a detailed summary of a candidate’s job-related preferences, current employment status, and other work-specific information. This tab is tailored to assist recruiters and hiring managers in assessing the candidate’s suitability for a specific role.

    User story

    As a Rocken Talent user,
    I want to view a candidate’s job profile details in the Interview tab,
    so that I can quickly assess their employment status, salary expectations, region preferences, and willingness to travel.

    Visual design:

    https://www.figma.com/design/I5CXH7H3ICD0vfA1kPbcVf/Rocken-Design?node-id=47279-66121&t=RtaKHj5McNNv0wg6-4

     

     

    Acceptance criteria

     

    01

    Scenario: Job Profile Header
    Given I open the Interview tab
    When I view the Job Profile section
    Then I should see the candidate’s name, role, and profile picture along with action buttons (e.g., schedule an interview).

    image-20241211-135530.png

    02

    Scenario: Employment Status
    Given the candidate has provided their employment details
    When I view the Job Profile section
    Then I should see their current status (e.g., employed, unemployed) and notice period.

    03

    Scenario: Salary Expectations
    Given the candidate has shared their salary information
    When I view the Salary card
    Then I should see their current salary and desired salary range.

    04

    Scenario: Region Preferences
    Given the candidate has specified their preferred region
    When I view the Region card
    Then I should see their readiness to relocate and preferred location.

    05

    Scenario: Commuting Information
    Given the candidate has provided commuting details
    When I view the Commuting card
    Then I should see their preferred mode of transport, commute time, and driver’s license categories.

    06

    Scenario: Travel Readiness
    Given the candidate has shared travel readiness details
    When I view the Travel Readiness card
    Then I should see their willingness to travel, travel rating, and areas they are willing to travel to.

    07

    Scenario: Workload Information
    Given the candidate has specified their work availability
    When I view the Workload card
    Then I should see their current and desired workload percentage.

    08

    Scenario: Responsive Design
    Given I am accessing the Interview tab on a mobile device
    When I view the Job Profile section
    Then all cards and details should be displayed in a responsive and user-friendly format.

    09

    Scenario: Action Buttons
    Given I am viewing the Job Profile section
    When I click the "Schedule Interview" or "Not Interested" buttons
    Then the corresponding actions should be executed.

    10

    Scenario: PDF Download
    Given the candidate’s profile includes job profile details
    When I click on "PDF Download"
    Then the job profile information should be included in the downloaded file.

    11

    Scenario: Navigation Between Tabs
    Given I am in the candidate’s profile
    When I switch to the Interview tab
    Then the Job Profile section should load automatically as part of the tab.

    12

    Scenario: Data Tooltips
    Given the profile contains key data points
    When I hover over icons or terms
    Then I should see tooltips explaining additional context (e.g., relocation preferences).

    13

    Scenario: Profile Updates
    Given the candidate updates their job profile
    When I refresh the Interview tab
    Then the latest data should be displayed in the Job Profile section.

  • Story 2.2.9.4. RT. Profile preview. General tab

    Content

    General info

    The Profile Preview – General Tab allows users in Rocken Talent (RT) to view a detailed summary of a candidate’s profile. It includes sections for personal information, work experience, education, skills, external references, and more. This feature provides an intuitive and organized way to evaluate a candidate’s qualifications and background.

    User story

    As a Rocken Talent user,
    I want to view a candidate’s detailed profile in the General tab,
    so that I can assess their qualifications, skills, and experience effectively.

    Visual design:

    https://www.figma.com/design/I5CXH7H3ICD0vfA1kPbcVf/Rocken-Design?node-id=47279-63803&t=RtaKHj5McNNv0wg6-4

     

    Hero Section:

    #

    Acceptance Criteria

    01

    Scenario: Displaying the hero section
    Given a recruiter views the "General" tab
    When the page loads
    Then the hero section should display the candidate’s profile photo, along with action buttons," "Download PDF," and "Share Profile."

    https://cheitgroup.atlassian.net/wiki/spaces/RD/pages/801734657/Story+2.2.9.2.+RT.+Profile+Preview.+General+tab.+Hero+block?atl_f=PAGETREE

    Story 2.2.9.3. RT. Profile preview. PDF file

    image-20241225-080615.png

    Sidebar Sections:

    #

    Acceptance Criteria

    04

    Scenario: Displaying the "Info" section
    Given the sidebar is visible
    When viewing the "Info" section
    Then it should display the candidate’s current job title, years of experience, and availability status.

    image-20241225-080603.png

    05

    Scenario: Displaying the "Work Region/Mobility" section
    Given the sidebar is visible
    When viewing the "Work Region/Mobility" section
    Then it should list the candidate’s preferred work regions and willingness to relocate or travel.

    image-20241225-080637.png

    06

    Scenario: Displaying the "Verfügbarkeit" section
    Given the sidebar is visible
    When viewing the "Verfügbarkeit" section
    Then it should indicate the candidate’s availability, preferred work schedule, and willingness to work with provider.

    image-20241225-081000.png

    07

    Scenario: Displaying the "Kontakt" section
    Given the sidebar is visible
    When viewing the "Kontakt" section
    Then it should provide the candidate’s preferred method of contact.

    image-20241225-081149.png

    08

    Scenario: Displaying the "Skills" section
    Given the sidebar is visible
    When viewing the "Skills" section
    Then it should showcase a list of the candidate’s key skills, possibly with proficiency levels or years of experience.

    image-20241225-081217.png

    09

    Scenario: Displaying the "Externe Referenzen & Links" section
    Given the sidebar is visible
    When viewing the "Externe Referenzen & Links" section
    Then it should include external references and links to the candidate’s professional profiles or portfolios.

    image-20241225-081230.png

    10

    Scenario: Displaying the "Leisure Time" section
    Given the sidebar is visible
    When viewing the "Leisure Time" section
    Then it should provide insights into the candidate’s hobbies and interests outside of work.

    image-20241225-081250.png

    Main Sections:

    #

    Acceptance Criteria

    11

    Scenario: Displaying the "About Me" section
    Given the main section is visible
    When viewing the "About Me" section
    Then it should present a brief personal statement or summary written by the candidate, highlighting their professional background and career aspirations.

    image-20241225-081307.png

    12

    Scenario: Displaying the "Professional Experience" section
    Given the main section is visible
    When viewing the "Professional Experience" section
    Then it should detail the candidate’s employment history, including job titles, company names, employment dates, and key responsibilities or achievements for each role.

    image-20241225-081330.png

    13

    Scenario: Displaying the "Education" section
    Given the main section is visible
    When viewing the "Education" section
    Then it should outline the candidate’s academic background, including degrees obtained, institutions attended, and graduation dates.
    AND ability to expand the details by clicking on the arrow

    image-20250117-143948.png

    14

    Scenario: Displaying the "Further Training" section
    Given the main section is visible
    When viewing the "Further Training" section
    Then it should list any additional courses, workshops, or certifications the candidate has completed to enhance their skills.

    image-20241225-081420.png

    15

    Scenario: Displaying the "Languages" section
    Given the main section is visible
    When viewing the "Languages" section
    Then it should specify the languages the candidate is proficient in, along with their proficiency levels (e.g., basic, intermediate, fluent, native).

    image-20241225-081431.png

  • Story 1.0.2.3. CRM. Candidate role

    Content

    General info

    The Candidate role represents users who apply to vacancies through the platform. Candidates have their own profiles within Rocken Talent (RT), where they can manage their personal information, track applications, and engage with job opportunities. The Candidate role is tailored for individuals seeking employment, enabling them to easily apply to vacancies and communicate with employers or consultants.

    User story

    As a Candidate,
    I want to have my own profile in RT,
    so that I can apply to vacancies, track my applications, and manage my information effectively.

    Scheme:

    #

    Acceptance Criteria

    01

    Scenario: Candidate profile creation
    Given I am registered as a Candidate
    When I log into the system
    Then I should have access to my profile.

    02

    Scenario: Apply to vacancies
    Given I am logged in as a Candidate
    When I view a job posting
    Then I should have the option to apply directly to the vacancy.

    03

    Scenario: Track applications
    Given I have applied to vacancies
    When I navigate to the "My Applications" section
    Then I should see a list of my submitted applications.

    04

    Scenario: Manage personal information
    Given I am logged in as a Candidate
    When I access my profile
    Then I should be able to edit and save my personal details.

    05

    Scenario: Communication with consultants
    Given I am logged in as a Candidate
    When a consultant contacts me
    Then I should be able to view and respond to messages.

    06

    Scenario: Profile visibility
    Given I have an active profile
    When an employer or consultant searches for candidates
    Then my profile should be visible if it matches the search criteria.

    07

    Scenario: Notifications
    Given I have applied to a vacancy
    When there are updates regarding the application
    Then I should receive notifications.

    08

    Scenario: Delete profile
    Given I no longer wish to use the platform
    When I request to delete my profile
    Then the system should permanently remove my account and data.

  • Story 1.0.2.1. CRM. Admin role

    Content

    General info

    The Admin role is the most powerful role within the CRM system. Admins have full access to all features and functionalities across the platform, allowing them to view, edit, and manage all system data and configurations. However, to ensure system stability and prevent unintended disruptions, certain backend operations and critical configurations are safeguarded and restricted from Admin-level access. The Admin role is designed for users responsible for maintaining data accuracy, managing user roles and permissions, and ensuring smooth operation of the CRM environment.

    User story

    As an Admin,
    I want full access to the CRM system with editing capabilities,
    so that I can manage and maintain all data and configurations effectively while ensuring system stability.

    Scheme:

    #

    Acceptance Criteria

    01

    Scenario: Full access to CRM
    Given I am logged into the CRM as an Admin
    When I navigate to any section
    Then I should have full access to view and edit data.

    02

    Scenario: Data editing capabilities
    Given I am logged in as an Admin
    When I attempt to edit any data
    Then I should be able to save changes successfully.

    03

    Scenario: Safeguards to prevent system errors
    Given I am logged in as an Admin
    When I attempt to make changes that could disrupt the system
    Then the system should block the operation.

    04

    Scenario: User management
    Given I am logged in as an Admin
    When I navigate to the user management section
    Then I should be able to add, edit, or remove user accounts and their roles.

    05

    Scenario: Access to system settings
    Given I am logged in as an Admin
    When I open the system settings page
    Then I should be able to configure global system parameters.

    06

    Scenario: Reporting capabilities
    Given I am logged in as an Admin
    When I access the reporting dashboard
    Then I should be able to view and modify all system reports as needed.

    07

    Scenario: Role-based access management
    Given I am logged in as an Admin
    When I assign roles to users
    Then the system should apply the permissions associated with the selected role.

    08

    Scenario: Restricted backend operations
    Given I am logged in as an Admin
    When I attempt to modify critical backend configurations
    Then the system should restrict access to protect stability.

  • Infrastructure status

    This page provides a comprehensive overview of the current infrastructure, detailing server configurations, environments, and hosting providers.

    Cloud Service Provider

    Name

    Description

    Link

    Hetzner Cloud

    Old environment hosting Stage and Prod

    Hetzner Dashboard

    DigitalOcean

    New environment for Stage and Prod

    DigitalOcean Projects

    TrendHosting

    Prod environment for rocken jobs

    TrendHosting Cloud

    Hetzner Cloud Infrastructure

    Dev Environment

    Dev Environment

    Server Name

    vCPU

    RAM

    IP Address

    Description

    prototyping-development

    4

    8

    37.27.95.214

    for Martin

    ubuntu-test

    1

    2

    95.216.168.246

    for Martin (stopped)

    Stage Environment

    Stage Environment

    Server Name

    vCPU

    RAM

    IP Address

    Description

    sandbox

    8

    16

    159.69.243.164

    sandbox-postgres-master

    2

    2

    49.13.222.241

    sandbox-postgres-replication

    2

    2

    168.119.240.37

    Prod Environment

    Prod Environment

    Server Name

    vCPU

    RAM

    IP Address

    Description

    production

    16

    32

    168.119.61.45
    49.12.114.105

    production-postgres-master

    16

    32

    88.99.32.103

    production-postgres-replication

    16

    32

    167.235.232.230

    metabase-server

    4

    8

    78.47.245.139

    ubuntu-gitlab-runner

    4

    8

    159.69.201.23

    rockentalent.ch

    2

    4

    49.12.106.94

    DigitalOcean Cloud Infrastructure

    QA Environment

    Server Name

    vCPU

    RAM

    IP Address

    Description

    ivan-qa-team

    2

    4

    159.223.30.129

    Stage Environment (rockentalent)

    Server Name

    vCPU

    RAM

    IP Address

    Description

    ubuntu-s-fra1-01

    2

    2

    46.101.136.27

    Database Server Name

    vCPU

    RAM

    Endpoint

    db-redis-s-fra1-01

    1

    1

    db-redis-s-fra1-01-do-user-8527978-0.b.db.ondigitalocean.com
    private-db-redis-s-fra1-01-do-user-8527978-0.b.db.ondigitalocean.com

    db-postgresql-s-fra1-01

    1

    1

    db-postgresql-s-fra1-01-do-user-8527978-0.b.db.ondigitalocean.com
    private-db-postgresql-s-fra1-01-do-user-8527978-0.b.db.ondigitalocean.com

    Space Name

    Endpoint

    space-rt-s

    https://space-rt-s.fra1.digitaloceanspaces.com

    Prod Environment (rockentalent)

    Server Name

    vCPU

    RAM

    Disk

    IP Address

    Description

    ubuntu-sendgrid-fra1

    1

    1

    25

    46.101.155.145

    for email server

    ubuntu-fra1-01

    2

    4

    80

    139.59.213.29

    Database Server Name

    vCPU

    RAM

    Disk

    Endpoint

    db-redis-fra1-01

    1

    1

    10

    • db-redis-fra1-01-do-user-8527978-0.b.db.ondigitalocean.com

    • private-db-redis-fra1-01-do-user-8527978-0.b.db.ondigitalocean.com

    db-postgresql-fra1-01

    2

    4

    60

    • db-postgresql-fra1-01-do-user-8527978-0.b.db.ondigitalocean.com

    • private-db-postgresql-fra1-01-do-user-8527978-0.b.db.ondigitalocean.com

    Space Name

    Endpoint

    space-rt

    https://space-rt.fra1.digitaloceanspaces.com

    Load Balancer Name

    IP Address

    Connected Resource

    talent-rocken-ch-fra1-load-balancer-01

    159.223.251.230

    ubuntu-fra1-01

    load-balancer-fra1-01

    68.183.241.42

    ubuntu-fra1-01

    Stage Environment (CRM)

    Server Name

    vCPU

    RAM

    Disk

    IP Address

    Description

    stage-crm-swarm-manager-01

    4

    8

    80

    64.226.90.188

    ubuntu-fra1-staging-elasticsearch-01

    4

    8

    160

    209.38.208.110

    ubuntu-fra1-staging-storybook

    1

    1

    25

    165.22.87.75

    Database Server Name

    vCPU

    RAM

    Disk

    Endpoint

    db-redis-fra1-staging-01

    1

    1

    10

    • db-redis-fra1-staging-01-do-user-8527978-0.b.db.ondigitalocean.com

    • private-db-redis-fra1-staging-01-do-user-8527978-0.b.db.ondigitalocean.com

    db-postgresql-fra1-01

    1

    1

    10

    • db-postgresql-fra1-staging-01-do-user-8527978-0.b.db.ondigitalocean.com

    • private-db-postgresql-fra1-staging-01-do-user-8527978-0.b.db.ondigitalocean.com

    Prod Environment (CRM)

    Server Name

    vCPU

    RAM

    Disk

    IP Address

    Description

    elasticsearch-01

    2

    8

    160

    64.226.123.170

    ELK Cluster

    elasticsearch-02

    2

    8

    160

    164.90.225.78

    elasticsearch-03

    2

    8

    160

    142.93.100.123

    docker-swarm-manager-01-prod

    4

    8

    160

    104.248.143.135

    Docker Swarm Cluster

    docker-swarm-manager-02-prod

    4

    8

    160

    207.154.240.163

    docker-swarm-manager-03-prod

    4

    8

    160

    138.68.69.192

    Database Server Name

    vCPU

    RAM

    Disk

    Endpoint

    redis-db-prod

    1

    2

    30

    • redis-db-prod-do-user-8527978-0.j.db.ondigitalocean.com

    • private-redis-db-prod-do-user-8527978-0.j.db.ondigitalocean.com

    postgresql-db-prod

    2

    4

    180

    • postgresql-db-prod-do-user-8527978-0.j.db.ondigitalocean.com

    • postgresql-db.prod.rockengroup.com

    postgresql-ro-db-prod

    1

    2

    180

    • postgresql-db-ro.prod.rockengroup.com

    Load Balancer Name

    IP Address

    Connected Resource

    elasticsearch-lb-prod (internal)

    10.10.1.2

    elasticsearch-01

    elasticsearch-02

    elasticsearch-03

    docker-swarm-lb-prod

    188.166.195.147

    docker-swarm-manager-01-prod

    docker-swarm-manager-02-prod

    docker-swarm-manager-03-prod

    TrendHosting Cloud

    Prod Environment (rockenjobs)

    Server Name

    vCPU

    RAM

    Disk

    Version

    IP Address

    Description

    rockenapp

    ?

    5.25

    768

    ?

    82.199.141.57

    DB Server Name

    vCPU

    RAM

    Disk

    Version

    Endpoint

    SQL Databases

    ?

    1

    256

    Percona 8.0.32

    10.10.109.154

    RedisCache

    2

    256

    Redis 7.0.11

    10.10.107.152

    Load Balancer Name

    IP Address

    Connected Resource

    rockenbalancer

    82.199.136.218

    prod-crm-elasticsearch-01

    prod-crm-elasticsearch-02

    prod-crm-elasticsearch-03

  • Story 1.0.2.2. CRM. Developer role

    Content

    General info

    The Developer role in the CRM is designed to provide access to necessary information and functionalities required for development-related tasks while restricting the ability to edit any data. This ensures that Developers can focus on technical contributions without interfering with sensitive or administrative operations. Developers have view-only access to critical sections and relevant reports, maintaining the integrity of the CRM system.

    This role is a subset of the Admin role, with similar viewing permissions but without editing capabilities.

    User story

    As a Developer,
    I want to access relevant data and functionalities within the CRM,
    so that I can perform my development tasks effectively without the ability to edit sensitive information.

    Scheme:

    #

    Acceptance Criteria

    01

    Scenario: Developer role permission
    Given I am logged into the CRM as a Developer
    When I access a CRM page
    Then I should see all data as an admin

    02

    Scenario: Restricted editing capabilities
    Given I am logged in as a Developer
    When open any page of CRM
    Then don’t see creation, edit and delete buttons

  • Test Framework Structure and Class Relationships

    This page will provide an overview of the test automation framework’s architecture, including the Page Object Model structure and how the various components (like HelperBase, Page Objects, PageManager, and Tests) interact in the automation process. The diagrams will visually represent these relationships and clarify the overall framework setup.

    Project Architecture Overview:

    This section outlines the folder and file organization of the project, emphasizing the use of the Page Object Model (POM) for test automation. Each folder and file serves a specific purpose, as described below:

    • pageObject/: Contains all the Page Object files representing distinct web pages or components.

    • Subfolders (e.g., biBoardPage/, clientsPage/): Group related pages or components logically.

    • Utility files (utils/): Provide shared helper methods and centralized page management.

    • tests/: Houses the test scripts that validate application functionality using the Page Objects.

    • Configuration and Data Files: Include settings, test data, and dependency management files for the project.

    ├── pageObject/ # Folder containing all described pages using the Page Object Model (POM)
        ├── biBoardPage/ # Subfolder for BI Board-related pages
            ├── biBoardPage.ts # Main page of the BI Board
            ├── budgetPage.ts # Page for managing budgets
            ├── consultingPage.ts # Page for consulting services
            ├── recruitingPage.ts # Page for recruitment analytics
        ├── clientsPage/ # Subfolder for client-related pages
            ├── companiesPage.ts # Page for managing companies
            ├── ordersPage.ts # Page for managing client orders
            ├── vacanciesPage.ts # Page for viewing and managing vacancies
        ├── components/ # Subfolder for reusable components
            ├── navigationPage.ts # Component for navigation menu interactions
        ├── help/ # Subfolder for help-related pages
            ├── helpPage.ts # Help page for user support
        ├── processes/ # Subfolder for processes-related pages
            ├── processesPage.ts # Page for viewing and managing business processes
        ├── recruiting/ # Subfolder for recruiting-related pages
            ├── applicationsPage.ts # Page for managing applications
            ├── publicationsPage.ts # Page for publishing job openings
        ├── settings/ # Subfolder for settings-related pages
            ├── sessionsPage.ts # Page for managing user sessions
            ├── settingsPage.ts # General settings page
            ├── signInAndSecurityPage.ts # Page for managing sign-in and security settings
        ├── talents/ # Subfolder for talent-related pages
            ├── talentsPage.ts # Page for managing talent profiles
        ├── users/ # Subfolder for user-related pages
            ├── staffPage.ts # Page for managing staff members
        ├── utils/ # Subfolder for shared utilities and helpers
            ├── helperBase.ts # Base helper class for shared logic across pages
            ├── pageManager.ts # Centralized page manager for handling navigation between pages
            ├── test-options.ts # Defines custom fixtures for setting up reusable test utilities
        loginPage.ts # Page for login-related actions and elements
    ├── testData/ # Folder containing pre-configured test data
        ├── testData.ts # File with test data for use in test scenarios
    ├── tests/ # Folder containing test scripts
        ├── testLoginPage.spec.ts # Test file for login page functionality
        ├── testCompanyPage.spec.ts # Test file for login page functionality
        ├── testOrderPage.spec.ts # Test file for order page functionality
        ├──testPublicationPage.spec.ts # Test file for publication page functionality
        ├──testUserPgae.spec.ts # Test file for user page functionality
        ├──testVacanciesPage.spec.ts  # Test file for vacancies page functionality
    .gitignore # File specifying files and folders to be ignored by Git
    eslint.config.mjs # Configuration file for ESLint to enforce coding standards
    package-lock.json # Auto-generated file for dependency locking
    package.json # File managing project dependencies and scripts
    playwright.config.ts # Configuration file for Playwright with settings for browser, timeouts, etc.

    Test Automation Framework Architecture:

    This diagram illustrates the class hierarchy and the interaction flow within the test automation framework using the Page Object Model (POM). The structure defines the relationships between key components, which are responsible for managing page interactions, navigation, and test execution:

    1. HelperBase (Base class)

    • Role: Provides shared utility methods for interacting with web pages (e.g., clicking elements, filling forms).

    • Purpose: Acts as the foundation for all page objects, ensuring consistent behavior across different pages.

    1. Page Object (Inherits from HelperBase)

    • Role: Represents individual web pages or components (e.g., login page, dashboard, settings page).

    • Purpose: Encapsulates the logic for interacting with specific page elements and actions, inheriting from HelperBase to reuse common methods.

    1. PageManager (Factory for page instances)

    • Role: Centralizes the creation and management of page objects.

    • Purpose: Provides a single interface to navigate and interact with various pages, helping to streamline the test process.

    1. Tests

    • Role: Contains the test scenarios that validate the application’s behavior.

    • Purpose: Uses the PageManager to access and perform actions on the page objects, executing assertions to verify application functionality.

    +-----------------+
    |   HelperBase    | <-------- Base class: shared methods for interactions
    +-----------------+
             ↓
             |
    +------------------+
    |    Page Object    | <--- Inherits from HelperBase
    +------------------+
             ↓
             |
    +-------------------------------+
    |        PageManager            | <--- Factory for creating page instances
    +-------------------------------+
             ↓
             |
    +-------------------------------+
    |            Tests             | <--- Uses PageManager
    +-------------------------------+

    Test structure example:

    1. Create a HelperBase class: Define common methods for shared interactions, such as clicking buttons, filling fields, or waiting for elements.

    1. Define Page Object classes: For each page in the application, create a class that contains methods specific to that page’s elements and actions. These classes inherit from HelperBase to reuse common functionality.

    1. Implement a PageManager: Create a PageManager that acts as a factory, managing the creation and navigation of page objects across tests.

    1. Write Tests: In the test files, import the necessary page objects and the PageManager, use it to instantiate pages, and write assertions to validate functionality.

    1. Use Fixtures (Optional): For repetitive tasks, such as login, use fixtures to streamline setup and teardown in tests.

    1. Execute Tests: Run the tests with Playwright and ensure that each action is executed on the appropriate page objects.

    +--------------------------+
    |       Test Options       |
    | Defines fixtures:        |
    | loginAsAdmin, pageManager|
    | Example:                 |
    | export const test =      |
    | base.extend({            |
    |   loginAsAdmin: async    |
    |   (...) => { ... },      |
    | });                      |
    +--------------------------+
              ↓
    +--------------------------+
    |       Test Suite         |
    | Groups related tests:    |
    | Example:                 |
    | test.describe("Suite",   |
    | () => { ... });          |
    +--------------------------+
              ↓
    +--------------------------+
    |   Test Case Setup        |
    | Defines preconditions:   |
    | login, navigation setup  |
    | Example:                 |
    | test.beforeEach(async    |
    | ({ loginAsAdmin }) =>    |
    | { ... });                |
    +--------------------------+
              ↓
    +--------------------------+
    |       Test Cases         |
    | Runs specific scenarios: |
    | Example:                 |
    | test("Scenario", async   |
    | ({ pageManager }) =>     |
    | { ... });                |
    +--------------------------+
              ↓
    +--------------------------+
    |    Test Execution        |
    | Runs tests via CLI:      |
    | Example:                 |
    | Command: npx playwright  |
    | test                     |
    +--------------------------+
              ↓
    +--------------------------+
    | Test Result Analysis     |
    | Reviews output reports:  |
    | Example:                 |
    | Open: playwright-report/ |
    | index.html               |
    +--------------------------+