viqa - Тестирование ui с помощью Виртуального интеллекта
Post on 11-Jan-2015
638 Views
Preview:
DESCRIPTION
Доклад Романа Иовлева на SQA Days-15. 18-19 апреля, 2014, Москва. www.sqadays.com
TRANSCRIPT
- 1. V I Q A Virtual Intelligence Quality Assurance
- 2. QAAutomation Lead
- 3. V I Q A . Selenium UI - Yandex QA Tools Yandex QA Tool VIQA Virtual Intelligence VIQA PageObjects
- 4. VIQA Virtual Intelligence Quality Assurance Tool .Net C# Selenium 2.X PageObjects https://github.com/Supreme85/VIQAUITestingTool
- 5. Web UI Like User Behavior Tests , .
- 6. Selenium? WebElement , , , html
- 7. driver.FindElement(By.XPath(somelocator1")).SendKeys("1000"); driver.FindElement(By.XPath(somelocator2")).SendKeys("20000"); driver.FindElement(By.XPath(somelocator3")).Click(); driver.FindElement(By.XPath(somelocator4")).Click(); driver.FindElement(By.XPath(somelocator5").Click(); driver.FindElement(By.XPath(somelocator6")).Click(); driver.FindElement(By.XPath(somelocator7")).Click(); driver.FindElement(By.XPath(somelocator8")).Click(); driver.FindElement(By.XPath(somelocator9")).Click(); driver.FindElement(By.XPath(somelocator10")).Click();
- 8. Selenium Yandex QA Tool : Button, Checkbox, TextInput PageObjects Blocks UI, ...
- 9.
- 10.
- 11. Yandex QA Tool TypifiedElement
- 12. V I Q A new Checkbox(My Checkbox") { ClickAction = () => MyElementForClick.Click(), GetLabelFunc = () => MyElementForLabel.Label, IsSelectedFunc = () => MyElementForClick.GetAttribute("checked") == "1", };
- 13. (Checkbox) IsChecked Label Click Check Uncheck SetValue
- 14. V I Q A public interface ICheckbox : IClickable, ILabeled, ISetValue { void Check(); void Uncheck(); bool IsChecked(); }
- 15. new DropDown("My Dropdown") { SelectAction = val => { MySelectMainElement.Click(); MySelectListElement.WithName(val).Click(); } };
- 16. ,
- 17. Yandex QA Tool
- 18. V I Q A IVILogger VIAction
- 19.
- 20. new Site().Logger = MyLogger(); interface IWebLogger { void Event (string msg); void Error (string msg) } }
- 21. VIAction VIElement.DefaultViAction = (viElement, text, viAction) => { viElement.Logger.Event(Do action: + text); viAction.Invoke(); }
- 22. VIAction new RadioButtons( , #sensorScreen) { VIAction = (viElement, text, viAction) => { if (!FirstSensorRadioButton.IsDisplayed) SensorBlock.Click(); viAction.Invoke(); } };
- 23. AI vs VI Artificial Intelligence Virtual Intelligence
- 24. 1 2 1 2
- 25. Yandex QA Tool PageObjects Block HtmlElement Block
- 26. V I Q A VISite VIPage VIElement VIElement
- 27. VISite WebDriver (, ) OpenPage/OpenHomePage
- 28. site.OpenHomePage(); { var _ = HomePage; _.TextFieldFrom.Input("1000"); _.TextFieldTo.Input("2000"); _.MyCheckbox.Check(); _.MyRadioButtons.Select(""); _.SearchButton.Click(); } Assert.IsNotNull(SearchPage.ExpectedElement.WaitWebElement());
- 29. VI- : Button, CheckBox, Link, TextArea, TextField, Clickable, Text, ClickableText : CheckList, RadioButtons, Dropdown, DataForm
- 30. Block vs ViElement
- 31. Yandex QA Tool [FindsBy(How = How. ClassName, Using = my-checkbox")] public CheckBox MyCheckbox;
- 32. V I Q A [Name(Name = "Wi-fi"), Locate(ByXPath = "//*[@class=my-checkbox']")] public ICheckbox MyCheckbox1 = new Checkbox(); [Name(Name = "Wi-fi"), Locate(ByClassName = my-checkbox")] public Checkbox MyCheckbox2; public ICheckbox MyCheckbox3 = new Checkbox("Wi-fi", "#my-checkbox"); public Checkbox MyCheckbox4 = new Checkbox("Wi-fi", By.CssSelector("#my-checkbox"));
- 33. Fill Form ISetValue
- 34.
- 35. Selenium driver.FindElement(Locators.FromTextField).SendKeys("1000"); driver.FindElement(Locators.ToTextField).SendKeys("20000"); driver.FindElement(Locators.WifiExpand).Click(); driver.FindElement(Locators.WifiCheckbox).Click(); driver.FindElement(Locators.SensorScrnExpand).Click(); driver.FindElement(Locators.SensorScrnRadio()).Click(); driver.FindElement(Locators.ProcessorExpand).Click(); driver.FindElement(Locators.ProcessorCheckbox(AppleA4)).Click(); driver.FindElement(Locators.ProcessorCheckbox(AppleA5)).Click(); driver.FindElement(Locators.ProcessorCheckbox(AppleA7)).Click();
- 36. VIQA { var _ = ProductPage.FilterSection; _.TextFieldFrom.Input("1000"); _.TextFieldTo.Input("2000"); _.WiFiCheckbox.Check(); _.SensorScreenRadioButtons.Select(""); _.ProcessorTypesChecklist.CheckGroup( new[]{"Apple A5", "Apple A6", "Apple A7"}); }
- 37. Fill Form ProductPage.FilterSection.FillForm(MyProduct);
- 38. /
- 39. VI-: More : VIElements
- 40. Open KillAllRunWebDrivers
- 41. 2
- 42. . / VIElement- -
- 43. VIQA Profit PageObjects,
- 44. VIQA Profit ( , webDriver, )
- 45. Java
- 46. Email: viqablog@gmail.com romanyister@gmail.com GitHub https://github.com/Supreme85/VIQAUITestingTool http://vk.com/viqatools
top related