Best FlaUI code snippet using FlaUI.Core.UITests.LegacyCalc.Win10Calc
CalculatorTests.cs
Source:CalculatorTests.cs  
...20        [Test]21        public void CalculatorTest()22        {23            var window = App.GetMainWindow(Automation);24            var calc = OperatingSystem.IsWindows10() ? (ICalculator)new Win10Calc(window) : new LegacyCalc(window);2526            // Switch to default mode27            System.Threading.Thread.Sleep(1000);28            Keyboard.TypeSimultaneously(VirtualKeyShort.ALT, VirtualKeyShort.KEY_1);29            Wait.UntilInputIsProcessed();30            App.WaitWhileBusy();31            System.Threading.Thread.Sleep(1000);3233            // Simple addition34            calc.Button1.Click();35            calc.Button2.Click();36            calc.Button3.Click();37            calc.Button4.Click();38            calc.ButtonAdd.Click();39            calc.Button5.Click();40            calc.Button6.Click();41            calc.Button7.Click();42            calc.Button8.Click();43            calc.ButtonEquals.Click();44            App.WaitWhileBusy();45            var result = calc.Result;46            Assert.That(result, Is.EqualTo("6912"));4748            // Date comparison49            using (Keyboard.Pressing(VirtualKeyShort.CONTROL))50            {51                Keyboard.Type(VirtualKeyShort.KEY_E);52            }53        }5455        protected override Application StartApplication()56        {57            if (OperatingSystem.IsWindows10())58            {59                // Use the store application on those systems60                return Application.LaunchStoreApp("Microsoft.WindowsCalculator_8wekyb3d8bbwe!App");61            }62            if (OperatingSystem.IsWindowsServer2016())63            {64                // The calc.exe on this system is just a stub which launches win32calc.exe65                return Application.Launch("win32calc.exe");66            }67            return Application.Launch("calc.exe");68        }69    }7071    public interface ICalculator72    {73        Button Button1 { get; }74        Button Button2 { get; }75        Button Button3 { get; }76        Button Button4 { get; }77        Button Button5 { get; }78        Button Button6 { get; }79        Button Button7 { get; }80        Button Button8 { get; }81        Button ButtonAdd { get; }82        Button ButtonEquals { get; }83        string Result { get; }84    }8586    public class LegacyCalc : ICalculator87    {88        private readonly AutomationElement _mainWindow;8990        public Button Button1 => FindElement("1").AsButton();91        public Button Button2 => FindElement("2").AsButton();92        public Button Button3 => FindElement("3").AsButton();93        public Button Button4 => FindElement("4").AsButton();94        public Button Button5 => FindElement("5").AsButton();95        public Button Button6 => FindElement("6").AsButton();96        public Button Button7 => FindElement("7").AsButton();97        public Button Button8 => FindElement("8").AsButton();98        public Button ButtonAdd => FindElement("Add").AsButton();99        public Button ButtonEquals => FindElement("Equals").AsButton();100101        public string Result102        {103            get104            {105                var resultElement = _mainWindow.FindFirstDescendant(cf => cf.ByAutomationId("158"));106                var value = resultElement.Properties.Name;107                return Regex.Replace(value, "[^0-9]", String.Empty);108            }109        }110111        public LegacyCalc(AutomationElement mainWindow)112        {113            _mainWindow = mainWindow;114        }115116        private AutomationElement FindElement(string text)117        {118            var element = _mainWindow.FindFirstDescendant(cf => cf.ByText(text));119            return element;120        }121    }122123    public class Win10Calc : ICalculator124    {125        private readonly AutomationElement _mainWindow;126127        public Button Button1 => FindElement("num1Button").AsButton();128        public Button Button2 => FindElement("num2Button").AsButton();129        public Button Button3 => FindElement("num3Button").AsButton();130        public Button Button4 => FindElement("num4Button").AsButton();131        public Button Button5 => FindElement("num5Button").AsButton();132        public Button Button6 => FindElement("num6Button").AsButton();133        public Button Button7 => FindElement("num7Button").AsButton();134        public Button Button8 => FindElement("num8Button").AsButton();135        public Button ButtonAdd => FindElement("plusButton").AsButton();136        public Button ButtonEquals => FindElement("equalButton").AsButton();137138        public string Result139        {140            get141            {142                var resultElement = FindElement("CalculatorResults");143                var value = resultElement.Properties.Name;144                return Regex.Replace(value, "[^0-9]", String.Empty);145            }146        }147148        public Win10Calc(AutomationElement mainWindow)149        {150            _mainWindow = mainWindow;151        }152153        private AutomationElement FindElement(string text)154        {155            var element = _mainWindow.FindFirstDescendant(cf => cf.ByAutomationId(text));156            return element;157        }158    }159}
...Win10Calc
Using AI Code Generation
1using System;2using System.Collections.Generic;3using System.Linq;4using System.Text;5using System.Threading.Tasks;6using FlaUI.Core;7using FlaUI.Core.UITests.LegacyCalc;8using FlaUI.Core.UITests.TestFramework;9using FlaUI.Core.WindowsAPI;10using FlaUI.UIA2;11using FlaUI.UIA3;12using NUnit.Framework;13using NUnit.Framework.Interfaces;14{15    {16        public void TestWin10Calc()17        {18            using (var automation = new UIA3Automation())19            {20                using (var app = Application.Launch(@"C:\Windows\System32\calc.exe"))21                {22                    var window = app.GetMainWindow(automation);23                    var calc = new Win10Calc(window);24                    calc.Add(2, 3);25                    calc.Divide(10);26                    calc.Multiply(3);27                    calc.Subtract(1);28                    calc.Equals();29                    Assert.AreEqual("9", calc.GetResult());30                }31            }32        }33    }34}35using System;36using System.Collections.Generic;37using System.Linq;38using System.Text;39using System.Threading.Tasks;40using FlaUI.Core;41using FlaUI.Core.UITests.LegacyCalc;42using FlaUI.Core.UITests.TestFramework;43using FlaUI.Core.WindowsAPI;44using FlaUI.UIA2;45using FlaUI.UIA3;46using NUnit.Framework;47using NUnit.Framework.Interfaces;48{49    {50        public void TestWin7Calc()51        {52            using (var automation = new UIA3Automation())53            {54                using (var app = Application.Launch(@"C:\Windows\System32\calc.exe"))55                {56                    var window = app.GetMainWindow(automation);57                    var calc = new Win7Calc(window);58                    calc.Add(2, 3);59                    calc.Divide(10);Win10Calc
Using AI Code Generation
1    using System;2    using System.Collections.Generic;3    using System.Linq;4    using System.Text;5    using System.Threading.Tasks;6    using FlaUI.Core;7    using FlaUI.Core.AutomationElements;8    using FlaUI.Core.Definitions;9    using FlaUI.Core.Input;10    using FlaUI.Core.Tools;11    using FlaUI.Core.WindowsAPI;12    using FlaUI.UIA3;13    {14        {15            static void Main(string[] args)16            {17                var app = FlaUI.Core.UITests.LegacyCalc.Win10Calc();18                var mainWindow = app.GetMainWindow(AutomationObjectIds.Window);19                var button1 = mainWindow.FindFirstDescendant(cf => cf.ByAutomationId("num1Button")).AsButton();20                var button2 = mainWindow.FindFirstDescendant(cf => cf.ByAutomationId("num2Button")).AsButton();21                var button3 = mainWindow.FindFirstDescendant(cf => cf.ByAutomationId("num3Button")).AsButton();22                var button4 = mainWindow.FindFirstDescendant(cf => cf.ByAutomationId("num4Button")).AsButton();23                var button5 = mainWindow.FindFirstDescendant(cf => cf.ByAutomationId("num5Button")).AsButton();24                var button6 = mainWindow.FindFirstDescendant(cf => cf.ByAutomationId("num6Button")).AsButton();25                var button7 = mainWindow.FindFirstDescendant(cf => cf.ByAutomationId("num7Button")).AsButton();26                var button8 = mainWindow.FindFirstDescendant(cf => cf.ByAutomationId("num8Button")).AsButton();27                var button9 = mainWindow.FindFirstDescendant(cf => cf.ByAutomationId("num9Button")).AsButton();28                var button0 = mainWindow.FindFirstDescendant(cf => cf.ByAutomationId("num0Button")).AsButton();29                var buttonPlus = mainWindow.FindFirstDescendant(cf => cf.ByAutomationId("plusButton")).AsButton();30                var buttonMinus = mainWindow.FindFirstDescendant(cf => cf.ByAutomationId("minusButton")).AsButton();31                var buttonEquals = mainWindow.FindFirstDescendant(cf => cf.ByAutomationId("equalButton")).AsButton();32                var buttonClear = mainWindow.FindFirstDescendant(cf => cf.ByAutomationId("clearButton")).AsButton();33                var display = mainWindow.FindFirstDescendant(cf => cf.ByAutomationId("CalculatorResults")).AsTextBox();34                button1.Click();Win10Calc
Using AI Code Generation
1using FlaUI.Core;2using FlaUI.Core.UITests;3using FlaUI.Core.UITests.LegacyCalc;4using FlaUI.Core.UITests.LegacyCalc.MainWindow;5using FlaUI.Core.UITests.LegacyCalc.MainWindow.Menu;6using FlaUI.Core.UITests.LegacyCalc.MainWindow.Menu.Edit;7using FlaUI.Core.UITests.LegacyCalc.MainWindow.Menu.View;8using FlaUI.Core.UITests.LegacyCalc.MainWindow.Menu.View.Standard;9using FlaUI.Core.UITests.LegacyCalc.MainWindow.Menu.View.Standard.Buttons;10using FlaUI.Core.UITests.LegacyCalc.MainWindow.Menu.View.Standard.Buttons.NumberPad;11using FlaUI.Core.UITests.LegacyCalc.MainWindow.Menu.View.Standard.Buttons.NumberPad.Buttons;12using FlaUI.Core.UITests.LegacyCalc.MainWindow.Menu.View.Standard.Buttons.NumberPad.Buttons.NumberPadButtons;13using FlaUI.Core.UITests.LegacyCalc.MainWindow.Menu.View.Standard.Buttons.NumberPad.Buttons.NumberPadButtons.NumberPadButtons;14using FlaUI.Core.UITests.LegacyCalc.MainWindow.Menu.View.Standard.Buttons.NumberPad.Buttons.NumberPadButtons.NumberPadButtons.NumberPadButtons;15using FlaUI.Core.UITests.LegacyCalc.MainWindow.Menu.View.Standard.Buttons.NumberPad.Buttons.NumberPadButtons.NumberPadButtons.NumberPadButtons.NumberPadButtons;16using FlaUI.Core.UITests.LegacyCalc.MainWindow.Menu.View.Standard.Buttons.NumberPad.Buttons.NumberPadButtons.NumberPadButtons.NumberPadButtons.NumberPadButtons.NumberPadButtons;17using FlaUI.Core.UITests.LegacyCalc.MainWindow.Menu.View.Standard.Buttons.NumberPad.Buttons.NumberPadButtons.NumberPadButtons.NumberPadButtons.NumberPadButtons.NumberPadButtons.NumberPadButtons;18using FlaUI.Core.UITests.LegacyCalc.MainWindow.Menu.View.Standard.Buttons.NumberPad.Buttons.NumberPadButtons.NumberPadButtons.NumberPadButtons.NumberPadButtons.NumberPadButtons.NumberPadButtons.NumberPadButtons;19using FlaUI.Core.UITests.LegacyCalc.MainWindow.Menu.View.Standard.Buttons.NumberPad.Buttons.NumberPadButtons.NumberPadButtons.NumberPadButtons.NumberPadButtons.NumberPadButtons.NumberPadButtons.NumberPadButtons.NumberPadButtons;20using FlaUI.Core.UITests.LegacyCalc.MainWindow.Menu.View.Standard.Buttons.NumberPad.Buttons.NumberPadButtons.NumberPadButtons.NumberPadButtons.NumberPadButtons.NumberPadButtons.NumberPadButtons.NumberPadButtons.NumberPadButtons.NumberPadButtons;Win10Calc
Using AI Code Generation
1using System;2using System.Windows.Forms;3using FlaUI.Core;4using FlaUI.Core.Definitions;5using FlaUI.Core.UITests.LegacyCalc;6using FlaUI.Core.UITests.TestFramework;7using FlaUI.Core.WindowsAPI;8using FlaUI.UIA3;9using FlaUI.Core.Identifiers;10using FlaUI.Core.AutomationElements.Infrastructure;11using FlaUI.Core.AutomationElements;12using FlaUI.Core.AutomationElements.PatternElements;13using FlaUI.Core.Conditions;14using FlaUI.Core.Input;15using FlaUI.Core.WindowsAPI;16using FlaUI.Core.Shapes;17using FlaUI.Core.WindowsAPI;18using FlaUI.Core.WindowsAPI;19{20    {21        public static void Main()22        {23            var app = Application.Launch("C:\\Windows\\System32\\calc.exe");24            var mainWindow = app.GetMainWindow();25            var buttons = mainWindow.FindAllDescendants(cf => cf.ByControlType(ControlType.Button));26            var button1 = mainWindow.FindFirstDescendant(cf => cf.ByText("1"));27            var button2 = mainWindow.FindFirstDescendant(cf => cf.ByText("2"));28            var button3 = mainWindow.FindFirstDescendant(cf => cf.ByText("3"));29            var button4 = mainWindow.FindFirstDescendant(cf => cf.ByText("4"));30            var button5 = mainWindow.FindFirstDescendant(cf => cf.ByText("5"));31            var button6 = mainWindow.FindFirstDescendant(cf => cf.ByText("6"));32            var button7 = mainWindow.FindFirstDescendant(cf => cf.ByText("7"));33            var button8 = mainWindow.FindFirstDescendant(cf => cf.ByText("8"));34            var button9 = mainWindow.FindFirstDescendant(cf => cf.ByText("9"));35            var button0 = mainWindow.FindFirstDescendant(cf => cf.ByText("0"));36            var buttonAdd = mainWindow.FindFirstDescendant(cf => cf.ByText("+"));37            var buttonSubtract = mainWindow.FindFirstDescendant(cf => cf.ByText("-"));38            var buttonMultiply = mainWindow.FindFirstDescendant(cf => cf.ByText("*"));39            var buttonDivide = mainWindow.FindFirstDescendant(cf => cf.ByText("/"));40            var buttonEquals = mainWindow.FindFirstDescendant(cfWin10Calc
Using AI Code Generation
1using FlaUI.Core.UITests.LegacyCalc;2using FlaUI.Core.UITests.LegacyCalc.Win10Calc;3using FlaUI.Core.UITests.LegacyCalc.Win10Calc.Win10Calc;4using FlaUI.Core.UITests.LegacyCalc.Win10Calc.Win10Calc.Win10Calc;5{6    {7        public Win10Calc(Application application) : base(application)8        {9        }10        public void Add(int number1, int number2)11        {12            ClickNumber(number1);13            ClickAdd();14            ClickNumber(number2);15            ClickEquals();16        }17        private void ClickEquals()18        {19            throw new NotImplementedException();20        }21        private void ClickAdd()22        {23            throw new NotImplementedException();24        }25        private void ClickNumber(int number)26        {27            throw new NotImplementedException();28        }29    }30}31using FlaUI.Core.UITests.LegacyCalc;32using FlaUI.Core.UITests.LegacyCalc.Win10Calc;33using FlaUI.Core.UITests.LegacyCalc.Win10Calc.Win10Calc;34using FlaUI.Core.UITests.LegacyCalc.Win10Calc.Win10Calc.Win10Calc;35{36    {37        public LegacyCalc()38        {39        }40        public void Add(int number1, int number2)41        {42            var application = Application.Launch("calc");43            var win10Calc = new Win10Calc(application);44            win10Calc.Add(number1, number2);45            var result = win10Calc.GetResult();46            application.Close();47        }48    }49}50using FlaUI.Core.UITests.LegacyCalc;51using FlaUI.Core.UITests.LegacyCalc.Win10Calc;Win10Calc
Using AI Code Generation
1using FlaUI.Core;2using FlaUI.Core.UITests.LegacyCalc;3using System;4using System.Windows.Automation;5{6    {7        static void Main(string[] args)8        {9            var app = Application.Launch("calc.exe");10            var calc = new LegacyCalc(app);11            calc.Win10Calc();12            Console.ReadLine();13        }14    }15}16using FlaUI.Core;17using FlaUI.Core.AutomationElements;18using FlaUI.Core.AutomationElements.Infrastructure;19using FlaUI.Core.Definitions;20using FlaUI.Core.Identifiers;21using FlaUI.Core.Tools;22using System;23using System.Threading;24{25    {26        private readonly Application _app;27        private readonly Window _window;28        private readonly AutomationElement _mainWindow;29        private readonly AutomationElement _mainDisplay;30        public LegacyCalc(Application app)31        {32            _app = app;33            _window = _app.GetMainWindow();34            _mainWindow = _window.FindFirstDescendant(cf => cf.ByControlType(ControlType.Window));35            _mainDisplay = _mainWindow.FindFirstDescendant(cf => cf.ByControlType(ControlType.Text));36        }37        public void Win10Calc()38        {39            var display = _window.FindFirstDescendant(cf => cf.ByAutomationId("CalculatorResults"));40            var button7 = _window.FindFirstDescendant(cf => cf.ByAutomationId("num7Button"));41            button7.AsButton().Invoke();42            var buttonPlus = _window.FindFirstDescendant(cf => cf.ByAutomationId("plusButton"));43            buttonPlus.AsButton().Invoke();44            var button8 = _window.FindFirstDescendant(cf => cf.ByAutomationId("num8Button"));45            button8.AsButton().Invoke();46            var buttonEquals = _window.FindFirstDescendant(cf => cf.ByAutomationId("equalButton"));47            buttonEquals.AsButton().Invoke();48            if (display.AsLabel().Text != "15")49            {50                throw new Exception("Display was not 15");51            }52        }53    }54}55using FlaUI.Core.AutomationElements.Infrastructure;Win10Calc
Using AI Code Generation
1using System;2using System.Diagnostics;3using System.Threading;4using FlaUI.Core;5using FlaUI.Core.AutomationElements;6using FlaUI.Core.Definitions;7using FlaUI.Core.Exceptions;8using FlaUI.Core.Input;9using FlaUI.Core.WindowsAPI;10using FlaUI.UIA3;11using FlaUI.Core.UITests.LegacyCalc;12using System.Windows.Forms;13using System.Drawing;14using System.Linq;15{16    {17        private readonly Application _application;18        private readonly Window _window;19        private readonly UIA3Automation _automation;20        private readonly AutomationElement _calcWindow;21        public Win10Calc()22        {23            _application = Application.Launch("calc.exe");24            Thread.Sleep(2000);25            _automation = new UIA3Automation();26            _window = _application.GetMainWindow(_automation);27            _calcWindow = _window.FindFirstDescendant(cf => cf.ByControlType(ControlType.Window));28        }29        public void Close()30        {31            _application.Close();32        }33        public void Add(int a, int b)34        {35            var button = _calcWindow.FindFirstDescendant(cf => cf.ByName(a.ToString()));36            button.Click();37            button = _calcWindow.FindFirstDescendant(cf => cf.ByName("+"));38            button.Click();39            button = _calcWindow.FindFirstDescendant(cf => cf.ByName(b.ToString()));40            button.Click();41            button = _calcWindow.FindFirstDescendant(cf => cf.ByName("="));42            button.Click();43        }44        public void Subtract(intLearn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!
