Test Results (15 tests)
⏱️ Duration: 13.72s
❌ Error:
self = <tests.test_autopilot.TestAutopilot object at 0x7f8c91514e80>
autopilot_page = <pages.autopilot_page.AutopilotPage object at 0x7f8c91428f70>
login_page = <pages.login_page.LoginPage object at 0x7f8c90780520>
base_url = 'https://promo.com'
@pytest.mark.skip_smoke
def test_a03_verify_validation_errors_for_ai_onboarding(
self, autopilot_page, login_page, base_url
):
"""
A03 Verify validation errors for AI onboarding inputs
Feature scenario:
Given AI user is logged in
When I open Planner
And I click Generate video posts in the banner
And I click Add new brand
Then Continue button is disabled
When I continue without a website
And I click the Generate AI posts button
Then Validation errors are displayed
When I provide business name and business description
Then Validation errors are hidden
"""
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.click_add_new_brand()
tests/test_autopilot.py:230:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
pages/autopilot_page.py:969: in click_add_new_brand
btn.wait_for(state="visible", timeout=self.T_ACTION)
/usr/local/lib/python3.10/dist-packages/playwright/sync_api/_generated.py:20298: in wait_for
self._sync(
/usr/local/lib/python3.10/dist-packages/playwright/_impl/_locator.py:741: 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:69: in send
return await self._connection.wrap_api_call(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <playwright._impl._con
📸 Failure Screenshot:
⏱️ Duration: 18.39s
❌ Error:
self = <tests.test_autopilot.TestAutopilot object at 0x7f8c915152d0>
autopilot_page = <pages.autopilot_page.AutopilotPage object at 0x7f8c8b9feda0>
login_page = <pages.login_page.LoginPage object at 0x7f8c8b9fef50>
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
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
"""
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.assert_logo_dropdown_displayed()
tests/test_autopilot.py:259:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
pages/autopilot_page.py:1042: in assert_logo_dropdown_displayed
self.page.locator(self.AI_ONBOARDING_WATERMARK_BOX_FILLED).wait_for(
/usr/local/lib/python3.10/dist-packages/playwright/sync_api/_generated.py:20298: in wait_for
self._sync(
/usr/local/lib/python3.10/dist-packages/playwright/_impl/_locator.py:741: 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:69: in send
return await self._connection.wrap_api_call(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <playwright._impl._connection.Connection object at 0x7f8c91511840>
cb =
📸 Failure Screenshot:
⏱️ Duration: 13.71s
❌ Error:
self = <tests.test_autopilot.TestAutopilot object at 0x7f8c91514100>
autopilot_page = <pages.autopilot_page.AutopilotPage object at 0x7f8c905d4490>
login_page = <pages.login_page.LoginPage object at 0x7f8c91424bb0>
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
When I try to replace colors → Brand colors are being replaced
When I try to delete a color → Brand color has been deleted
"""
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.replace_first_brand_color()
tests/test_autopilot.py:282:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
pages/autopilot_page.py:1091: in replace_first_brand_color
first_color.wait_for(state="visible", timeout=self.T_ACTION)
/usr/local/lib/python3.10/dist-packages/playwright/sync_api/_generated.py:20298: in wait_for
self._sync(
/usr/local/lib/python3.10/dist-packages/playwright/_impl/_locator.py:741: 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:69: in send
return await self._connection.wrap_api_call(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <playwright._impl._connection.Connection object at 0x7f8c91511840>
cb = <function Channel.send.<locals>.<lambda> at 0x7f8c89d8ad40>
is_internal = False, title = None
📸 Failure Screenshot:
⏱️ Duration: 45.14s
❌ Error:
self = <tests.test_autopilot.TestAutopilot object at 0x7f8c91516110>
autopilot_page = <pages.autopilot_page.AutopilotPage object at 0x7f8c89dcc790>
login_page = <pages.login_page.LoginPage object at 0x7f8c89dcfe50>
publisher_page = <pages.publisher_page.PublisherPage object at 0x7f8c89dccc70>
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()
autopilot_page.page.wait_for_load_state("domcontentloaded", timeout=15_000)
assert "/planner/" in autopilot_page.page.url
> autopilot_page.assert_scheduled_posts_count(1)
tests/test_autopilot.py:319:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
pages/autopilot_page.py:948: in assert_scheduled_posts_count
sc
📸 Failure Screenshot: