Граф коммитов

44 Коммитов

Автор SHA1 Сообщение Дата
Tasos Katsoulas cd7e2f202c
Merge pull request #6347 from emmanuel-ferdman/main
Update license reference
2024-11-20 11:27:20 +02:00
Emil Ghitta 8dd4ae5c8d - Fix test_post_aaq_questions_for_all_freemium_products_topics and test_additional_system_details_user_agent_information tests from the test_aaq_form_page.py by waiting for a particular selector after performing the ticket submission. If the locator is not displayed we are re-trying the ticket submission.
- Fix some failures related to the top_navbar.py hover function by waiting for a particular top-navbar selector to be displayed before attempting to perform the click.
2024-11-12 23:58:36 +02:00
Emil Ghitta a42e1eacb0
Merge pull request #6344 from emilghittasv/playwright-expand-group-coverage
Playwright expand coverage to group pages
2024-11-12 13:22:55 +02:00
Emmanuel Ferdman 2b77d55062
Update license reference
Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>
2024-11-11 05:11:04 -08:00
Emil Ghitta cd5fb24f2b Instead of downloading and installing Homebrew to install Allure in order to generate the test report in a single .html file we are going to Download the Allure commandline tool and use it directly to generate the test report in a single .html file.
This should reduce the step execution time from ~2 minutes to < 10 seconds
2024-11-11 13:35:03 +02:00
Emil Ghitta 854fa465d3 - Improving the groups_page.py page object and adding new locators & functions against them to be used in tests.
- Adding a function to click on groups listed inside the profile page.
- Adding user group tests pytest marker to pytest.ini
- Adding new test images for usage in tests.
- Expanding playwright coverage over the groups section via the test_groups.py
- Expanding playwright coverage into verifying that messages can be sent via the groups page inside the test_messaging_system.py
- Adding a couple of helper functions inside the utilities.py to:
1. Have the capability of uploading files via file choosers.
2. Have the capability of taking a screenshot for a particular locator.
3. Have the capability of comparing two given images using python pillow.
2024-11-11 13:17:50 +02:00
Emil Ghitta c320441697 - Handle 502 errors inside the page context by refreshing the current page after a 5 seconds delay.
- Increase number of threads from 2 to 4 for playwright tests.
2024-10-25 11:48:15 +03:00
Emil Ghitta ff17a95b76 - Added the possibility for playwright to navigate to the Guides product page via the top-navbar section.
- Refactored & enabled the productSupportPage tests.
- Expanded playwright coverage for the "Guides" product page inside the productSupportPage tests.
- Refactored the products_page.py by making the functions public & replace super() with self.
- Refactored the product_support_page.py by making the functions public & replace super() with self.
- Enabled the productSupportPage tests in playwright.yml
2024-10-15 15:05:20 +03:00
Emil Ghitta 082488144e - Refactoring the footer.py and homepage.py page objects by marking the page functions as public, replacing super() with self and updating function calls in tests.
- Adding a couple of synonyms inside the search_synonym.py page which are used in tests.
- Adding a WordNetLemmatizer instance in utilities.py which is going to help extracting the singular form of words when searching for synonyms of the search term inside the search results.
- Extending playwright coverage with the first batch of search tests inside the test_main_searchbar.py.
- Adding searchTests marker inside pytest.ini and playwright.yml
2024-10-08 14:45:49 +03:00
Basma A 77c1dc03dc
Merge pull request #6266 from mozilla/sumo-build-workflows
chore(githubAction): adding  the build workflow
2024-09-30 16:16:41 -04:00
Basma1912 0b39c8b761
chore(githubAction): adding the build workflow
Signed-off-by: Basma1912 <basad@mozilla.com>
2024-09-30 14:47:36 -04:00
Basma A ae1c329f4e
Merge pull request #6228 from mozilla/sumo-build-workflows
chore(sumo):add build workflow
2024-09-30 14:44:48 -04:00
Basma1912 ae36f5aeff
chore(githubAction): adding the build workflow
Signed-off-by: Basma1912 <basad@mozilla.com>
2024-09-30 14:28:00 -04:00
Basma1912 bdc0bdc5f8
chore(githubActions):add build workflow
Signed-off-by: Basma1912 <basad@mozilla.com>
2024-09-22 17:18:54 -04:00
Basma1912 bc47824985
upload assets using deploy account
Signed-off-by: Basma1912 <basad@mozilla.com>
2024-09-17 13:16:56 -04:00
Basma1912 06206f2055
chore(sumo):add build workflow
Signed-off-by: Basma1912 <basad@mozilla.com>
2024-09-17 09:26:53 -04:00
Emil Ghitta e2bec47085 - Updating playwright to 1.47.0
- Using v4 instead of v2 for actions/upload-artifact since v2 was deprecated (https://github.blog/changelog/2024-02-13-deprecation-notice-v1-and-v2-of-the-artifact-actions/)
2024-09-13 14:18:50 +03:00
Jan Brasna 43de721bce
Update docs workflow caching 2024-08-11 21:40:36 +02:00
Emil Ghitta 4d50f5e0cf - Adding Mozilla Monitor to playwright coverage.
- Fixing some failures caused by the recent taxonomy work.
- Isolating the restricted visibility kb articles to avoid flakiness (no longer using a single kb article for multiple tests. Making use of the create_delete_article fixture to create a fresh kb article before each test & delete it when done)
- Removing unused playwright.yml and pytest.ini markers.
- Reworking the waits.
2024-08-01 20:45:27 +03:00
Emil Ghitta f92c0b92ba - Adding a new helper function in BasePage to extract the list of textContent for a given locator.
- Adding the https://support.allizom.org/en-US/kb/get-community-support?exit_aaq=1 page to test data.
- Adding the AAQ widget text which is displayed when the "All Products" filter is applied to AAQWidgetMessage for further usage in tests.
- Expanding the locators & actions for the ExploreByTopicsPage class.
- Adding playwright coverage for the "Explore By Topic" page:
  - Verifying that the correct explore by topic page header is displayed when changing the topic via the "All Topics" side navbar.
  - Verifying that the "Filter by product" successfully updates the displayed list of articles with articles that belong to the chosen product from the "Filter by product" dropdown (by verifying the displayed metadata for each listed article)
  - Verifying that the correct AAQ widget text is displayed for each filtered product.
  - Verifying the correct AAQ widget redirect for each filtered product.
  - Added playwright coverage for the https://github.com/mozilla/sumo/issues/1876 case
- Adding the new test suite to playwright.yml
2024-07-23 15:55:04 +03:00
Emil Ghitta 29d1844d52 - Update browser option from chrome to chromium.
- Renamed the TestUtilities class to Utilities & class instance from test_utilities to utilities
- Adding create_delete_article mark to pytest.ini
2024-07-19 12:59:22 +03:00
Emil Ghitta 2d63c35aeb Expanding playwright localization coverage to cover the following scenarios:
- Verifying that SUMO redirects to a fallback locale when trying to access an unsupported one.
- Verifying SUMO's fallback mechanism for the fy, zh-Hans and zh-Hant locales. (currently skipped due to a known failure).
- Verifying that accessing all supported SUMO locales returns status code 200
- Verifying SUMO locale priority:
* SUMO should redirect to the locale specified inside the user profile if no locale is specified in the URL.
* Verifying that SUMO should respect the ?lang query parameter and redirect to that particular locale regardless of the locale specified inside the user profile.
* Verifying that SUMO redirects to the locale specified inside the Accept-Language header if no preferred language is set at profile level.
* Verifying the fallback mechanism of the Accept-Language header if the first specified language is not supported or invalid.
- Verifying that selecting all the available options inside the "Language" dropdown menu displayed inside the footer section redirects the user to the chosen locale successfully.
- Adding the required env variables for decouple in order to use the SUMO_LANGUAGES, FALLBACK_LANGUAGES, NON_SUPPORTED_LOCALES dictionaries in tests.
- Fixing the Recent Revisions Dashboard test failures.
- Adding playwright capability of setting/manipulating the http header.
2024-06-17 16:24:45 +03:00
Emil Ghitta b577be8ff8 - Adding playwright coverage to KB article translation.
- Adding the newly added kb article translation tests to pytest.ini and playwright.yml workflow file.
- Adding test data for KB article translation.
- Adding Page object & flows for kb article translation.
- Mapping some automated tests with existing TestRail manual tests.
- Expanding the coverage for some existing kb article tests.
- Improving the flow for some existing Edit Article Metadata tests.
2024-05-30 23:00:29 +03:00
Emil Ghitta 5fa79c8fcb
- Extending playwright coverage over the group messaging system. (#6020)
- Updating the playwright.yml to contain the group messaging system suite for both scheduled & workflow dispatch executions.
- Fix twitter profile link test since twitter is now "x".
- Fix footer test.
- Added group page to POM & flows.
2024-05-20 15:02:14 -07:00
Jan Brasna d6570a3400 Deploy publish-docs straight to environment 2024-04-05 21:21:16 +02:00
Emil Ghitta 37aef3c58c - Enabling the capability of triggering specific test suites run on workflow dispatch 2024-04-05 16:50:45 +03:00
Emil Ghitta 5c65937cac - Expanding playwright coverage over restricted visibility kb articles functionality.
This coverage includes checks over the expected kb discoverability when using different accounts (non-whitelisted, whitelisted, signed out and admin). The checks are performed on the following SUMO areas: Search Results, Recent Revisions page, Localization Dashboards, KB Dashboards, Media Gallery, Article Discussions page, Frequent Topics page, What Links Here page, KB Category page & user document contributions page.
The above checks are performed against both restricted kb articles & restricted kb templates.

- Updated & Created some additional pages, flows & test data needed for testing the restricted kb articles functionality.
- Updating the workflow file to contain the newly added tests.
2024-03-29 11:23:40 +02:00
Emil Ghitta 9ef9d73007
- Replacing the data-event-label attribute from playwright xpath locators. (#5928)
- Fixing the workflow file to not quit the execution on test failure.
2024-03-26 10:01:11 -07:00
Emil Ghitta a860c3995a Updated the playwright.yml file to:
- Enable workflow_dispatch so that we can manually trigger the playwright tests when needed.
- Reduced the full functional recurrent test run from daily (Monday-Friday) execution to Monday & Friday only.
- Reduced the number of steps for running all test suites.
2024-03-21 19:27:25 +02:00
Emil Ghitta 0e8a96866f - Switching playwright reporting from HTML to Allure.
- Using allure.step() to define steps in allure report.
- Modifying the soft assertions to play nicely with allure reporting by interleaving check and step.
- Adding allure to poetry.
- Modifying the playwright.yml to exclude the HTML reporter & use Allure reporting instead.
- Attaching screencasts to Allure report on test failure.
2024-03-13 15:50:50 +02:00
Emil Ghitta c629cf7d2d Expanding playwright coverage over KB Dashboard and performing the following verifications:
- Ensure that the Live status, Needs Update, Ready for L10N, Stale & Expiry Date are successfully displayed & updated according to the corresponding modifications performed at KB article level.
- Ensure that changing the kb article title is also resembled inside the KB Dashboard.
- Ensure that the kb article title link (displayed inside the KB dashboard) redirects the user to the correct kb article page.

Updated the GH playwright workflow to include the new tests in our scheduled GH run.

Also performed some code refactoring by creating 'flow functions' for some repetitive kb actions (revision creation & article deletion).
2024-03-05 13:54:21 +02:00
Emil Ghitta 64a86d979f - Expanding Show History playwright coverage.
- Expanding playwright coverage over KB article revision page:
- Expanding playwright coverage over KB contributors:
- Expanding playwright coverage over the Recent Revisions dashboard:
- Updating the GH workflow file to include the newly added runs in our runs.
- Cleaning up the code a bit. Moving the cookie deletion inside the session creation function.
2024-02-26 00:16:58 +02:00
Emil Ghitta 1e8320ce87 - Expanding playwright coverage over kb discussion threads.
- Disabled the product support page tests until I find a proper fix.
- Trying to fix the create-sessions test by adding a wait.
- Updating the GH workflow file to add the updates to runners.
2024-02-02 22:47:11 +02:00
Emil Ghitta 5be1e80d9e - Expanding playwright assertion coverage over the Products page (https://support.allizom.org/en-US/products/), Products Support page (https://support.allizom.org/en-US/products/{Product}) and KB articles (KB creation, revision approval, revision content, visibility, keywords, search summary, kb submit form validations, Allow KB discussions option)
- Re-organized the folder structure in order to resemble the new IA better.
- Updating the workflow file to include the newly added tests in our GH runners.
2024-01-25 16:30:53 +02:00
Emil Ghitta 4c4fd57879
- Expanding Playwright AAQ coverage to test all "Question Tools" functionalities from posted questions. (#5823)
- Refactored some bits and pieces.
- Updated the workflow file to schedule the newly added coverage for execution.
- Updated workflow to execute Firefox tests on Monday, Wednesday and Friday and Chrome tests on Tuesday and Thursday.
2023-12-20 10:46:41 -08:00
Ryan Johnson 696baf8d2c
Revert "Revert "- Adding tests for: popular topics page, product solutions page, contact support page, submitted aaq questions for freemium products, freemium aaq form (#5812)" (#5817)" (#5818)
This reverts commit fff9d339fb.
2023-12-14 12:28:50 -08:00
Ryan Johnson fff9d339fb
Revert "- Adding tests for: popular topics page, product solutions page, contact support page, submitted aaq questions for freemium products, freemium aaq form (#5812)" (#5817)
This reverts commit db58b90a72.
2023-12-14 10:15:14 -08:00
Emil Ghitta db58b90a72
- Adding tests for: popular topics page, product solutions page, contact support page, submitted aaq questions for freemium products, freemium aaq form (#5812)
- Updating some tests, page messages and page methods.
- Adding custom wait for url & user agent retrival in test utilities.
- Adding more test data.
- Updating the workflow to include the newly added tests in our execution.
2023-12-14 10:13:03 -08:00
Emil Ghitta dc52e52627 Fixing failing test_messaging_system.py and adding reruns to playwright.yml 2023-12-07 13:00:38 +02:00
Emil Ghitta a25dd431d4
- Updating yml file (#5802)
- Adding playwright framework
2023-12-04 09:04:17 -08:00
Tasos Katsoulas 6408d3534b
Merge pull request #5790 from leplatrem/syseng-quality-standards
Implement some of the quality standards rules
2023-11-24 13:54:25 +02:00
Tasos Katsoulas 46b238e1de Add GH action to deploy docs 2023-11-23 18:27:32 +02:00
Mathieu Leplatre 1666a5b1ae
Add missing standard files 2023-11-23 13:18:22 +01:00
emilghittasv 2daeb17da2 - Added pytest-rerunfailures (to rerun test failures) and pytest-check (for soft asserts)
- Updated the base_page.py file
- Updated the test_utilities.py file. Now reading test data from json, loading GH secrets & implemented the fxa verification code fetching mechanism.
- Updated docker-compose.yml to contain selenoid instead of Selenium Grid.
- Added browsers.json for Firefox and Chrome Selenoid containers management.
- Added different flows for test usage: aaq_flo
(for AAQ submission flow), add_kb_article_flow.py (for KB articles submission), auth_flow.py (for SUMO auth flow), messaging_system_flow.py (flow for sending user messages), edit_profile_data_flow.py (for user data edit and fields clearence)
- Updated and created new messages and pages.
- Added test data
- Added a couple of tests to include coverage over contribute pages, footer section, homepage, top navbar, messaging system & user page tests
- Updated the conftest.py file. Also added functionality to create and attach screenshots to report for failed tests
- Updated pytest.ini to update markers
- Update workflow to have tests trigger at 8:00 AM UTC+3. Each Monday, Wednesday and Friday.
2023-09-20 14:41:54 +03:00