Skip to content

Releases: tnypxl/BasinFramework

v1.1.3

10 Jul 17:21
2cd777d
Compare
Choose a tag to compare

Release 1.1.3

  • [NEW ✨] Added an ElementTimeout property to IBrowserConfig used in the Element class as a default inline timeout.
  • [NEW ✨] Added an IfTextMatches(string pattern) method to Element class that returns the element if text matches and throws an error if it doesn't.
  • [HOUSEKEEPING 🧹] Cleaned up Element class by removed unnecessary overload constructors. All element locations are based entirely on ILocatorBuilder.

v1.1.2

09 Jul 21:43
5f514ca
Compare
Choose a tag to compare

Release 1.1.2

  • Renamed Basin() to BasinEnv() and flatten accessible properties removing the need to access config details through a Config property.

v1.1.1

08 Jul 23:05
d988797
Compare
Choose a tag to compare

Release 1.1.1

  • Added a gang of additional HTML tags to PageMap class.
  • Renamed some key classes (for real this time). There methods and properties are the same.
    • Driver() => Browser()
    • BSN() => Basin()

v1.1.0

08 Jul 15:59
5da2a28
Compare
Choose a tag to compare

Release 1.1.0

  • Overhauled driver instance management to use decorators which provides a common api between browser classes and a cleaner path to class extension.
  • Moved majority of browser/driver code out of Basin.Selenium namespace and into Basin.Core.Browsers namespace.
  • Updated GitHub actions to automate publishing nugets and creating github releases.

v1.0.3

24 Jun 14:41
aedb323
Compare
Choose a tag to compare
Fix typo in README

v1.0.2

22 Jun 02:48
Compare
Choose a tag to compare
Bump version

v0.0.88

04 Jun 14:11
Compare
Choose a tag to compare
v0.0.88 Pre-release
Pre-release
Add version file

v0.0.86

03 Jun 20:07
Compare
Choose a tag to compare
v0.0.86 Pre-release
Pre-release
Fix issue where FoundBy does not use the fully built locator

v0.0.8

29 May 19:54
Compare
Choose a tag to compare
  • [FIX] PageCollections would throw a duplicate key error. It just returns if the key already exists.
  • [NEW] New Locator() class that builds an XPath selector for you and returns By.XPath. If more advance XPath usage is need, Just use the existing Locate methods.
    • Usage: new Locator("table").WithId("earningsTable").By;
  • [NEW] Add semantic locate methods. Its possible that there are some missing elements not very commonly used for browser automation. These initial methods should cover most if not all use cases. The Element() class was updated with an overload constructor that uses the new Locator() class.
    • Current: public Element LoginButton => Locate(By.CssSelector(".loginBtn"));
    • New: public Element LoginButton => Button.WithClass("loginBtn");)

v0.0.7

20 May 21:27
de45e8d
Compare
Choose a tag to compare

[NEW] Page Collections

public class SomeTabSection : Page {}
public class AnotherTabSection : Page {}

// Create a collection and page classes to it. It will initialize the class and store it in a dictionary
var PageCollection tabSections = new PageCollection();
tabSections.Add<SomeTabSection>();
tabSections.Add<AnotherTabSection>();

// Retrieve page from collection

tabSections.Get<AnotherTabSection>().SomeMethodInThatClass()

[Enhancement] Driver management

  • Made driver management a little more robust. You can use your own IWebDriver instances or use Basin driver builders to create them. (docs coming soon).