Допустим. Создали объект, отредактировали, удалили.
В TestComplete я на это делала 4 теста - первый открываем браузер, второй ссылается на первый и создает, третий редактирует, четвертый удаляет.
Но тесты на отдельных страницах и используют один и тот же браузер.
В Watin же я пишу
public Browser DoLogin()
{
IE browser = new IE(true);
browser.BringToFront();
browser.GoTo("***");
return browser;
}
А потом сами тесты:
[Test]
[STAThread]
public void Login()
{
using (var browser = DoLogin()) { }
}
Как пример. То есть он открывает окно, логинится, закрывает.
Если убрать using, то не закроется.
Но. Если я хочу не переоткрывать браузер, то я пишу
public void *объект*()
И в нем уже
private static void Create(Browser browser)
{}
И несколько таких тестов.
Но, если тест обломается, обломается не create\edit, а сам тест.
Хочется сделать так, чтобы были разные тесты, но работающие с одним моим окном.
Но, если я буду ссылаться на браузер каждый раз (иначе он будет неопределен), то браузер будет открываться каждый раз новый...
Но это же долго, каждый раз логиниться, переходить к объекту и там уже его редактировать...
Как сделать разные тесты, но работающие "друг за другом", ссылающиеся на прошлый? То есть первый тест получил в результате страницу. И во втором я пишу "нажимаю на кнопку на этой странице", а не "открываю новый браузер, перехожу на эту страницу, нажимаю на кнопку"...