Простой автотест
Автотесты описываются языком программирования C#.
Структура автотеста:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Windows.Forms; using System.Threading; using System.Threading.Tasks; using System.IO; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Text.RegularExpressions; using System.Net; using System.Net.Http; using System.Net.Http.Headers; using System.Reflection; using Newtonsoft.Json; using HatFramework; |
В начале идет список подключаемых библиотек. HatFramework - это встроенный фреймворк в браузер. |
namespace Hat { public class ExampleTest1 {
} } |
Пространство имен и класс. Имя класса должно быть таким же как имя файла. |
Tester tester; public async void Main(Form browserWindow) { tester = new Tester(browserWindow); await setUp(); await test(); await tearDown(); } |
Объявляется глобальная переменная тип которой Tester Описана основная функция с которой начинается запуск автотеста. В этой функции инициализируется глобальная переменная тип которой Tester. Далее идет вызов асинхронных функций. |
public async Task setUp() {
} public async Task test() { await tester.TestBeginAsync();
await tester.TestEndAsync(); } public async Task tearDown() { } |
Описаны асинхронные функция которые выполняют:
(имена функций могут быть любыми, важен сам смысл и их последовательность) Примечание: тест всегда должен начинаться методом TestBeginAsync() и заканчиваться методом TestEndAsync() |
Демонстрационный автотест полностью:
Файл: ExampleTest1.cs |
using System; using System.Collections.Generic; using System.ComponentModel; using System.Windows.Forms; using System.Threading; using System.Threading.Tasks; using System.IO; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Text.RegularExpressions; using System.Net; using System.Net.Http; using System.Net.Http.Headers; using System.Reflection; using Newtonsoft.Json; using HatFramework; namespace Hat { public class ExampleTest1 { Tester tester; public async void Main(Form browserWindow) { tester = new Tester(browserWindow); await setUp(); await test(); await tearDown(); } public async Task setUp() { await tester.BrowserFullScreenAsync(); } public async Task test() { await tester.TestBeginAsync(); await tester.GoToUrlAsync("https://somovstudio.github.io/test.html", 5); await tester.WaitVisibleElementByIdAsync("login", 15); await tester.SetValueInElementByIdAsync("login", "admin"); await tester.WaitAsync(2); await tester.SetValueInElementByIdAsync("pass", "0000"); await tester.WaitAsync(2); await tester.ClickElementByIdAsync("buttonLogin"); await tester.WaitVisibleElementByIdAsync("result", 5); string actual = await tester.GetValueFromElementByIdAsync("textarea"); string expected = "Вы успешно авторизованы"; await tester.AssertEqualsAsync(expected, actual); await tester.TestEndAsync(); } public async Task tearDown() { await tester.BrowserCloseAsync(); } } } |
Created with the Personal Edition of HelpNDoc: Easy to use tool to create HTML Help files and Help web sites