Skip to content

Releases: atata-framework/atata

1.0.0

15 Oct 18:37
Compare
Choose a tag to compare

Check Atata 1.0.0 is Released blog post for major changes.

Breaking Changes

  • #193 Change behavior of FindSettingsAttribute and TermFindSettingsAttribute
  • #206 Fix typo in ComponentDefinitonAttribute property name of UIComponentMetadata
  • #213 Remove PhantomJSDriver usage
  • #218 Remove WithCapabilities method of RemoteDriverAtataContextBuilder
  • #221 Remove obsolete types and members inclusive prior v0.15.0

New Features

  • #185 Add Image<TOwner> control
  • #189 Add RightClickParentAttribute trigger
  • #194 Add overloaded Get and GetAll methods to UIComponentMetadata without required parameters
  • #195 Add AttributeSettingsAttribute
  • #196 Add AttributeFilter<TAttribute> class
  • #197 Add overloaded Get and GetAll methods to UIComponentMetadata that use AttributeFilter<TAttribute>
  • #210 Add Do(Action action) method to PageObject<TOwner>
  • #212 Add IsPresent property to UIComponent<TOwner>
  • #219 Add overloaded WithOptions methods to RemoteDriverAtataContextBuilder
  • #220 Add overloaded WithOptions method to DriverAtataContextBuilder<TBuilder, TService, TOptions>
  • #224 Create Report<TOwner> class and add Report property to PageObject<TOwner>

Changes and Enhancements

  • #192 Add IsTargetSpecified and TargetAnyType properties to MulticastAttribute
  • #198 Add AttributeSettingsAttribute filtering by TargetAttributeTypes to UIComponentMetadata
  • #199 Mark as obsolete old Get and GetAll methods of UIComponentMetadata
  • #200 Make some members of UIComponent and UIComponent<TOwner> public
  • #203 Add Push methods to UIComponentMetadata
  • #204 Update UIComponentResolver.CreateControlForProperty method to push attributes into metadata
  • #205 Inherit ScopeDefinitionAttribute from MulticastAttribute
  • #207 Dynamic resolving of UIComponentMetadata.ComponentDefinitionAttribute
  • #208 Enhance SequalComponentScopeLocateResult to support multiple scope sources
  • #209 Change types of UIComponentResolver dictionaries to ConcurrentDictionary<TKey, TValue>
  • #214 Use Selenium.WebDriver package v3.14.0
  • #215 Use Atata.WebDriverExtras package v1.1.0
  • #217 Improve FileInput<TOwner> to handle hidden input
  • #222 Mark as obsolete Get method of DataProvider<TData, TOwner>

Fixes

  • #191 Incorrect applying of MulticastAttribute defined at component level
  • #201 Incorrect handling of null value by some setters of properties of MulticastAttribute
  • #202 FindByColumnHeaderStrategy fails for table inside another table
  • #211 NoSuchElementException is thrown when access UIComponent.IsVisible property of hidden/missing element
  • #216 Navigation using relative URL fails on Linux

Links

Atata 1.0.0 on NuGet
Atata 1.0.0 is Released - Atata Blog

0.17.0

31 May 19:46
Compare
Choose a tag to compare

Check Atata 0.17.0 Released blog post for major features.

New Features

  • #140 Add access chain cache for UI component scope
  • #149 Add FrameSetPage<TOwner> base page object class
  • #153 WaitingTimeout and WaitingRetryInterval
  • #155 ElementFindTimeout and ElementFindRetryInterval
  • #156 VerificationTimeout and VerificationRetryInterval
  • #159 Add ClickAndGo method to Control<TOwner>
  • #160 Add DoubleClickAndGo method to Control<TOwner>
  • #161 Add WaitForScriptAttribute base trigger
  • #168 Add SetRandom(Action<T> callback) method to EditableField<T, TOwner>
  • #169 Add ContainingClasses property to ScopeDefinitionAttribute
  • #170 Add OnBuilding and OnBuilt methods to AtataContextBuilder
  • #171 Add OnDriverCreated methods to AtataContextBuilder
  • #175 Add WithHostName method to DriverAtataContextBuilder`3
  • #177 Add ActiveControl property to PageObject<TOwner>
  • #178 Add PerformActions method to PageObject<TOwner>

