Skip to content

Port integration tests to Cucumber-jvm #18

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
php-coder opened this issue Jun 26, 2014 · 2 comments
Closed

Port integration tests to Cucumber-jvm #18

php-coder opened this issue Jun 26, 2014 · 2 comments

Comments

@php-coder
Copy link
Owner

Cucumber (https://github.com/cucumber/cucumber-jvm) is a great framework for writing acceptance tests. We definitely should use it instead of our's own.

  • Read https://cucumber.io/docs/reference
  • Read https://cucumber.io/docs/reference/jvm
  • Read https://thomassundberg.wordpress.com/2014/05/29/cucumber-jvm-hello-world/
  • Read http://www.slideshare.net/alan_parkinson/test-automation-with-cucumberjvm
  • Watch https://www.youtube.com/playlist?list=PL_noPv5wmuO_t6yYbPfjwhJFOOcio89tI
    • Setting Up Cucumber
    • Writing a Basic Script
    • Writing a Basic WebDriver Script
    • Parameter Handling
    • Scenario Data Tables
    • Scenario Outline Data Tables
    • Scenario Hooks
    • Maven Setup
    • Cucumber Reporting
    • Test Suites
    • Drop Downs, Checkboxes and Radios
    • Background Script
    • Multiple Step Definition Classes
    • Page Objects
  • Port our test
    • WhenAdminAddCategory
      • categoryNameEnShouldNotBeTooShort()
      • categoryNameRuShouldNotBeTooShort()
      • categoryNameEnShouldNotBeTooLong()
      • categoryNameRuShouldNotBeTooLong()
      • categoryNameEnShouldBeUnique()
      • categoryNameRuShouldBeUnique()
      • categoryNameEnWithAllowedCharactersShouldBeAccepted()
      • categoryNameRuWithAllowedCharactersShouldBeAccepted()
      • categoryNameEnWithForbiddenCharactersShouldBeRejected()
      • categoryNameRuWithForbiddenCharactersShouldBeRejected()
      • categoryNameEnShouldNotStartsFromHyphen()
      • categoryNameRuShouldNotStartsFromHyphen()
      • categoryNameEnShouldNotEndsWithHyphen()
      • categoryNameRuShouldNotEndsWithHyphen()
      • categoryNameEnShouldBeStripedFromLeadingAndTrailingSpaces()
      • categoryNameRuShouldBeStripedFromLeadingAndTrailingSpaces()
      • shouldBeRedirectedToPageWithInfoAboutCategoryAfterCreation()
      • categoryShouldBeAvailableForChoosingAtPageWithSeries()
    • WhenAdminAddCountry
      • countryNameEnShouldNotBeTooShort()
      • countryNameRuShouldNotBeTooShort()
      • countryNameEnShouldNotBeTooLong()
      • countryNameRuShouldNotBeTooLong()
      • countryNameEnShouldBeUnique()
      • countryNameRuShouldBeUnique()
      • countryNameEnWithAllowedCharactersShouldBeAccepted()
      • countryNameRuWithAllowedCharactersShouldBeAccepted()
      • countryNameEnWithForbiddenCharactersShouldBeRejected()
      • countryNameRuWithForbiddenCharactersShouldBeRejected()
      • countryNameEnShouldNotStartsFromHyphen()
      • countryNameRuShouldNotStartsFromHyphen()
      • countryNameEnShouldNotEndsWithHyphen()
      • countryNameRuShouldNotEndsWithHyphen()
      • countryNameEnShouldBeStripedFromLeadingAndTrailingSpaces()
      • countryNameRuShouldBeStripedFromLeadingAndTrailingSpaces()
      • shouldBeRedirectedToPageWithInfoAboutCountryAfterCreation()
      • countryShouldBeAvailableForChoosingAtPageWithSeries()
    • WhenAdminAddSeries
      • catalogNumbersShouldAcceptValidValues()
      • quantityShouldBeANumber()
      • quantityShouldBeNotLessThanLimit()
      • quantityShouldNotBeGreaterThanLimit()
      • catalogNumbersShouldRejectInvalidValues()
      • catalogPricesShouldRejectInvalidValues()
      • commentShouldNotBeTooLong()
      • imageSizeMustBeGreaterThanZero()
      • issueYearFieldShouldHaveOptionsForRangeFrom1840ToCurrentYear()
      • catalogNumbersShouldBeStripedFromSpaces()
      • commentShouldBeStripedFromLeadingAndTrailingSpaces()
      • shouldCreateSeriesWithOnlyRequiredFieldsFilled()
      • shouldCreateSeriesWithAllFieldsFilled()
      • shouldIgnoreDuplicatedCatalogNumbers()
      • shouldAllowExistingCatalogNumbers()
    • WhenAdminAtIndexPage
      • shouldExistsWelcomeText()
      • shouldExistsLinkForAddingSeries()
      • shouldExistsLinkForAddingCountries()
      • shouldExistsLinkForAddingCategories()
    • WhenAnonymousUserActivateAccount
      • activationKeyShouldBeAutoFilledFromURL()
      • loginAndPasswordShouldBeDifferent()
      • passwordAndConfirmationShouldMatch()
      • loginShouldNotBeTooShort()
      • mostShortLoginShouldBeAccepted()
      • loginShouldNotBeTooLong()
      • mostLongLoginShouldBeAccepted()
      • loginWithAllowedCharactersShouldBeAccepted()
      • loginWithForbiddenCharactersShouldBeRejected()
      • loginShouldBeUnique()
      • nameShouldNotBeTooLong()
      • nameWithAllowedCharactersShouldBeAccepted()
      • nameWithForbiddenCharactersShouldBeRejected()
      • nameShouldNotStartsFromHyphen()
      • nameShouldNotEndsWithHyphen()
      • nameShouldBeStripedFromLeadingAndTrailingSpaces()
      • passwordShouldNotBeTooShort()
      • mostShortPasswordShouldBeAccepted()
      • passwordWithAllowedCharactersShouldBeAccepted()
      • passwordWithForbiddenCharactersShouldBeRejected()
      • activationKeyShouldNotBeTooShort()
      • activationKeyShouldNotBeTooLong()
      • activationKeyWithForbiddenCharactersShouldBeRejected()
      • wrongActivationKeyShouldBeRejected()
      • afterActivationShouldExistsMessageWithLinkForAuthentication()
      • activationShouldPassWhenUserProvidedEmptyName()
    • WhenAnonymousUserAddCategory
      • shouldExistsErrorMessage()
      • shouldExistsErrorCode()
    • WhenAnonymousUserAddCountry
      • shouldExistsErrorMessage()
      • shouldExistsErrorCode()
    • WhenAnonymousUserAddSeries
      • shouldExistsErrorMessage()
      • shouldExistsErrorCode()
    • WhenAnonymousUserAtForbiddenPage
      • shouldExistsErrorMessage()
      • shouldExistsErrorCode()
    • WhenAnonymousUserAtIndexPage
      • shouldAbsentWelcomeText()
      • linkForAddingSeriesShouldBeAbsent()
      • linkForAddingCategoriesShouldBeAbsent()
      • linkForAddingCountriesShouldBeAbsent()
    • WhenAnonymousUserAtUnauthorizedPage
      • shouldExistsErrorMessage()
      • shouldExistsErrorCode()
    • WhenAnonymousUserAuthenticates
      • emptyValuesShouldBeConsideredAsInvalidCredentials()
      • invalidCredentialsShouldBeRejected()
      • validCredentialsShouldAuthenticateUserOnSite()
    • WhenAnonymousUserOpenNotExistingCategoryPage
      • shouldShow404Page()
    • WhenAnonymousUserOpenNotExistingCountryPage
      • shouldShow404Page()
    • WhenAnonymousUserOpenNotExistingSeriesPage
      • shouldShow404Page()
    • WhenAnonymousUserOpenNotExistingPage
      • shouldExistsErrorMessage()
      • shouldExistsErrorCode()
      • incidentShouldBeLoggedToDatabase()
      • shouldShow404Page()
    • WhenAnonymousUserOpenTogglzConsole
      • shouldExistsErrorMessage()
      • shouldExistsErrorCode()
    • WhenAnonymousUserRegisterAccount
      • shouldExistsMessageWithLinkToAuthenticationPage()
      • emailShouldNotBeTooLong()
      • emailShouldBeValid()
      • emailShouldBeStripedFromLeadingAndTrailingSpaces()
      • successfulMessageShouldBeShownAfterRegistration()
      • emailWithActivationKeyShouldBeSentAfterRegistration()
    • WhenUserAddSeries
      • catalogNumbersShouldAcceptValidValues()
      • quantityShouldBeANumber()
      • quantityShouldBeNotLessThanLimit()
      • quantityShouldNotBeGreaterThanLimit()
      • catalogNumbersShouldRejectInvalidValues()
      • catalogPricesShouldRejectInvalidValues()
      • imageSizeMustBeGreaterThanZero()
      • issueYearFieldShouldHaveOptionsForRangeFrom1840ToCurrentYear()
      • catalogNumbersShouldBeStripedFromSpaces()
      • shouldCreateSeriesWithOnlyRequiredFieldsFilled()
      • shouldCreateSeriesWithAllFieldsFilled()
      • shouldIgnoreDuplicatedCatalogNumbers()
      • shouldAllowExistingCatalogNumbers()
    • WhenUserAtActivateAccountPage
      • messageShouldBeShown()
      • messageShouldBeShown()
      • formWithLegendShouldBeAbsent()
    • WhenUserAtAuthPage
      • messageShouldBeShown()
      • formWithLegendShouldBeAbsent()
    • WhenUserAtIndexPage
      • shouldExistsWelcomeText()
      • shouldExistsLinkForAddingSeries()
      • linkForAddingCategoriesShouldBeAbsent()
      • linkForAddingCountriesShouldBeAbsent()
    • WhenUserAtRegisterAccountPage
      • messageShouldBeShown()
      • formWithLegendShouldBeAbsent()
    • WhenUserLogsOut.shouldRedirectAndClearSession()
    • WhenUserOpenTogglzConsole
      • shouldExistsErrorMessage()
      • shouldExistsErrorCode()
  • Port checks for required fields
    • add category
    • add country
    • add series
    • registration
    • activation
  • Port standart checks
  • Review and remove branch re_131_thucidies
  • Review and remove branch re_131_thucidies_new
  • Review and remove branch re_131_thucidies_new_new
  • Review and remove branch gh18_serenity
  • Update README.md
  • Add package-info.java files
  • Update wiki if it's required
  • Remove TestNG dependency
  • Remove fest-assert dependency
  • Update src/main/config/checkstyle-suppressions.xml
  • Update src/main/config/checkstyle.xml (remove testng and fest; add junit and hamcrest)
@php-coder php-coder added this to the 0.5 milestone Jun 1, 2015
@php-coder php-coder changed the title Port integration tests to Thucydides Port integration tests to Serenity (ex-Thucydides) Jun 5, 2015
@php-coder php-coder changed the title Port integration tests to Serenity (ex-Thucydides) Port integration tests to Serenity BDD (ex-Thucydides) Jun 14, 2015
@php-coder php-coder self-assigned this Jul 22, 2015
@php-coder php-coder modified the milestones: 0.4, 0.5 Jul 24, 2015
@php-coder php-coder assigned php-coder and unassigned php-coder Jul 24, 2015
@php-coder php-coder changed the title Port integration tests to Serenity BDD (ex-Thucydides) Port integration tests to Cucumber-jvm Oct 25, 2015
@php-coder php-coder added the impact/changelog This change should be reflected in the NEWS.txt file label Jan 15, 2016
@php-coder php-coder modified the milestones: 0.5, 0.4 Mar 18, 2016
@php-coder php-coder modified the milestones: 0.4, 0.5 Jul 14, 2016
@php-coder php-coder modified the milestones: next, 0.5 Jul 29, 2016
@php-coder
Copy link
Owner Author

php-coder commented Oct 5, 2016

Currently I think that we shouldn't port all existing tests to Cucumber but only high-level ones (they're in the group logic). Other tests should be ported to Spring MVC Test Framework.

@php-coder php-coder modified the milestones: next, 0.4 May 26, 2019
@php-coder
Copy link
Owner Author

Superseded by #530

php-coder added a commit that referenced this issue Oct 26, 2019
Correction for 747486a commit.

The error was:
ERROR: .travis.yml; puzzle at line #18; Space expected at 19:2; make sure all lines in the puzzle
body have a single leading space.

[skip ci]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant