mirror of
https://github.com/Mueller-Patrick/Betterzon.git
synced 2026-04-27 15:50:11 +00:00
BETTERZON-99: Adding some basic cucumber tests (#45)
This commit is contained in:
@@ -1,6 +1,10 @@
|
||||
import cucumber.api.CucumberOptions;
|
||||
import cucumber.api.junit.Cucumber;
|
||||
import io.cucumber.junit.Cucumber;
|
||||
import io.cucumber.junit.CucumberOptions;
|
||||
import org.junit.AfterClass;
|
||||
import org.junit.BeforeClass;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.openqa.selenium.firefox.FirefoxDriver;
|
||||
import stepdefs.Preconditions;
|
||||
|
||||
@RunWith(Cucumber.class)
|
||||
@CucumberOptions(
|
||||
@@ -9,4 +13,13 @@ import org.junit.runner.RunWith;
|
||||
)
|
||||
|
||||
public class RunTest {
|
||||
@BeforeClass
|
||||
public static void setup() {
|
||||
Preconditions.driver= new FirefoxDriver();
|
||||
}
|
||||
|
||||
@AfterClass
|
||||
public static void teardown() {
|
||||
Preconditions.driver.close();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
package stepdefs;
|
||||
|
||||
import org.openqa.selenium.WebDriver;
|
||||
|
||||
public class Preconditions {
|
||||
public static WebDriver driver;
|
||||
}
|
||||
@@ -1,67 +1,68 @@
|
||||
package stepdefs;
|
||||
|
||||
import cucumber.api.java.en.Given;
|
||||
import cucumber.api.java.en.Then;
|
||||
import cucumber.api.java.en.When;
|
||||
import io.cucumber.java.PendingException;
|
||||
import io.cucumber.java.en.Given;
|
||||
import io.cucumber.java.en.Then;
|
||||
import io.cucumber.java.en.When;
|
||||
|
||||
public class PriceAlarm {
|
||||
@Given("^the user has at least (\\d+) price alarm set$")
|
||||
public void the_user_has_at_least_price_alarm_set(int arg1) throws Exception {
|
||||
}
|
||||
@Given("^the user has at least (\\d+) price alarm set$")
|
||||
public void the_user_has_at_least_price_alarm_set(int arg1) throws Exception {
|
||||
}
|
||||
|
||||
@When("^the user clicks on the profile icon$")
|
||||
public void the_user_clicks_on_the_profile_icon() throws Exception {
|
||||
}
|
||||
@When("^the user clicks on the profile icon$")
|
||||
public void the_user_clicks_on_the_profile_icon() throws Exception {
|
||||
}
|
||||
|
||||
@Then("^the profile details popup should open$")
|
||||
public void the_profile_details_popup_should_open() throws Exception {
|
||||
}
|
||||
@Then("^the profile details popup should open$")
|
||||
public void the_profile_details_popup_should_open() throws Exception {
|
||||
}
|
||||
|
||||
@When("^the user clicks on price alarms$")
|
||||
public void the_user_clicks_on_price_alarms() throws Exception {
|
||||
}
|
||||
@When("^the user clicks on price alarms$")
|
||||
public void the_user_clicks_on_price_alarms() throws Exception {
|
||||
}
|
||||
|
||||
@Then("^the price alarm list should open$")
|
||||
public void the_price_alarm_list_should_open() throws Exception {
|
||||
}
|
||||
@Then("^the price alarm list should open$")
|
||||
public void the_price_alarm_list_should_open() throws Exception {
|
||||
}
|
||||
|
||||
@Then("^the price alarm list should contain at least (\\d+) entry$")
|
||||
public void the_price_alarm_list_should_contain_at_least_entry(int arg1) throws Exception {
|
||||
}
|
||||
@Then("^the price alarm list should contain at least (\\d+) entry$")
|
||||
public void the_price_alarm_list_should_contain_at_least_entry(int arg1) throws Exception {
|
||||
}
|
||||
|
||||
@Then("^the price alarm list should contain a maximum of (\\d+) entries per page$")
|
||||
public void the_price_alarm_list_should_contain_a_maximum_of_entries_per_page(int arg1) throws Exception {
|
||||
}
|
||||
@Then("^the price alarm list should contain a maximum of (\\d+) entries per page$")
|
||||
public void the_price_alarm_list_should_contain_a_maximum_of_entries_per_page(int arg1) throws Exception {
|
||||
}
|
||||
|
||||
@Given("^the user is on the price alarm list page$")
|
||||
public void the_user_is_on_the_price_alarm_list_page() throws Exception {
|
||||
}
|
||||
@Given("^the user is on the price alarm list page$")
|
||||
public void the_user_is_on_the_price_alarm_list_page() throws Exception {
|
||||
}
|
||||
|
||||
@When("^the user clicks on the \"([^\"]*)\" button next to a price alarm$")
|
||||
public void the_user_clicks_on_the_button_next_to_a_price_alarm(String arg1) throws Exception {
|
||||
}
|
||||
@When("^the user clicks on the \"([^\"]*)\" button next to a price alarm$")
|
||||
public void the_user_clicks_on_the_button_next_to_a_price_alarm(String arg1) throws Exception {
|
||||
}
|
||||
|
||||
@Then("^a popup should open asking the user to confirm the removal$")
|
||||
public void a_popup_should_open_asking_the_user_to_confirm_the_removal() throws Exception {
|
||||
}
|
||||
@Then("^a popup should open asking the user to confirm the removal$")
|
||||
public void a_popup_should_open_asking_the_user_to_confirm_the_removal() throws Exception {
|
||||
}
|
||||
|
||||
@When("^the user confirms the removal of the price alarm$")
|
||||
public void the_user_confirms_the_removal_of_the_price_alarm() throws Exception {
|
||||
}
|
||||
@When("^the user confirms the removal of the price alarm$")
|
||||
public void the_user_confirms_the_removal_of_the_price_alarm() throws Exception {
|
||||
}
|
||||
|
||||
@Then("^the price alarm should be removed from the database$")
|
||||
public void the_price_alarm_should_be_removed_from_the_database() throws Exception {
|
||||
}
|
||||
@Then("^the price alarm should be removed from the database$")
|
||||
public void the_price_alarm_should_be_removed_from_the_database() throws Exception {
|
||||
}
|
||||
|
||||
@Then("^a popup should open where the user can edit the alarm$")
|
||||
public void a_popup_should_open_where_the_user_can_edit_the_alarm() throws Exception {
|
||||
}
|
||||
@Then("^a popup should open where the user can edit the alarm$")
|
||||
public void a_popup_should_open_where_the_user_can_edit_the_alarm() throws Exception {
|
||||
}
|
||||
|
||||
@When("^the user clicks on the \"([^\"]*)\" button$")
|
||||
public void the_user_clicks_on_the_button(String arg1) throws Exception {
|
||||
}
|
||||
@When("^the user clicks on the \"([^\"]*)\" button$")
|
||||
public void the_user_clicks_on_the_button(String arg1) throws Exception {
|
||||
}
|
||||
|
||||
@Then("^the price alarm should be updated in the database$")
|
||||
public void the_price_alarm_should_be_updated_in_the_database() throws Exception {
|
||||
}
|
||||
@Then("^the price alarm should be updated in the database$")
|
||||
public void the_price_alarm_should_be_updated_in_the_database() throws Exception {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,52 +1,72 @@
|
||||
package stepdefs;
|
||||
|
||||
import cucumber.api.PendingException;
|
||||
import cucumber.api.java.en.Given;
|
||||
import cucumber.api.java.en.Then;
|
||||
import cucumber.api.java.en.When;
|
||||
import io.cucumber.java.PendingException;
|
||||
import io.cucumber.java.en.Given;
|
||||
import io.cucumber.java.en.Then;
|
||||
import io.cucumber.java.en.When;
|
||||
import org.openqa.selenium.By;
|
||||
import org.openqa.selenium.Keys;
|
||||
import org.openqa.selenium.WebElement;
|
||||
import org.openqa.selenium.support.ui.ExpectedConditions;
|
||||
import org.openqa.selenium.support.ui.WebDriverWait;
|
||||
|
||||
public class SearchProduct {
|
||||
@Given("^the user is on the landing page$")
|
||||
public void the_user_is_on_the_landing_page() throws Exception {
|
||||
}
|
||||
@Given("^the user is on the landing page$")
|
||||
public void the_user_is_on_the_landing_page() throws Exception {
|
||||
//throw new PendingException();
|
||||
Preconditions.driver.get("https://betterzon.xyz");
|
||||
WebElement logo = (new WebDriverWait(Preconditions.driver, 10))
|
||||
.until(ExpectedConditions.elementToBeClickable(By.cssSelector(".logo")));
|
||||
}
|
||||
|
||||
@When("^the user enters the search term \"([^\"]*)\" and clicks search$")
|
||||
public void the_user_enters_the_search_term_and_clicks_search(String arg0) throws Exception {
|
||||
}
|
||||
@When("^the user enters the search term \"([^\"]*)\" and clicks search$")
|
||||
public void the_user_enters_the_search_term_and_clicks_search(String searchTerm) throws Exception {
|
||||
WebElement searchField = Preconditions.driver.findElement(By.cssSelector(".ng-untouched.ng-pristine.ng-valid"));
|
||||
searchField.sendKeys(searchTerm);
|
||||
searchField.sendKeys(Keys.ENTER);
|
||||
WebElement logo = (new WebDriverWait(Preconditions.driver, 10))
|
||||
.until(ExpectedConditions.elementToBeClickable(By.cssSelector(".logo")));
|
||||
}
|
||||
|
||||
@Then("^the user should see the error page \"([^\"]*)\"$")
|
||||
public void the_user_should_see_the_error_page(String arg0) throws Exception {
|
||||
}
|
||||
@Then("^the user should see the error page \"([^\"]*)\"$")
|
||||
public void the_user_should_see_the_error_page(String arg0) throws Exception {
|
||||
WebElement noProdsFoundMsg = (new WebDriverWait(Preconditions.driver, 10))
|
||||
.until(ExpectedConditions.elementToBeClickable(By.cssSelector(".ng-star-inserted")));
|
||||
assert(noProdsFoundMsg.getText().contains("No Products found!"));
|
||||
}
|
||||
|
||||
@Given("^the user is not logged in$")
|
||||
public void the_user_is_not_logged_in() throws Exception {
|
||||
}
|
||||
@Given("^the user is not logged in$")
|
||||
public void the_user_is_not_logged_in() throws Exception {
|
||||
}
|
||||
|
||||
@Given("^the user is logged in$")
|
||||
public void the_user_is_logged_in() throws Exception {
|
||||
}
|
||||
@Given("^the user is logged in$")
|
||||
public void the_user_is_logged_in() throws Exception {
|
||||
}
|
||||
|
||||
@Then("^the user should see a list of products$")
|
||||
public void the_user_should_see_a_list_of_products() throws Exception {
|
||||
}
|
||||
@Then("^the user should see a list of products$")
|
||||
public void the_user_should_see_a_list_of_products() throws Exception {
|
||||
WebElement product = (new WebDriverWait(Preconditions.driver, 10))
|
||||
.until(ExpectedConditions.elementToBeClickable(By.cssSelector(".productItem.ng-star-inserted")));
|
||||
assert(product.isDisplayed());
|
||||
}
|
||||
|
||||
@When("^the user clicks on the first product$")
|
||||
public void the_user_clicks_on_the_first_product() throws Exception {
|
||||
}
|
||||
@When("^the user clicks on the first product$")
|
||||
public void the_user_clicks_on_the_first_product() throws Exception {
|
||||
}
|
||||
|
||||
@Then("^the user should see the product detail page$")
|
||||
public void the_user_should_see_the_product_detail_page() throws Exception {
|
||||
}
|
||||
@Then("^the user should see the product detail page$")
|
||||
public void the_user_should_see_the_product_detail_page() throws Exception {
|
||||
}
|
||||
|
||||
@Then("^the set price alarm box should show \"([^\"]*)\"$")
|
||||
public void the_set_price_alarm_box_should_show(String arg0) throws Exception {
|
||||
}
|
||||
@Then("^the set price alarm box should show \"([^\"]*)\"$")
|
||||
public void the_set_price_alarm_box_should_show(String arg0) throws Exception {
|
||||
}
|
||||
|
||||
@When("^the user sets a price alarm$")
|
||||
public void the_user_sets_a_price_alarm() throws Exception {
|
||||
}
|
||||
@When("^the user sets a price alarm$")
|
||||
public void the_user_sets_a_price_alarm() throws Exception {
|
||||
}
|
||||
|
||||
@Then("^the user should receive an email confirming the price alarm$")
|
||||
public void the_user_should_receive_an_email_confirming_the_price_alarm() throws Exception {
|
||||
}
|
||||
@Then("^the user should receive an email confirming the price alarm$")
|
||||
public void the_user_should_receive_an_email_confirming_the_price_alarm() throws Exception {
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user