This repository has been archived by the owner on Nov 23, 2021. It is now read-only.
Releases: wttech/bobcat
Releases · wttech/bobcat
2.3.0
New features 💥
- A brand new Analytics module #334 thanks to @annabudziszewska and @kaczymuczy!
Enhancements ✨
n/a
Bugfixes 🐛
n/a
Changes 🔧
n/a
Migration notes ➡️
n/a
2.2.0
New features 💥
- Headless mode in Chrome can now be enabled by setting
webdriver.chrome.headless
totrue
#188 bb-appium
module introduced- contains bindings to Appium-related drivers
- required now for the Appium dependency
Enhancements ✨
- internal rework of how drivers are initialised - you can now your own
DriverCreator
easily! #314 - [AEM] Core components compatibility #381 #382
- Assured the ability to properly configure the following AEM Core Components (v2.8) (#373, changes in
bb-aem-65
):- Breadcrumb
- Text
- Title
- Image
- Teaser
- Button
- List
- Content Fragment
- Content Fragment List
- Form container
- Form text field
- Form options field
- Form hidden field
- Form button
- updates:
Bugfixes 🐛
- n/a
Changes 🔧
webvdriver.maximize
is now set by default tofalse
Migration notes ➡️
- if you had not
webdriver.maximize
property in you current config, add the following to preserve the previous behavior:webdriver.maximize: true
2.1.0
New features 💥
- AEM 6.4.2 module - new module that includes fixes for selector changes introduced in SP2 #321 #326
- AEM 6.5 module - new module providing support for AEM 6.5 #322 #329
- new Rich Text option handling (requires migration steps when upgrading to 6.5)
- added
no_label
handling to the dialog - includes selector fixes from 6.4.2
- rewritten how the dialog is configured from YAML files - now it is more extendable and maintainable for the future
- Tests and examples: https://github.com/Cognifide/bobcat-aem-tests/tree/master/aem65
Enhancements ✨
- Jetty updated to latest version #324
- Maintenance work, updates thanks to Dependabot!
- Bump license-maven-plugin from 1.9 to 2.0.0 #338
- Bump jacoco-maven-plugin from 0.8.2 to 0.8.4 #339
- Bump greenmail from 1.5.8 to 1.5.10 #340
- Bump slf4j-api from 1.7.25 to 1.7.26 #341
- Bump maven-source-plugin from 2.4 to 3.1.0 #342
- Bump maven-release-plugin from 2.5.2 to 2.5.3 #343
- Bump apache-rat-plugin from 0.12 to 0.13 #347
- Bump maven-surefire-plugin from 2.22.1 to 2.22.2 #346
- Bump sortpom-maven-plugin from 2.5.0 to 2.10.0 #344
- Bump junit.jupiter.version from 5.3.1 to 5.5.1 #345 ⭐️
- Bump commons-lang3 from 3.8 to 3.9 #351
- Bump guice.version from 4.2.0 to 4.2.2 #349
- Bump guava from 26.0-jre to 28.0-jre #357
- Bump assertj-core from 3.11.1 to 3.12.2 #352
- Bump maven-javadoc-plugin from 2.10.3 to 3.1.1 #356
- Removed unused dependencies (#364):
org.reflections:reflections
javax.jcr:jcr
org.apache.maven:maven-artifact
org.apache.jackrabbit:jackrabbit-jcr2dav
Changes 🤔
⚠️ For Cucumber users: we've changed the way Bobcat will handle integration with this framework moving forward! For rationale and migrations steps, please take a look at: https://cognifide.github.io/bobcat/docs/cucumber/
Bugfixes 🐛
- Bobcat now correctly loads timings properties #328
- Bobcat now throws error instead of returning null when there's a problem with retrieving AEM authentication cookie #332 #337
Migration notes ➡️
- When migrating from earlier versions of AEM to 6.5:
- following options need to be updated in your component YAML config files:
RICHTEXT_FONT_FORMAT
with valuesBOLD/ITALIC/UNDERLINE
->RTE_OPTIONS
with valuesBold/Underline/Italic/Unlink
(button titles); this works also for any other simple options (i.e. without any submenus)RICHTEXT_LIST
with valuesNUMBERED/BULLET/INDENT/OUTDENT
->RTE_OPTIONS_LISTS
with valuesBullet List/Numbered List/Indent/Outdent
- for more info, see: https://cognifide.github.io/bobcat/docs/modules/aem/componentconfiguration/#dialog-fields-types
- following options need to be updated in your component YAML config files:
- Cucumber users, please take a look at: https://cognifide.github.io/bobcat/docs/cucumber/
2.0.3
2.0.2
2.0.1
😸 Bobcat 2.0 is here 🍾
New features 💥
- new modules!
bb-aem-core
bb-aem-64
- #292 runmodes
- BobcatPageFactory - allows to use same page representations for different paths
- PageObjectInterface - allows to create one API for Page Object and use different implementations
- Action Controller - introduces actions to Bobcat - used in AEM modules but new actions can be written in any test cases
Enhancements ✨
- Selenium updated to 3.141.0
Other 📦
- we've removed
bb-annotations
module: #299 - deprecated API and modules have been removed: #293
- modules:
bb-aem-classic
,bb-aem-touch-ui
,bb-reports
,bb-junit
,bb-aem-common
- APIs:
com.cognifide.qa.bb.reporter.Reporter
annotation from core modulecom.cognifide.qa.bb.qualifier.Retry
and whole retry mechanism (goes away withbb-junit
)com.cognifide.qa.bb.config.LegacyConfig
com.cognifide.qa.bb.assertions.soft
- we recommend using AssertJ'sSoftAssertions
com.cognifide.qa.bb.loadable
HtmlUnit
andGhostDriver
- we encourage using real browsers 😺
- see
1.6.0 release notes
for more info and migration notes
- modules:
Migration notes ➡️
- if you were using the
@CurrentScope
field automatically generated by our annotation processor, now you have to explicitly declare it in your page object - please refer to previous versions if you are migrating from any version < 1.6.0
1.6.0
⚠️ This release may contain API breaking changes! ⚠️
Please review migration notes below for more details.
New features
- #286 new Cookie setup mechanism
- PR: #287
⚠️ introduces backward-incompatible changes, see Migration notes- following properties removed:
webdriver.secure.proxy.cookie
webdriver.secure.proxy.cookie_name
webdriver.secure.proxy.cookie_value
webdriver.secure.proxy.cookie_domain
base.url
- with the above, the old mechanism of adding a proxy cookie is removed
- new mechanism for automated cookie loading has been introduced - loading a list of predefined cookies from a
cookies.yaml
file - the auto-loading does not fire when the file is not present or when the
cookies.loadAutomatically
is set tofalse
- #288 brand new
BobcatWait
!- documentation: https://cognifide.github.io/bobcat/waiting/
com.cognifide.qa.bb.provider.selenium.BobcatWait
is now deprecated - usecom.cognifide.qa.bb.wait.BobcatWait
instead- part of the API is not available in the new reworked version, new options are available though - see the documentation
- expected conditions from
com.cognifide.qa.bb.expectedconditions
are deprecated - use the official WebDriverExpectedConditions
or the newly introducedWebElementConditions
- new properties are available to control the timings (see docs)
Enhancements
- Selenium updated to 3.14.0 #270
- Bobcat dependencies updated #243
- part of our API is now deprecated: #243 #228
bb-aem-classic
,bb-aem-touch-ui
,bb-reports
,bb-junit
,bb-aem-common
modules will be marked as EOL going forward; other modules will replace them; the latest versions will still be available via Maven Central but not supported by Bobcat team- deprecated APIs:
com.cognifide.qa.bb.reporter.Reporter
annotation from core modulecom.cognifide.qa.bb.qualifier.Retry
and whole retry mechanism (goes away withbb-junit
)com.cognifide.qa.bb.config.LegacyConfig
- will be replaced totally withYamlConfig
- Bobcat switched to YAML config by default; to continue using the Legacy properties-based one, users now need to run tests with
bobcat.config=legacy
System property⚠️
- Bobcat switched to YAML config by default; to continue using the Legacy properties-based one, users now need to run tests with
com.cognifide.qa.bb.assertions.soft
- we recommend using AssertJ'sSoftAssertions
com.cognifide.qa.bb.loadable
- #266
HtmlUnit
andGhostDriver
- we encourage using real browsers 😺
More details: #284
Bugfixes
Migration notes
When migrating from <1.6.0 versions:
- Re: #243
- Appium was updated from
4.1.2
to6.1.0
; please consult any required changes in Appium docs: https://github.com/appium/java-client#changelog
- Appium was updated from
- Re: #274; CucumberJVM was updated to the latest version,
3.0.2
and it introduces backward-incompatible changes@Transform
and otherStream
related annotation were removed; for more information, please read https://cucumber.io/blog/2018/05/19/announcing-cucumber-jvm-3-0-0 and
https://docs.cucumber.io/cucumber/configuration- In
@CucumberOptions
make sure thatformat
is replaced withplugin
if you still haven't done so cucumber-guice.properties
file should be renamed tocucumber.properties
- Re: #286; if you had a proxy cookie set in your project:
- remove following properties:
webdriver.secure.proxy
webdriver.secure.proxy.cookie_name
webdriver.secure.proxy.cookie_value
webdriver.secure.proxy.cookie_domain
- Create
cookies.yaml
under yoursrc/test/resources
folder - Inside, provide the following:
- remove following properties:
cookies:
- name: '<NAME OF YOUR COOKIE>'
value: '<VALUE OF YOUR COOKIE>'
path: '<YOUR PATH>'
domain: '<YOUR DOMAIN>'
expiry: '<EXPIRY DATE IN FORMAT YYYY-MM-DD HH:MM:SS>'
secure: <false/true>
httpOnly: <false/true>
- Re: #288:
com.cognifide.qa.bb.provider.selenium.BobcatWait
is now deprecated - usecom.cognifide.qa.bb.wait.BobcatWait
insteadbobcatWait.withTimeout(x).until(condition)
should be replaced with:- if
x>10
, then usebobcatWait.tweak(new TimingsBuilder.explicitTimeout(x).build()).until(condition)
- if
x<=10
(i.e. you are satisfied with default timeouts), simply remove thewithTimeout(x)
call and leavebobcatWait.until(condition)
- if
bobcatWait.withTimeout(x).until(condition, y)
should be replaced with:- if
y>500
then usebobcatWait.tweak(new TimingsBuilder.pollingInterval(y).build()).until(condition)
- if
y>=500
(i.e. you are satisfied with default timeouts), simply remove thewithTimeout(x)
and the second argument inuntil()
method and leavebobcatWait.until(condition)
- if
- please refer to documentation for more details
BobcatWait.sleep(timeout)
is deprecated and will be removed in the future - it's a chance to review your tests and apply proper explicit waiting- if you were using
CommonExpectedConditions
orUrlExpectedConditions
- please switch to Selenium'sExpectedConditions
orWebElementConditions
1.5.0
New features
- JUnit 5 support comes to Bobcat! #153 #264
- Allure reports will be the reporting engine used by Bobcat in version 2.0: #265
Enhancements
- quality of the development:
- Configure SonarCloud for the project
- #252 Code cleanup - convert 'core tests' to 'integration tests'
- docs have been refreshed and updated a bit: #259 #253 #245
Bugfixes
Bobcat 1.4.0
New features:
- #227 Simplified Bobcat configuration
- #238 Additonal contexts can now be loaded from separate files
- docs: https://github.com/Cognifide/bobcat/wiki/Configuring-Bobcat#yaml-based-configuration