Changes and Enhancements

  • #144 Inherit CultureAttribute from MulticastAttribute
  • #145 Inherit FormatAttribute from MulticastAttribute and make FormatSettingsAttribute obsolete
  • #146 Add more specific exceptions to AtataMapper
  • #148 Add <frame> element support to Frame<TOwner> control in addition to <iframe>
  • #151 Set default format for path variables of DateTime type for FileScreenshotConsumer
  • #152 Add support of inner format of string path variables for FileScreenshotConsumer
  • #154 BaseRetryTimeout and BaseRetryInterval
  • #162 Inherit WaitForAngularJSAjaxAttribute from WaitForScriptAttribute
  • #163 Inherit WaitForJQueryAjaxAttribute from WaitForScriptAttribute
  • #164 Inherit WaitForDocumentReadyStateAttribute from WaitForScriptAttribute
  • #165 Use Selenium.WebDriver package v3.12.1
  • #166 Use Atata.WebDriverExtras package v1.0.0
  • #172 Set "*" as default scopeXPath of ScopeDefinitionAttribute
  • #176 Update WithFixOfCommandExecutionDelay method of DriverAtataContextBuilder`3 to invoke WithHostName method

Fixes

  • #150 FileScreenshotConsumer doesn't handle path variables
  • #157 NoSuchElementException can be thrown during verification before timeout
  • #167 Fails to work with NLog v4.5.0

Links

Atata 0.17.0 on NuGet
Atata 0.17.0 Released - Atata Blog

0.16.0

19 Dec 08:16
Compare
Choose a tag to compare

Check Atata 0.16.0 Released blog post for major features.

New Features

  • #117 Add WithSettings extension method for IDataVerificationProvider<TData, TOwner>
  • #118 Add HaveClass verification extension method
  • #121 Add ConsoleLogConsumer
  • #126 Add GetByXPathCondition method to ControlList<TItem, TOwner>
  • #129 Add RestartDriver method to AtataContext
  • #131 Add TelInput<TOwner> control
  • #132 Add FileInput<TOwner> control
  • #133 Add SearchInput<TOwner> control
  • #134 Add EmailInput<TOwner> control
  • #135 Add UrlInput<TOwner> control
  • #137 Add OrdinaryPage

Changes and Enhancements

  • #113 Improve control name generation by expression
  • #114 Enhance FindItemByLabel finding
  • #119 Change Index handling of VerifyH1-VerifyH6 triggers
  • #120 Update TextOutputLogConsumer
  • #122 Use Atata.WebDriverExtras package v0.14.0
  • #123 Change HiddenInput<T, TOwner> control finding
  • #124 Implement IPropertySettings by MulticastAttribute
  • #125 Inherit TermSettingsAttribute from MulticastAttribute
  • #127 Enhance Select<T, TOwner> control
  • #128 Remove Selenium.Support package reference
  • #130 Update AtataContextBuilder to throw when driver is not specified
  • #136 Use Selenium.WebDriver package v3.8.0

Fixes

  • #112 Match verification method fails for regex with curly brackets
  • #116 Should.Not.Exist() fails for controls with specific find strategies

Links

Atata 0.16.0 on NuGet
Atata 0.16.0 Released - Atata Blog

0.15.0

12 Oct 16:51
Compare
Choose a tag to compare

Check Atata 0.15.0 Released blog post for major features and .NET Core issues.

Breaking Changes

  • #98 Remove obsolete members of UIComponentMetadata
  • #99 Remove obsolete member of UIComponentResolver

New Features

  • #86 Add GetScope method to UIComponent
  • #95 Add Wait method to UIComponent<TOwner>
  • #96 Add WaitForAttribute trigger
  • #101 Fix command execution delay of WebDriver for .NET Core 2.0
  • #103 Culture configuration

