Test Results (15 tests)
⏱️ Duration: 318.73s
❌ Error:
self = <tests.test_autopilot.TestAutopilot object at 0x7fc4ccb827a0>
autopilot_page = <pages.autopilot_page.AutopilotPage object at 0x7fc4ccc86920>
login_page = <pages.login_page.LoginPage object at 0x7fc4ccc86950>
base_url = 'https://promo.com'
@pytest.mark.skip_testenv
def test_a01p_verify_actions_on_ai_posts_in_planner(
self, autopilot_page, login_page, base_url
):
"""
A01P Verify actions on the AI posts in planner (prod only)
Same scenario as A01T — runs on prod, skipped on testenv.
"""
login_page.login_directly(base_url, email_ai, get_password())
autopilot_page.go_to_planner(base_url)
autopilot_page.ensure_ai_posts_exist()
# i-icon tooltip
autopilot_page.hover_i_icon(1)
autopilot_page.assert_i_icon_tooltip_visible(1)
autopilot_page.assert_ai_badge_tooltip_visible()
# Post 1: full preview checks + regeneration
autopilot_page.open_ai_post(1)
autopilot_page.assert_ai_post_tag_visible()
autopilot_page.assert_aspect_ratios_visible()
autopilot_page.assert_preview_dropdown_buttons_visible()
autopilot_page.assert_preview_cta_buttons_visible()
autopilot_page.assert_preview_cta_tooltips()
autopilot_page.assert_video_loaded()
autopilot_page.assert_ai_specific_buttons_visible()
> autopilot_page.check_single_post_regeneration()
tests/test_autopilot.py:165:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
pages/autopilot_page.py:800: in check_single_post_regeneration
self.wait_for_regeneration_complete(timeout)
pages/autopilot_page.py:790: in wait_for_regeneration_complete
loader.wait_for(state="hidden", timeout=timeout)
/usr/local/lib/python3.10/dist-packages/playwright/sync_api/_generated.py:20539: in wait_for
self._sync(
/usr/local/lib/python3.10/dist-packages/playwright/_impl/_locator.py:748: in wait_for
await self._frame.w
📸 Failure Screenshot:
⏱️ Duration: 39.10s
❌ Error:
self = <tests.test_autopilot.TestAutopilot object at 0x7fc4ccb83880>
autopilot_page = <pages.autopilot_page.AutopilotPage object at 0x7fc4c7064550>
login_page = <pages.login_page.LoginPage object at 0x7fc4c70c37c0>
publisher_page = <pages.publisher_page.PublisherPage object at 0x7fc4c702c0d0>
base_url = 'https://promo.com'
@pytest.mark.skip_smoke
@pytest.mark.skip_sanity
def test_a06_schedule_an_ai_post(
self, autopilot_page, login_page, publisher_page, base_url
):
"""
A06 Schedule an AI post
Feature scenario:
Given AI user is logged in
When I open Planner
Then I clean all scheduled posts for the current month
When I click on 2 AI Post
And I click the schedule button
And I schedule an AI post (calendar confirm)
And I complete the schedule flow on the publisher page
And I click the view planner button
Then I verify that user is redirected to the planner
Then Assert amount of scheduled posts in planner: 1
"""
login_page.login_directly(base_url, email_ai, get_password())
autopilot_page.go_to_planner(base_url)
autopilot_page.clean_scheduled_posts()
autopilot_page.open_ai_post(2)
autopilot_page.click_schedule_button()
autopilot_page.schedule_ai_post()
publisher_page.select_schedule_mode()
publisher_page.click_publish()
publisher_page.assert_publish_review(PublisherPage.STATUS_SCHEDULE)
publisher_page.confirm_publish()
> autopilot_page.click_view_planner_button()
tests/test_autopilot.py:333:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
pages/autopilot_page.py:1133: in click_view_planner_button
self.page.locator(self.VIEW_PLANNER_BUTTON).wait_for(
/usr/local/lib/python3.10/dist-packages/playwright/sync_api/_generated.py:20539: in wait_for
self._sync(
/usr/local/lib/python3.10/dist-pac
📸 Failure Screenshot:
⏱️ Duration: 81.51s
❌ Error:
self = <tests.test_autopilot.TestAutopilot object at 0x7fc4ccb82440>
autopilot_page = <pages.autopilot_page.AutopilotPage object at 0x7fc4ccc87340>
login_page = <pages.login_page.LoginPage object at 0x7fc4ccc852a0>
base_url = 'https://promo.com', button_key = 'embed', option = 'regenerate'
@pytest.mark.skip_smoke
@pytest.mark.parametrize("button_key,option", [
("export", "cbe"),
("upload_to", "voice"),
("embed", "regenerate"),
])
def test_a09_redirect_to_publish_page_via_preview_buttons(
self, autopilot_page, login_page, base_url, button_key, option
):
"""
A09 Verify user is redirected to the publish page when using planner preview buttons
Feature scenario (Scenario Outline):
Given AI user is logged in
When I open Planner
Then I generate AI posts if needed
When I click on 4 AI Post
When I click the "<button>" button in the dropdown
Then Video is being rendered
Then New tab with Publish Page is opened
When I open Planner via link
When I click on 4 rendered AI Post
Then I check that "<option>" is not available
Then I remove the rendered post
Examples: export/cbe | upload_to/voice | embed/regenerate
"""
login_page.login_directly(base_url, email_ai, get_password())
autopilot_page.go_to_planner(base_url)
> autopilot_page.ensure_ai_posts_exist()
tests/test_autopilot.py:413:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
pages/autopilot_page.py:457: in ensure_ai_posts_exist
self.wait_for_posts_generated(timeout=360_000)
pages/autopilot_page.py:545: in wait_for_posts_generated
self.page.locator(self.PLANNER_AI_BADGE).first.wait_for(
/usr/local/lib/python3.10/dist-packages/playwright/sync_api/_generated.py:20539: in wait_for
self._sync(
/usr/local/lib/python3.10/dist-packages/playwright/_impl/_loc
📸 Failure Screenshot:
⏱️ Duration: 55.69s
❌ Error:
self = <tests.test_autopilot.TestAutopilot object at 0x7fc4ccb81000>
autopilot_page = <pages.autopilot_page.AutopilotPage object at 0x7fc4c52ff940>
login_page = <pages.login_page.LoginPage object at 0x7fc4c52fcb50>
base_url = 'https://promo.com'
@pytest.mark.skip_smoke
def test_a11_create_new_with_website(
self, autopilot_page, login_page, base_url
):
"""
A11 User provides a website in the Create new input
Feature scenario:
Given AI user is logged in
When User clicks the Create new button in header
Then Create new dropdown is displayed
When I provide website in the create new input
And I click the Generate button in the create new header
Then Business assets are fetched from the website
"""
login_page.login_directly(base_url, email_ai, get_password())
autopilot_page.go_to_planner(base_url)
autopilot_page.click_create_new_button()
autopilot_page.assert_create_new_dropdown_visible()
autopilot_page.click_create_new_multiple_videos()
autopilot_page.provide_website_in_create_new(sample_ai_website)
autopilot_page.click_generate_in_create_new()
> autopilot_page.assert_business_assets_fetched()
tests/test_autopilot.py:467:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
pages/autopilot_page.py:1470: in assert_business_assets_fetched
self.page.locator(self.PROMO_BUSINESS_NAME_FETCHED).wait_for(
/usr/local/lib/python3.10/dist-packages/playwright/sync_api/_generated.py:20539: in wait_for
self._sync(
/usr/local/lib/python3.10/dist-packages/playwright/_impl/_locator.py:748: in wait_for
await self._frame.wait_for_selector(
/usr/local/lib/python3.10/dist-packages/playwright/_impl/_frame.py:394: in wait_for_selector
await self._channel.send(
/usr/local/lib/python3.10/dist-packages/playwright/_impl/_connection.py:76: in send
return await self._connecti
📸 Failure Screenshot: