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

[US-15-4] Give the user the ability to specify an attribute that shouldn't be used for locators generation (Black / Ignore list) #191

Open
AlexeyGirin opened this issue Jan 11, 2022 · 4 comments
Assignees
Labels
PizzaFeedback tasks related to user's feedback ready for dev task is estimated, described and ready for dev
Milestone

Comments

@AlexeyGirin
Copy link
Contributor

AlexeyGirin commented Jan 11, 2022

It makes sense to complete #950 beforehand

Give user a possibility to specify attributes which shouldn't be used for locators generation

As a user
AND some additional attributes are used in my project, which data has no meaning or is useless in locators generation
I want to not generate code on it
So that allows me to get the correct code

DESCRIPTION:
User starts the locators generation and they see that in one of the locators undesired attribute is used. It is required to give user ability to exclude this attribute from locators generation so after locators recalculation new locators wouldn't contain that undesired attribute.

DEPENDENCIES:
#950 - Filter refactoring
#1285 - data-attributes
#1359 - data-ved

ACCEPTANCE CRITERIA

  • Updated filter with Attributes
    • Add headers
    • Add possibility to collapse list of blocks types
    • In the Block type search input change label to Search by type
  • Identification of locators containing undesired attributes. Recalculation only for those locators.
  • Add new item Ignore attribute to the context menu
  • Ability to Deny data-* attributes for filters (may be decomposed to another task)
  • New tags for filters
  • Robula update so it could accept ignored attributes as an argument

DESIGN:
figma

  • Add a new item to the context menu with options for locator and PO.
  • If In locator is selected, the menu closes and the attribute is changed in the selected locator.
  • If the locator does not have the attribute, do not show this item in the context menu.

image


  • If In Page Object is selected, a filter opens (scrolled to the attributes section) and the attribute is added.
  • Add a tag or a number to it (if it is not the first one).
  • Add new tags separated by a divider from the tag with highlighted locators.
  • Deny data-* attributes adds a separate tag with the text data-* (this checkbox should also increase the count of applied filters).

image
image


Additionally, we can separately open the filter and manually specify the attributes that should not be used.
Validation:

  1. Only Latin characters
  2. Convert to lower case automatically
  3. No spaces; when entering text into the input, if Enter or Spacebar is pressed, the entered text is saved as a tag and input continues.
  4. If text is entered into the input and ClickOut is performed, the entered text is also saved as a tag.

image

COMMENTS:
Changes will be needed on both the front-end and back-end. Currently, the list of attributes is not being transmitted. Because of this, Robula considers all possible combinations.

  1. Global settings
  2. Settings during creation
  3. Filter
  4. From the locators panel or coverage, select a locator and indicate that this locator is not suitable

The fourth option was chosen (the third is also possible), as attribute settings should be made when working with locators, i.e., within an open PO.

Changing an attribute is not a modification, but rather an edit, similar to changing the locator type or switching from xpath to css.

List of attributes: https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes


@AlexeyGirin deletion of an attribute from filters will require recalculation of all locators

@savinovava savinovava changed the title [US-18-1] Дать пользователю возможность указать атрибут, на основании которого нельзя генерировать локаторы - имплементация [US-15-4] Дать пользователю возможность указать атрибут, на основании которого нельзя генерировать локаторы - имплементация Jan 19, 2022
@savinovava savinovava added the release 3.5 Tasks that are for the release 3.5 label Jul 6, 2022
@AlexeyGirin
Copy link
Contributor Author

AlexeyGirin commented Aug 10, 2022

It is required to resolve this together with #584 (design should be consistent)

@savinovava savinovava removed the release 3.5 Tasks that are for the release 3.5 label Aug 18, 2022
@SemyonKuznetsov

This comment was marked as outdated.

@SemyonKuznetsov SemyonKuznetsov added the question Further information is requested label Dec 8, 2022
@savinovava savinovava added Design needed If design for the task isn't prepared yet Requirements gathering If task in the idea status and should be decomposed or proceeded further labels Dec 8, 2022
@savinovava savinovava added the Blocked task is blocked by other tasks label Dec 13, 2022
@SemyonKuznetsov SemyonKuznetsov removed the Blocked task is blocked by other tasks label Jan 20, 2023
@savinovava savinovava changed the title [US-15-4] Дать пользователю возможность указать атрибут, на основании которого нельзя генерировать локаторы - имплементация [US-15-4] Дать пользователю возможность указать атрибут, на основании которого нельзя генерировать локаторы Aug 8, 2023
@SemyonKuznetsov SemyonKuznetsov removed the question Further information is requested label Oct 24, 2023
@SemyonKuznetsov SemyonKuznetsov removed their assignment Nov 3, 2023
@SemyonKuznetsov SemyonKuznetsov removed Design needed If design for the task isn't prepared yet Requirements gathering If task in the idea status and should be decomposed or proceeded further labels Nov 3, 2023
@savinovava savinovava added the ready for dev task is estimated, described and ready for dev label Jan 22, 2024
@AlexeyGirin AlexeyGirin added this to the Release 3.17 milestone Apr 30, 2024
@SemyonKuznetsov SemyonKuznetsov added the PizzaFeedback tasks related to user's feedback label Apr 30, 2024
@savinovava savinovava moved this to BackLog in JDN.AI Board Jun 20, 2024
@SemyonKuznetsov SemyonKuznetsov added the Blocked task is blocked by other tasks label Jun 24, 2024
@SemyonKuznetsov SemyonKuznetsov changed the title [US-15-4] Дать пользователю возможность указать атрибут, на основании которого нельзя генерировать локаторы [US-15-4] Дать пользователю возможность указать атрибут, на основании которого нельзя генерировать локаторы (Black / Ignore list) Jun 24, 2024
@savinovava savinovava moved this from BackLog to To do in JDN.AI Board Jun 24, 2024
@SemyonKuznetsov SemyonKuznetsov removed the Blocked task is blocked by other tasks label Jun 25, 2024
@ivnglkv ivnglkv assigned Bojana33 and unassigned ivnglkv Jul 29, 2024
@ivnglkv ivnglkv changed the title [US-15-4] Дать пользователю возможность указать атрибут, на основании которого нельзя генерировать локаторы (Black / Ignore list) [US-15-4] Give the user the ability to specify an attribute that shouldn't be used for locators generation (Black / Ignore list) Jul 29, 2024
@AlexeyGirin AlexeyGirin moved this from To do to In progress in JDN.AI Board Jul 31, 2024
@Iogsotot
Copy link
Contributor

Iogsotot commented Aug 1, 2024

updates for WebSokets:
ignored_attributes: string []
Image

@AlexeyGirin AlexeyGirin assigned Iogsotot and unassigned Bojana33 Aug 6, 2024
@AlexeyGirin AlexeyGirin moved this from In progress to To do in JDN.AI Board Aug 6, 2024
@AlexeyGirin
Copy link
Contributor Author

Backend part is done

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
PizzaFeedback tasks related to user's feedback ready for dev task is estimated, described and ready for dev
Projects
Status: XL (13)
Status: To do
Development

No branches or pull requests

6 participants