Changes and Enhancements

  • #87 Enhance ScopeSourceExtensions methods
  • #88 Use Selenium.WebDriver and Selenium.Support packages v3.6.0
  • #89 Use Atata.WebDriverExtras package v0.13.0
  • #90 Handle StaleElementReferenceException in WaitForElementAttribute
  • #91 Handle StaleElementReferenceException in Exist verification extension method
  • #92 Handle StaleElementReferenceException in data verification extension methods
  • #93 Support .NET Standard 2.0
  • #94 Replace WaitUntil enum with Until
  • #97 Log execution of WaitForElementAttribute trigger
  • #100 Add DriverAtataContextBuilder<TBuilder> base driver builder class
  • #102 Add WithLocalDriverPath method to DriverAtataContextBuilder<TBuilder, TService, TOptions>

Fixes

  • #85 Control Init and DeInit triggers don't execute

Links

Atata 0.15.0 on NuGet
Atata 0.15.0 Released - Atata Blog

0.14.0

22 Sep 11:41
Compare
Choose a tag to compare

Check Atata 0.14.0 Released blog post for major features.

Breaking Changes

  • #67 Remove obsolete screenshot consumer extension methods

New Features

  • #58 Resolve log consumer by type name or alias
  • #60 Add AtataMapper class
  • #62 Resolve screenshot consumer by type name or alias
  • #64 Add RemoteDriverAtataContextBuilder
  • #72 Multi-driver configuration
  • #74 AtataContext global configuration
  • #76 Add Clear method to AtataContextBuilder
  • #78 AtataContext static mode
  • #79 Add ScrollTo method to Control<TOwner>

Changes and Enhancements

  • #57 Add LoggerName property to NLogConsumer
  • #59 Add WithProperties method to AtataContextBuilder<TContext>
  • #61 Enhance FileScreenshotConsumer
  • #63 Enhance AtataContext driver builders
  • #65 Test name configuration enhancement
  • #66 Move screenshot consumer extension methods from AtataContextBuilderExtensions
  • #68 Move log consumer extension methods from AtataContextBuilderExtensions
  • #69 Move NUnit related extension methods from AtataContextBuilderExtensions
  • #70 Add WithLoggerName extension method for AtataContextBuilder<NLogConsumer>
  • #71 Move driver extension methods from AtataContextBuilderExtensions
  • #73 Rename Build method of AtataContext to Configure
  • #75 Rename SetUp method of AtataContextBuilder to Build
  • #80 Add DriverAlias property to LogEventInfo
  • #81 Add "driver-alias" NLog event property in NLogConsumer
  • #82 Use Atata.WebDriverExtras package v0.12.0
  • #83 Use Selenium.WebDriver and Selenium.Support packages v3.5.2
  • #84 Set default retry timeout to 5 seconds

Links

Atata 0.14.0 on NuGet
Atata 0.14.0 Released - Atata Blog

0.13.0

27 Jun 14:52
Compare
Choose a tag to compare

Check Atata 0.13.0 Released blog post for major features.

Breaking Changes

  • #50 Change default search of controls
  • #55 Change TermCase.Title and add TermCase.Capitalized

New

  • #23 Add TraceLogAttribute
  • #26 Add SetRandom extension method for EditableField`2 with nullable data type
  • #27 Add support of RandomizeIncludeAttribute to string and number EditableField`2 controls
  • #29 OuterXPath functionality
  • #30 Add Metadata to ControlList`2
  • #34 Add ComponentSize property to UIComponent`1
  • #35 Add ComponentLocation property to UIComponent`1
  • #37 Add HierarchicalControl`2 and HierarchicalItem`2 controls
  • #40 Add MulticastAttribute
  • #43 Add Resolve method to UIComponentChildrenList`1
  • #44 Add controls for hierarchical lists
  • #45 Add attribute properties to UIComponentAttributeProvider`1
  • #46 Add ContentSourceAttribute
  • #48 Bool randomization
  • #49 Assertion exception type configuration
  • #51 Add DragAndDropTo methods to Control`1
  • #52 Behaviors for drag and drop
  • #54 Add Press method to PageObject`1

Changes

  • #24 Make UIComponent.Scope property public
  • #28 Update ILogManager error logging methods
  • #32 Set "./" OuterXPath to items of UnorderedList`2 and OrderedList`2
  • #36 Add IsVisible and Triggers properties to IUIComponent`1
  • #41 Inherit FindSettingsAttribute from MulticastAttribute
  • #47 Add indexers to ItemsControl`2
  • #53 Change log messages for AtataContext setup

Fixes

  • #31 Component attributes of inherited control type does not apply to sub-components of base type
  • #33 FindByCssStrategy throws exception in safely mode
  • #42 ControlType and ParentComponentType properties of ControlFindingAttribute doesn't handle non-generic types

Links

Atata 0.13.0 on NuGet
Atata 0.13.0 Released - Atata Blog

0.12.0

05 May 15:19
Compare
Choose a tag to compare

New

  • #3 Add Contents property and SelectData method to ControlList`2
  • #5 Add GenerateRandomValue method to EditableField`2
  • #6 Add BeEquivalent, EqualSequence and Contain extension methods for collection of IDataProvider`2
  • #12 Add OrderedList, UnorderedList and ListItem controls
  • #15 Add WaitForAngularJSAjaxAttribute trigger
  • #17 Add GetOneOf and GetManyOf methods to Randomizer
  • #18 Enum randomization
  • #20 Add SwitchToFrame and SwitchToRoot methods to PageObject`1
  • #21 Add Frame`1 and Frame`2 controls

Changes

  • #4 Change control name resolving using FindByLabelAttribute
  • #9 Add ability to set ControlDefinition at property level
  • #10 Add support for declared properties to ControlList`2
  • Update Selenium.WebDriver and Selenium.Support package references to version 3.4.0

Fixes

  • #7 Fix Should.Not.Contain* methods
  • #14 Fix UIComponent.CleanUp method execution
  • #16 Fix Should.BeInRange methods

Links

Atata 0.12.0 on NuGet

0.11.4

20 Feb 12:05
Compare
Choose a tag to compare

New

  • Add protected virtual OnInitCompleted method to PageObject`1
  • Add another Do<TComponent, TNavigateTo>(Func<TOwner, TComponent> childControlGetter, Func<TComponent, TNavigateTo> navigationAction) method to PageObject`1
  • Add IndexOf method to ControlList`2
  • Add TakeScreenshotOnNUnitError extension method for AtataContextBuilder

Changes

  • Change PageObject`1 initialization methods execution order
  • Update screenshot functionality

Fixes

  • Fix LogNUnitError extension method of AtataContextBuilder according to 3.6.0 version of NUnit

Links

Atata 0.11.4 on NuGet

0.11.3

09 Feb 12:51
Compare
Choose a tag to compare

New

  • Add AllTriggers property to UIComponentTriggerSet`1
  • Add Remove and RemoveAll methods to UIComponentTriggerSet`1
  • Add PressEscapeAttribute trigger

Changes

  • Update triggers functionality

Links

Atata 0.11.3 on NuGet

0.11.2

02 Feb 11:39
Compare
Choose a tag to compare

New

  • Add BeforeAccess and AfterAccess trigger events
  • Add Disabled and ReadOnly properties to UIComponentAttributeProvider`1
  • Add IsVisible property to UIComponent`1
  • Add Label`1 control
  • Add BeEquivalent, EqualSequence and Contain collection extension methods for IDataVerificationProvider`2
  • Add BeVisible and BeHidden extension methods for IUIComponentVerificationProvider`2

Changes

  • Update triggers functionality
  • Add non-generic Execute method support to SpecificTriggerAttribute
  • Change UIComponentAttributeProvider1.Class` property type to DataProvider<IEnumerable<string>, TOwner>
  • Mark IDataProvider`2.Get method as obsolete
  • Make UIComponent`1.GetContent method protected virtual

Fixes

  • Add BeforeGet and AfterGet triggers execution

Links

Atata 0.11.2 on NuGet