Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

test: Cypress - added @tag.excludeForAirgap, @tag.Templates tags #29790

Merged
merged 14 commits into from
Dec 27, 2023

Conversation

sharanya-appsmith
Copy link
Contributor

@sharanya-appsmith sharanya-appsmith commented Dec 21, 2023

Description

Added excludeForAirgap tgs

Type of change

  • Chore (housekeeping or task changes that don't impact user perception)

Testing

running tbp
/ok-to-test tags="@tag.excludeForAirgap"

How Has This Been Tested?

  • Manual
  • Cypress

Checklist:

Dev activity

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes
  • PR is being merged under a feature flag

QA activity:

  • Speedbreak features have been covered
  • Test plan covers all impacted features and areas of interest
  • Test plan has been peer reviewed by project stakeholders and other QA members
  • Manually tested functionality on DP
  • We had an implementation alignment call with stakeholders post QA Round 2
  • Cypress test cases have been added and approved by SDET/manual QA
  • Added Test Plan Approved label after Cypress tests were reviewed
  • Added Test Plan Approved label after JUnit tests were reviewed

Summary by CodeRabbit

  • Test Enhancements

    • Improved test descriptions and added relevant tags for better categorization and filtering across various test suites.
    • Consolidated test logic and descriptions for clarity and coherence in test suites.
  • Bug Fixes

    • Updated test cases to reflect accurate scenarios for bugs and feature testing.
    • Adjusted test sequences and assertions for enhanced reliability and coverage.
  • Refactor

    • Restructured test suites for a more logical flow and clearer objectives.
    • Enhanced test setup steps and assertions for comprehensive validation.
  • Chores

    • Implemented a new tagging functionality for organizing test suites and cases.
    • Added new tags to the tagging system for improved test management.

Copy link
Contributor

coderabbitai bot commented Dec 21, 2023

Walkthrough

Walkthrough

The recent changes primarily involve the refactoring of Cypress end-to-end test suites across various functionalities of a client application. The modifications include the removal of the "excludeForAirgap" tag from test descriptions, the addition of new tags for better categorization, and the restructuring of test suites for improved clarity and flow. Additionally, new functionality has been introduced to handle tagging in test files, and new tags have been added to the tags array.

Changes

Files Change Summary
.../AdminSettings/Admin_settings_spec.js
.../Binding/Button_Text_WithRecaptcha_spec.js
.../BugTests/DS_Bug18035_Spec.ts
.../BugTests/DS_Bug26716_Spec.ts
.../BugTests/DS_Bug28750_Spec.ts
.../BugTests/DS_Bugs26410_spec.ts
.../ExplorerTests/Admin_settings_1_spec.js
.../ExplorerTests/Admin_settings_2_spec.js
.../FormLogin/EnableFormLogin_spec.js
.../Git/GitWithJSLibrary/GitwithCustomJSLibrary_spec.js
.../IDE/Canvas_Context_Property_Pane_1_spec.js
.../Linting/BasicLint_spec.ts
.../MobileResponsiveTests/ConversionFlow_Corner_Cases_spec.ts
.../MobileResponsiveTests/ConversionFlow_Generated_App_spec.ts
.../Onboarding/CreateNewApp_spec.js
.../Onboarding/FirstTimeUserOnboarding_spec.js
.../OtherUIFeatures/Analytics_spec.js
.../OtherUIFeatures/EntityBottomBar_spec.ts
.../OtherUIFeatures/GlobalSearch_spec.js
.../OtherUIFeatures/Omnibar_spec.js
.../Templates/ForkTemplateToGitConnectedApp.js
.../Templates/Fork_Template_Existing_app_spec.js
.../Widgets/Audio/Audio1_spec.ts
.../Widgets/Button/Button_spec.js
.../Widgets/ListV2/Listv2_spec.js
.../Widgets/Others/Autocomplete_spec.js
.../ServerSide/OnLoadTests/JSOnLoad_cyclic_dependency_errors_spec.js
.../ServerSide/QueryPane/DSDocs_Spec.ts
.../ServerSide/QueryPane/GoogleSheets_spec.ts
.../Sanity/Datasources/Airtable_Basic_Spec.ts
.../Sanity/Datasources/MockDBs_Spec.ts
Removed "excludeForAirgap" string, added tags, and restructured tests for better categorization and clarity.
.../Autocomplete/Bugs_AC_Spec.ts
.../CommunityTemplate/PublishCommunityTemplatesFlow_spec.ts
.../Debugger/Api_pane_navigation_spec.ts
.../Debugger/JSObjects_navigation_spec.ts
.../Debugger/Query_pane_navigation.ts
.../Debugger/Widget_property_navigation_spec.ts
.../ExplorerTests/Scrolling_Spec.ts
.../Google/EnableGoogle_spec.js
.../JSLibrary/Library_spec.ts
.../OneClickBinding/PropertyControl_spec.ts
.../Templates/Fork_Template_To_App_spec.js
.../Templates/Fork_Template_spec.js
.../Templates/TemplatesPage_spec.ts
.../Widgets/Audio/Audio1_spec.ts
Modified test descriptions, added tags, and restructured test suites for improved test flow and clarity.
.../cypress/addtags.js
.../cypress/tags.js
Introduced new functionality for adding tags to describe blocks and added new tags to the array of exported tags.

Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

Share

Tips

Chat with CodeRabbit Bot (@coderabbitai)

  • You can directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>.
    • Generate unit-tests for this file.
  • You can tag CodeRabbit on specific lines of code or entire files in the PR by tagging @coderabbitai in a comment. Examples:
    • @coderabbitai generate unit tests for this file
    • @coderabbitai modularize this function
  • You can tag @coderabbitai in a PR comment and ask questions about the PR and the codebase. Examples:
    • @coderabbitai gather interesting statistics about this repository and render them in a table.
    • @coderabbitai show all the console.log statements in this repository.
    • @coderabbitai generate unit tests for the src/utils.ts file.

CodeRabbit Commands (invoked as PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger a review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai help to get help.

Additionally, you can add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.

CodeRabbit Configration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • The JSON schema for the configuration file is available here.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/coderabbit-overrides.v2.json

CodeRabbit Discord Community

Join our Discord Community to get help, request features, and share feedback.

@github-actions github-actions bot added skip-changelog Adding this label to a PR prevents it from being listed in the changelog Tests Test issues labels Dec 21, 2023
@sharanya-appsmith
Copy link
Contributor Author

/ok-to-test tags="@tag.excludeForAirgap"

Copy link

Tests running at: https://github.com/appsmithorg/appsmith/actions/runs/7287510027.
Workflow: Appsmith External Integration Test Workflow.
Tags: @tag.excludeForAirgap.

@sharanya-appsmith sharanya-appsmith removed the request for review from ankitakinger December 21, 2023 11:27
Copy link

Workflow run: https://github.com/appsmithorg/appsmith/actions/runs/7287510027.
Commit: ``.
Cypress dashboard: Click here!
The following are new failures, please fix them before merging the PR:

  1. cypress/e2e/Regression/ClientSide/Autocomplete/Bugs_AC_Spec.ts

  2. cypress/e2e/Regression/ClientSide/OtherUIFeatures/EntityBottomBar_spec.ts
  3. cypress/e2e/Regression/ClientSide/Templates/Fork_Template_spec.js
To know the list of identified flaky tests - Refer here

Copy link

Workflow run: https://github.com/appsmithorg/appsmith/actions/runs/7287510027.
Commit: ``.
Cypress dashboard: Click here!
The following are new failures, please fix them before merging the PR:

  1. cypress/e2e/Regression/ClientSide/Autocomplete/Bugs_AC_Spec.ts

  2. cypress/e2e/Regression/ClientSide/OtherUIFeatures/EntityBottomBar_spec.ts
To know the list of identified flaky tests - Refer here

Copy link

Workflow run: https://github.com/appsmithorg/appsmith/actions/runs/7287510027.
Commit: ``.
Cypress dashboard: Click here!
The following are new failures, please fix them before merging the PR:

  1. cypress/e2e/Regression/ClientSide/Autocomplete/Bugs_AC_Spec.ts

  2. cypress/e2e/Regression/ClientSide/OtherUIFeatures/EntityBottomBar_spec.ts
To know the list of identified flaky tests - Refer here

@sharanya-appsmith sharanya-appsmith changed the title test: Cypress - added excludeForAirgap tags test: Cypress - added @tag.excludeForAirgap, @tag.Templates tags Dec 22, 2023
Copy link

Workflow run: https://github.com/appsmithorg/appsmith/actions/runs/7287510027.
Commit: ``.
Cypress dashboard url: Click here!
It seems like there are some failures 😔. We are not able to recognize it, please check this manually here.

Copy link

Workflow run: https://github.com/appsmithorg/appsmith/actions/runs/7287510027.
Commit: ``.
Cypress dashboard url: Click here!
It seems like there are some failures 😔. We are not able to recognize it, please check this manually here.

@sharanya-appsmith
Copy link
Contributor Author

/ok-to-test tags="@tag.excludeForAirgap, @tag.Templates"

Copy link

Tests running at: https://github.com/appsmithorg/appsmith/actions/runs/7298006302.
Workflow: Appsmith External Integration Test Workflow.
Tags: @tag.excludeForAirgap, @tag.Templates.

Copy link

Workflow run: https://github.com/appsmithorg/appsmith/actions/runs/7298006302.
Commit: ``.
Cypress dashboard: Click here!
The following are new failures, please fix them before merging the PR:

  1. cypress/e2e/Regression/ClientSide/Autocomplete/Bugs_AC_Spec.ts

  2. cypress/e2e/Regression/ClientSide/Linting/BasicLint_spec.ts
To know the list of identified flaky tests - Refer here

Copy link

Workflow run: https://github.com/appsmithorg/appsmith/actions/runs/7298006302.
Commit: ``.
Cypress dashboard: Click here!
The following are new failures, please fix them before merging the PR:

  1. cypress/e2e/Regression/ClientSide/Autocomplete/Bugs_AC_Spec.ts

  2. cypress/e2e/Regression/ClientSide/Linting/BasicLint_spec.ts
To know the list of identified flaky tests - Refer here

@sharanya-appsmith
Copy link
Contributor Author

/ok-to-test

Copy link

Tests running at: https://github.com/appsmithorg/appsmith/actions/runs/7298864969.
Workflow: Appsmith External Integration Test Workflow.
Tags: ``.

Copy link

Workflow run: https://github.com/appsmithorg/appsmith/actions/runs/7298864969.
Commit: ``.
Cypress dashboard url: Click here!
All cypress tests have passed 🎉🎉🎉

@sharanya-appsmith
Copy link
Contributor Author

/ok-to-test tags="@tag.All"

Copy link

Tests running at: https://github.com/appsmithorg/appsmith/actions/runs/7329078838.
Workflow: Appsmith External Integration Test Workflow.
Tags: ``.

Copy link

Workflow run: https://github.com/appsmithorg/appsmith/actions/runs/7329078838.
Commit: ``.
Cypress dashboard: Click here!
The following are new failures, please fix them before merging the PR:

  1. cypress/e2e/Regression/ClientSide/SetProperty/WidgetPropertySetters2_spec.ts

To know the list of identified flaky tests - Refer here

@sharanya-appsmith
Copy link
Contributor Author

TBP run with new script change, tags is been added as a step: https://github.com/appsmithorg/appsmith/actions/runs/7329248481

Copy link

Workflow run: https://github.com/appsmithorg/appsmith/actions/runs/7329078838.
Commit: ``.
Cypress dashboard url: Click here!
All cypress tests have passed 🎉🎉🎉

@@ -307,7 +318,7 @@ jobs:
CYPRESS_APPSMITH_OAUTH2_OIDC_JWKS_URL: ${{ secrets.CYPRESS_APPSMITH_OAUTH2_OIDC_JWKS_URL }}
CYPRESS_APPSMITH_OAUTH2_OIDC_OKTA_PASSWORD: ${{ secrets.CYPRESS_APPSMITH_OAUTH2_OIDC_OKTA_PASSWORD }}
CYPRESS_APPSMITH_OAUTH2_OIDC_DIRECT_URL: ${{ secrets.CYPRESS_APPSMITH_OAUTH2_OIDC_DIRECT_URL }}
CYPRESS_EXCLUDE_TAGS: "airgap"
CYPRESS_EXCLUDE_TAGS: ${{ env.tags_to_exclude }}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sharanya-appsmith Now that we are moving to cypress-grep library, is this environment variable effective and/or required? To the best of my understanding, if we wish to exclude any tags, we need to add it to the grepTags list with the - prefix. Is my understanding incorrect?

Copy link
Contributor Author

@sharanya-appsmith sharanya-appsmith Dec 27, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mostly it blocks has been tagged with airgap and we have not modified airgap using cypress-grep because currently our cypress parallelization plugin is not able to handle if individual it blocks are tagged. Hence leaving it with env variables.

mohanarpit
mohanarpit previously approved these changes Dec 27, 2023
@trishaanand trishaanand merged commit 0ce1780 into release Dec 27, 2023
10 checks passed
@trishaanand trishaanand deleted the test/tag_excludeForAirgap_cases branch December 27, 2023 11:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
skip-changelog Adding this label to a PR prevents it from being listed in the changelog Tests Test issues
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants