Test Results (15 tests)
⏱️ Duration: 23.56s
❌ Error:
self = <tests.test_autopilot.TestAutopilot object at 0x7f1300b80520>
autopilot_page = <pages.autopilot_page.AutopilotPage object at 0x7f1300a98640>
login_page = <pages.login_page.LoginPage object at 0x7f1300aa4490>
base_url = 'https://promo.com'
@pytest.mark.skip_smoke
def test_a04_verify_logo_and_watermark_in_autopilot_wizard(
self, autopilot_page, login_page, base_url
):
"""
A04 Verify logo and watermark functionalities in the autopilot wizard
Feature scenario:
Given AI user is logged in
When I open Planner
And I click Generate video posts in the banner
And I select the "Promo.com" brand (has logo/watermark/colors configured)
Then Business assets logo dropdown is displayed
Then I verify dropdown if 2 options are displayed
And I verify if watermark is filled
And I verify if watermark has dropdown options
Note: the wizard defaults to whichever brand was last selected, and the
"Bed Head" scratch brand on this account has no logo/watermark/colors set.
We explicitly select "Promo.com" (the account's fully-configured brand)
so this test doesn't depend on fragile leftover UI state.
"""
login_page.login_directly(base_url, email_ai, get_password())
autopilot_page.go_to_planner(base_url)
autopilot_page.click_generate_in_banner()
> autopilot_page.select_existing_brand("Promo.com")
tests/test_autopilot.py:265:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
pages/autopilot_page.py:1950: in select_existing_brand
self.page.locator(self.AI_BUSINESS_NAME_INPUT).wait_for(state="visible", timeout=self.T_SLOW)
/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(
/
📸 Failure Screenshot:
⏱️ Duration: 23.49s
❌ Error:
self = <tests.test_autopilot.TestAutopilot object at 0x7f1300b80220>
autopilot_page = <pages.autopilot_page.AutopilotPage object at 0x7f12fb51fdf0>
login_page = <pages.login_page.LoginPage object at 0x7f12fafe6e00>
base_url = 'https://promo.com'
@pytest.mark.skip_smoke
@pytest.mark.skip_sanity
def test_a05_replace_brand_colors_in_autopilot_wizard(
self, autopilot_page, login_page, base_url
):
"""
A05 Replace brand colors in the autopilot wizard
Feature scenario:
Given AI user is logged in
When I open Planner
And I click Generate video posts in the banner
And I select the "Promo.com" brand (has logo/watermark/colors configured)
When I try to replace colors → Brand colors are being replaced
When I try to delete a color → Brand color has been deleted
Then a color is re-added so the brand isn't left empty for the next run
Note: see test_a04 docstring — "Promo.com" is selected explicitly because
it's the account's brand with colors already configured. The color removed
during the delete step is re-added afterwards so this test doesn't strip
the brand's colors bare for the next run (mirrors the empty-brand issue
that broke this test previously).
"""
login_page.login_directly(base_url, email_ai, get_password())
autopilot_page.go_to_planner(base_url)
autopilot_page.click_generate_in_banner()
> autopilot_page.select_existing_brand("Promo.com")
tests/test_autopilot.py:297:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
pages/autopilot_page.py:1950: in select_existing_brand
self.page.locator(self.AI_BUSINESS_NAME_INPUT).wait_for(state="visible", timeout=self.T_SLOW)
/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/_loca
📸 Failure Screenshot:
⏱️ Duration: 111.08s
❌ Error:
self = <tests.test_autopilot.TestAutopilot object at 0x7f1300b83b50>
autopilot_page = <pages.autopilot_page.AutopilotPage object at 0x7f12faf65f90>
login_page = <pages.login_page.LoginPage object at 0x7f12faf63eb0>
base_url = 'https://promo.com', button_key = 'export', option = 'cbe'
@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:405: in ensure_ai_posts_exist
self.wait_for_posts_generated(timeout=360_000)
pages/autopilot_page.py:464: 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/_locator.p
📸 Failure Screenshot:
⏱️ Duration: 81.32s
❌ Error:
self = <tests.test_autopilot.TestAutopilot object at 0x7f1300b81660>
autopilot_page = <pages.autopilot_page.AutopilotPage object at 0x7f12fadae7a0>
login_page = <pages.login_page.LoginPage object at 0x7f12fadae800>
base_url = 'https://promo.com', button_key = 'upload_to', option = 'voice'
@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:405: in ensure_ai_posts_exist
self.wait_for_posts_generated(timeout=360_000)
pages/autopilot_page.py:464: 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/_loca
📸 Failure Screenshot:
⏱️ Duration: 36.64s
❌ Error:
self = <tests.test_autopilot.TestAutopilot object at 0x7f1300b81840>
autopilot_page = <pages.autopilot_page.AutopilotPage object at 0x7f12f86f8070>
login_page = <pages.login_page.LoginPage object at 0x7f12f86f92d0>
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()
autopilot_page.open_ai_post(4)
> autopilot_page.click_dropdown_button_open_publish(button_key)
tests/test_autopilot.py:415:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
pages/autopilot_page.py:855: in click_dropdown_button_open_publish
self.wait_for_video_rendering()
pages/autopilot_page.py:863: in wait_for_video_rendering
self.page.locator(self.AI_VIDEO_BEING_RENDERED).wait_for(state="visible", timeout=self.T_NETWORK)
/usr/local/lib/python3
📸 Failure Screenshot: