Changelog History
Page 1
-
v1.8.0 Changes
October 30, 2020🆕 New Features
- #391 Script executor
- 👍 #392 Support attributes declared at property level that target control's children
- #397
AtataContext
attributes - #398 Global level attributes
- 📇 #402 Add
TryGet
method toUIComponentMetadata
- 📇 #403 Add
Contains
method toUIComponentMetadata
- 📇 #414 Add
Add
methods toUIComponentMetadata
- 📇 #415 Add
Remove
andRemoveAll
methods toUIComponentMetadata
- #416 Add
TargetAllChildren
property toMulticastAttribute
- #420
ObjectCreator
🔄 Changes and Enhancements
- #394 Add parameterless generic
AddScreenshotConsumer
method toAtataContextBuilder
- #399 Inherit
UrlAttribute
fromMulticastAttribute
- #400 Inherit
NameAttribute
fromMulticastAttribute
- #401 Inherit
NavigationPageObjectCreatorAttribute
fromMulticastAttribute
- #404 Inherit
TraceLogAttribute
fromMulticastAttribute
- #405 Inherit
WindowTitleAttribute
fromMulticastAttribute
- #406 Inherit
ExtraXPathAttribute
fromMulticastAttribute
- #407 Inherit
GoTemporarilyAttribute
fromMulticastAttribute
- #408 Inherit
IdXPathForLabelAttribute
fromMulticastAttribute
- #409 Inherit
RandomizeCountAttribute
fromMulticastAttribute
- #410 Inherit
RandomizeIncludeAttribute
fromMulticastAttribute
- #411 Inherit
RandomizeExcludeAttribute
fromMulticastAttribute
- #412 Inherit
RandomizeNumberSettingsAttribute
fromMulticastAttribute
- #413 Inherit
RandomizeStringSettingsAttribute
fromMulticastAttribute
- #417 Inherit
TriggerAttribute
fromMulticastAttribute
- #418 Make universal
AttributeUsage
ofMulticastAttribute
and inheritors - ⚡️ #419 Update attributes that implement
IFindItemAttribute
🛠 Fixes
🔗 Links
📦 Atata 1.8.0 on NuGet
🚀 Atata 1.8.0 is Released - Atata Blog -
v1.7.0 Changes
August 27, 2020🚀 Check Atata 1.7.0 is Released blog post for major changes.
🆕 New Features
- #381 Ability to specify driver ports to ignore
- #388 Add extra
OrderedList<TOwner>
andUnorderedList<TOwner>
controls usingTextListItem<TOwner>
- #389 Add
BeInAscendingOrder
andBeInDescendingOrder
verification extension methods - #390 Add
TextListItem<TOwner>
control
🔄 Changes and Enhancements
- #377 Append preceding slash to XPath passed into
ControlList
'sSelectDataByExtraXPath
andSelectContentsByExtraXPath
methods - 🏗 #379 Log
DriverService
port duringAtataContext
build - #382 Add parameterless generic
AddLogConsumer
method toAtataContextBuilder
- 🌲 #383 Log: change <> characters to [] for collections
- 🌲 #384 Log: write bool value in lower case
🛠 Fixes
- 🏗 #378 Driver service is not disposed when driver instance fails to create during building of
AtataContext
- #380 Assertion of empty
ControlList<TItem, TOwner>
takes extra time - #385
WaitTo
andExpectTo
verifications are processed likeShould
(assertion) forUIComponent
verification methods - #386
InnerException
is lost when throwingNUnit.Framework.AssertionException
- #387
Randomizer.GetString
method fails when length is greater than 32
🔗 Links
📦 Atata 1.7.0 on NuGet
🚀 Atata 1.7.0 is Released - Atata Blog -
v1.6.0 Changes
August 05, 2020🚀 Check Atata 1.6.0 is Released blog post for major changes.
🆕 New Features
- #365 Add
PressHomeAttribute
andPressEndAttribute
triggers - #366 Add
IsVisibleInViewPort
toUIComponent<TOwner>
- #369 Add
HaveLength
verification method for strings - #370 Add
ScrollUp
/ScrollDown
methods toPageObject<TOwner>
- #371 Add
UriProvider<TOwner>
- #375 Add
ScrollToAttribute
trigger - #376 Add
Select*
methods toControlList<TItem, TOwner>
🔄 Changes and Enhancements
- #372 Add missing
ComponentTypeName
to control definitions
🛠 Fixes
- #373
FindAttribute
layers fail to reference term or property name
🔗 Links
📦 Atata 1.6.0 on NuGet
🚀 Atata 1.6.0 is Released - Atata Blog - #365 Add
-
v1.5.0 Changes
April 23, 2020🚀 Check Atata 1.5.0 is Released blog post for major changes.
🆕 New Features
- #346 Add
LocalDateTimeInput<TOwner>
control - #347 Add
Svg<TOwner>
control and a set of its nested controls - 🏗 #348 Add
WithGlobalCapability
method to driver builders - #350 Add
PageSource
property toPageObject<TOwner>
- 🌲 #353 Add log4net log consumer
- #355 Add
LazyInitializableLogConsumer
- #356 Ability to reset/change
FindAttribute
for control - 💻 #357 Big improvement of UI components search mechanics
- #360
FindAttribute
layers - #361 Add .NET 4.6 as target framework
- #363 Add
AtataContextModeOfCurrent
enum withThreadStatic
,Static
andAsyncLocal
values
🔄 Changes and Enhancements
- 🏗 #351 Add extra
WithArguments
method to driver builders - #358
FindAttribute
to inheritMulticastAttribute
- 🗄 #359 Deprecate
ControlFindingAttribute
- 📦 #362 Use
Atata.WebDriverExtras
package v1.3.0
🔗 Links
📦 Atata 1.5.0 on NuGet
🚀 Atata 1.5.0 is Released - Atata Blog - #346 Add
-
v1.4.0 Changes
November 19, 2019🚀 Check Atata 1.4.0 is Released blog post for major changes.
🆕 New Features
- #318 Expectation verification functionality
- #319 Waiting verification functionality
- #320 Add
WaitingTriggerAttribute
- #321 Add
WaitUntilEnabledAttribute
trigger - #323 Add
FindByScriptAttribute
- #324 Add overloaded collection verification methods with
IEnumerable
argument - #328 Add
FindByDescendantAttributeAttribute
- #329 Add
FindByDescendantIdAttribute
- #330 Add
ValueGetFormatAttribute
- #331 Add
ValueSetFormatAttribute
- #332 Add
UseNUnitAssertionExceptionType
method toAtataContextBuilder
- #333 Add
UseAllNUnitFeatures
method toAtataContextBuilder
🔗 Links
📦 Atata 1.4.0 on NuGet
🚀 Atata 1.4.0 is Released - Atata Blog -
v1.3.0 Changes
September 17, 2019🚀 Check Atata 1.3.0 is Released blog post for major changes.
🆕 New Features
- #299 Add 2 extra
Warn
methods toILogManager
- #300 Add 2 extra
Warn
methods toReport<TOwner>
- #303 Add
ResolveComponentFullName
method toUIComponentResolver
- #304 Add
AssertionResults
property toAtataContext
- #305 Aggregate (multiple) assertion functionality
- #306 Add
FindByAltAttribute
- #307 Add
ImageInput<TOwner>
control - #308 Add
ImageInput<TNavigateTo, TOwner>
control - #310 Add
For
property toLabel<T, TOwner>
🔄 Changes and Enhancements
- #297 Add and use
InvokeStaticAsLambda
extension methods forMethodInfo
- #298 Add and use
InvokeAsLambda
extension methods forMethodInfo
- #309 Add extra constructor to
ScreenshotAttribute
- 📇 #311 Support
VerifyTitleSettingsAttribute
at more metadata levels
🔗 Links
📦 Atata 1.3.0 on NuGet
🚀 Atata 1.3.0 is Released - Atata Blog - #299 Add 2 extra
-
v1.2.0 Changes
June 13, 2019🚀 Check Atata 1.2.0 is Released blog post for major changes.
🆕 New Features
- #271 Add
PageObjectVerificationProvider<TPageObject>
forPageObject<TOwner>
- #272 Add
FindItemByRelativeElementContentAttribute
- #273 Add
FindItemByParentContentAttribute
- #274 Add
FindItemByFollowingSiblingContentAttribute
- #275 Add
FindItemByPrecedingSiblingContentAttribute
- #276 Add
ContainSingle(TData expected)
verification extension methods - #277 Add
ContainSingle()
verification extension method - #278 Add
ContainSingle(Expression<Func<TItem, bool>> predicateExpression)
verification extension method - #279 Add
VerificationUtils
static class
🔄 Changes and Enhancements
- ⚡️ #280 Update
Contain(Expression<Func<TControl, bool>> predicateExpression)
verification extension method
🛠 Fixes
- #286 Fix
IUIComponentVerificationProviderExtensions.Exist
method to throwAssertionException
instead ofNoSuchElementException
🔗 Links
📦 Atata 1.2.0 on NuGet
🚀 Atata 1.2.0 is Released - Atata Blog - #271 Add
-
v1.1.0 Changes
May 02, 2019🚀 Check Atata 1.1.0 is Released blog post for major changes.
🆕 New Features
- #231 Add
AssociatedControlList<TItem, TOwner>
- #232 Add
LabelList<TOwner>
- #234 Add
ChildTextNodes
value toContentSource
- #235 Add
ChildTextNodesTrimmed
value toContentSource
- #236 Add
ChildTextNodesTrimmedAndSpaceJoined
value toContentSource
- #237 Add
FirstChildTextNode
value toContentSource
- #238 Add
LastChildTextNode
value toContentSource
- #239 Add
GetContent(ContentSource source)
method toUIComponent<TOwner>
- #242 Add
RefreshPageUntil
method toPageObject<TOwner>
- #246 Make
UriUtils
public - #259 Add
Label<T, TOwner>
control - ✅ #264 Add
TestNameSanitized
property toAtataContext
andLogEventInfo
- #266 Make
ActivatorEx
static class public - #267 Make
ObjectExpressionStringBuilder
class public - #270 Add
UseDriver(RemoteWebDriver driver)
method toAtataContextBuilder
🔄 Changes and Enhancements
- ⚡️ #228 Update
RadioButton<TOwner>.Check
method to avoid click when it is already checked - #229 Make
SequalComponentScopeLocateResult.ScopeSource
property obsolete - #233 Remake
ContentSourceAttribute
to behavior - ✨ #240 Enhance
TermResolver.GetEnumTerms
method to consider correctly enum attributes - ⚡️ #241 Update
SentenceTermFormatter
andMidSentenceTermFormatter
to lowercase only first word letter - 📦 #244 Use
Selenium.WebDriver
package v3.141.0 - 📦 #245 Use
Atata.WebDriverExtras
package v1.2.0 - #247 Add
CellXPath
property toFindByColumnIndexStrategy
- #248 Add
HeaderXPath
property toFindByColumnHeaderStrategy
- #249 Split
FindByColumnHeaderStrategy.Find
method - #250 Use
XPathString
inTermMatchExtensions.CreateXPathCondition
methods to handle string values containing quote character - 🗄 #251 Deprecate
TermMatchExtensions.GetXPathOperationFormat
extension method - #252 Use
ToShortIntervalString
andToLongIntervalString
TimeSpan
extension methods instead ofToIntervalString
appropriately - 🗄 #253 Deprecate
TimeSpanExtensions.ToIntervalString
extension method - #254 Add ability to declare
IFindItemAttribute
at any level - 🗄 #255 Deprecate
IItemsControl
interface - #257
OptionList<T, TOwner>.GetItemElements
method should throwNoSuchElementException
if no elements found - #258 Throw more detailed exceptions in
ControlListScopeLocator
- #260 Throw more detailed exceptions in
StrategyScopeLocator
- 👻 #261 Add inner exception to
AssertionException
when thrown inIDataVerificationProviderExtensions.Satisfy
methods - 👻 #262 Add inner exception to
AssertionException
when thrown inIUIComponentVerificationProviderExtensions.HaveChecked
method - #263 Make
UIComponent.ComponentName
property settable - #265 Make
AtataContext.Current
property settable - #268 Make
AtataContext.CleanUpActions
property public - #269 Make
AtataContext.BaseUrl
property settable
🔗 Links
📦 Atata 1.1.0 on NuGet
🚀 Atata 1.1.0 is Released - Atata Blog - #231 Add
-
v1.0.0 Changes
October 15, 2018🚀 Check Atata 1.0.0 is Released blog post for major changes.
💥 Breaking Changes
- #193 Change behavior of
FindSettingsAttribute
andTermFindSettingsAttribute
- 📇 #206 Fix typo in
ComponentDefinitonAttribute
property name ofUIComponentMetadata
- 🚚 #213 Remove
PhantomJSDriver
usage - 🚚 #218 Remove
WithCapabilities
method ofRemoteDriverAtataContextBuilder
- 🚚 #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
andGetAll
methods toUIComponentMetadata
without required parameters - #195 Add
AttributeSettingsAttribute
- #196 Add
AttributeFilter<TAttribute>
class - 📇 #197 Add overloaded
Get
andGetAll
methods toUIComponentMetadata
that useAttributeFilter<TAttribute>
- #210 Add
Do(Action action)
method toPageObject<TOwner>
- #212 Add
IsPresent
property toUIComponent<TOwner>
- #219 Add overloaded
WithOptions
methods toRemoteDriverAtataContextBuilder
- #220 Add overloaded
WithOptions
method toDriverAtataContextBuilder<TBuilder, TService, TOptions>
- #224 Create
Report<TOwner>
class and addReport
property toPageObject<TOwner>
🔄 Changes and Enhancements
- #192 Add
IsTargetSpecified
andTargetAnyType
properties toMulticastAttribute
- 📇 #198 Add
AttributeSettingsAttribute
filtering byTargetAttributeTypes
toUIComponentMetadata
- 📇 #199 Mark as obsolete old
Get
andGetAll
methods ofUIComponentMetadata
- #200 Make some members of
UIComponent
andUIComponent<TOwner>
public - 📇 #203 Add
Push
methods toUIComponentMetadata
- 📇 #204 Update
UIComponentResolver.CreateControlForProperty
method to push attributes into metadata - #205 Inherit
ScopeDefinitionAttribute
fromMulticastAttribute
- 📇 #207 Dynamic resolving of
UIComponentMetadata.ComponentDefinitionAttribute
- ✨ #208 Enhance
SequalComponentScopeLocateResult
to support multiple scope sources - #209 Change types of
UIComponentResolver
dictionaries toConcurrentDictionary<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 ofDataProvider<TData, TOwner>
🛠 Fixes
- #191 Incorrect applying of
MulticastAttribute
defined at component level - #201 Incorrect handling of
null
value by some setters of properties ofMulticastAttribute
- #202
FindByColumnHeaderStrategy
fails for table inside another table - #211
NoSuchElementException
is thrown when accessUIComponent.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 - #193 Change behavior of
-
v0.17.0 Changes
May 31, 2018🚀 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
andWaitingRetryInterval
- #155
ElementFindTimeout
andElementFindRetryInterval
- #156
VerificationTimeout
andVerificationRetryInterval
- #159 Add
ClickAndGo
method toControl<TOwner>
- #160 Add
DoubleClickAndGo
method toControl<TOwner>
- #161 Add
WaitForScriptAttribute
base trigger - #168 Add
SetRandom(Action<T> callback)
method toEditableField<T, TOwner>
- #169 Add
ContainingClasses
property toScopeDefinitionAttribute
- #170 Add
OnBuilding
andOnBuilt
methods toAtataContextBuilder
- #171 Add
OnDriverCreated
methods toAtataContextBuilder
- #175 Add
WithHostName
method toDriverAtataContextBuilder
3` - #177 Add
ActiveControl
property toPageObject<TOwner>
- #178 Add
PerformActions
method toPageObject<TOwner>
🔄 Changes and Enhancements
- #144 Inherit
CultureAttribute
fromMulticastAttribute
- #145 Inherit
FormatAttribute
fromMulticastAttribute
and makeFormatSettingsAttribute
obsolete - #146 Add more specific exceptions to
AtataMapper
- 👍 #148 Add
<frame>
element support toFrame<TOwner>
control in addition to<iframe>
- 0️⃣ #151 Set default format for path variables of
DateTime
type forFileScreenshotConsumer
- 👍 #152 Add support of inner format of string path variables for
FileScreenshotConsumer
- #154
BaseRetryTimeout
andBaseRetryInterval
- #162 Inherit
WaitForAngularJSAjaxAttribute
fromWaitForScriptAttribute
- #163 Inherit
WaitForJQueryAjaxAttribute
fromWaitForScriptAttribute
- #164 Inherit
WaitForDocumentReadyStateAttribute
fromWaitForScriptAttribute
- 📦 #165 Use
Selenium.WebDriver
package v3.12.1 - 📦 #166 Use
Atata.WebDriverExtras
package v1.0.0 - 0️⃣ #172 Set
"*"
as defaultscopeXPath
ofScopeDefinitionAttribute
- ⚡️ #176 Update
WithFixOfCommandExecutionDelay
method ofDriverAtataContextBuilder
3to 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