Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 42 additions & 0 deletions Homework2.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
import time

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.fedcm import account
from webdriver_manager.chrome import ChromeDriverManager
from time import sleep

# get the path to the ChromeDriver executable
driver_path = ChromeDriverManager().install()

# create a new Chrome browser instance
service = Service(driver_path)
driver = webdriver.Chrome(service=service)
driver.maximize_window()

# open the url
driver.get('https://www.target.com')

driver.find_element(By.XPATH,"//input[@id='search']").send_keys('toilet tissue')
sleep(5)

#search:
driver.find_element(By.XPATH,"//span[contains(.,'Account')]").click()
driver.find_element(By.XPATH, "//button[@data-test='accountNav-signIn']").click()
sleep(5)
driver.find_element(By.XPATH,"//h1[contains(.,'Sign in or create account')]")
driver.find_element(By.ID,"login")






time.sleep(20)






33 changes: 33 additions & 0 deletions Target_Test.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from time import sleep


# get the path to the ChromeDriver executable
driver_path = ChromeDriverManager().install()

# create a new Chrome browser instance
service = Service(driver_path)
driver = webdriver.Chrome(service=service)
driver.maximize_window()

# open the url
driver.get("https://www.target.com/")

driver.find_element(By.XPATH,"//span[contains(.,'Account')]").click()
driver.find_element(By.XPATH, "//button[@data-test='accountNav-signIn']").click()
sleep(5)
driver.find_element(By.XPATH,"//h1[contains(.,'Sign in or create account')]")
driver.find_element(By.ID,"login")










File renamed without changes.
1 change: 1 addition & 0 deletions features/environment.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from behave import given,when,then


def browser_init(context):
Expand Down
Empty file removed features/steps/__init__.py
Empty file.
30 changes: 30 additions & 0 deletions features/steps/cart_steps.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
from behave import when,given,then
from selenium import webdriver
from selenium.webdriver.common.by import By


from time import sleep


@given('Open Target page')
def open_main(context):
context.driver.get("https://www.target.com/")


@when('Click on add to cart icon')
def click_add_to_cart(context):
context.driver.find_element(By.CSS_SELECTOR,"#headerPrimary > a.styles_ndsLink__GUaai.styles_onLight__QKcK7.sc-7f25f5f4-1.sc-5c0d75eb-0.jaPeIi.iQmnSG > div > svg").click()

@then('verify empty cart message')
def verify_empty_cart_message(context):
expected_text= "Your cart is empty"
actual_text= context.driver.find_element(By.XPATH,"//h1[contains(@class,'M5gHh')]").text
assert actual_text== expected_text, f"Expected:{expected_text} but got Actual:{actual_text}"








32 changes: 0 additions & 32 deletions features/steps/product_search.py

This file was deleted.

23 changes: 23 additions & 0 deletions features/steps/signin_steps.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@

from behave import given,when,then
from selenium.webdriver.common.by import By


@given('Open the Target page')
def open_main(context):
context.driver.get("https://www.target.com/")

@when('Click signin button')
def click_signin_button(context):
context.driver.find_element(By.XPATH,"//span[contains(.,'Account')]").click()
context.driver.find_element(By.XPATH,"//button[@data-test='accountNav-signIn']").click()

@then('Verify signin form opened')
def verify_signin_form_opened(context):
actual_text= context.driver.find_element(By.XPATH,"//h1[contains(.,'Sign in or create account')]").text
expected_text= 'Sign in or create account'
assert actual_text in expected_text, f'Expected:{expected_text} but got Actual:{actual_text}'




Empty file removed features/tests/__init__.py
Empty file.
7 changes: 7 additions & 0 deletions features/tests/cart.feature
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Feature: Target empty cart test

Scenario: Your cart is empty message is shown
Given Open Target page
When Click on add to cart icon
Then verify empty cart message

7 changes: 0 additions & 7 deletions features/tests/product_search.feature

This file was deleted.

8 changes: 8 additions & 0 deletions features/tests/signin.feature
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Created by Davon Gilliam at 10/11/2025
Feature: Test for Logged Out Users signing in.
# Enter feature description here

Scenario: User can navigate to signin page.
Given Open the Target page
When Click signin button
Then Verify signin form opened
24 changes: 8 additions & 16 deletions sample_script.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@
from webdriver_manager.chrome import ChromeDriverManager
from time import sleep

from features.steps.product_search import click_search_icon

# get the path to the ChromeDriver executable
driver_path = ChromeDriverManager().install()

Expand All @@ -13,21 +15,11 @@
driver.maximize_window()

# open the url
driver.get('https://www.google.com/')

# populate search field
search = driver.find_element(By.NAME, 'q')
search.clear()
search.send_keys('Car')

# wait for 4 sec
sleep(4)

# click search button
driver.find_element(By.NAME, 'btnK').click()
driver.get("https://www.target.com/")

# verify search results
assert 'car'.lower() in driver.current_url.lower(), f"Expected query not in {driver.current_url.lower()}"
print('Test Passed')
driver.find_element(By.XPATH,"//span[contains(.,'Account')]").click()
driver.find_element(By.XPATH, "//button[@data-test='accountNav-signIn']").click()
sleep(5)
driver.find_element(By.XPATH,"//h1[contains(.,'Sign in or create account')]")
driver.find_element(By.ID,"login")

driver.quit()