Данная редакция позволяет создавать Test Project, который среди нескольких типов тестов содержит Load Test (нагрузочный тест). Данный тип теста имеет следующую функциональность – запуск участков кода, объединенных атрибутом [Test Method] во множестве потоков. (То есть эмулировать выполнение этих участков одновременно от имени нескольких виртуальных пользователей). Плюс к этой функциональности, данный тип теста содержит большое число настроек и параметров, для гибкого управления конфигурацией. Сложив вместе сказанное в абзаце выше легко прийти к выходу, что Load Test в Visual Studio позволяет во-первых, создавать нагрузочные тесты для сервера DocsVision, а во-вторых, гибко управлять параметрами данной нагрузки. Вот небольшой пример кода, содержащего два теста – открытие карточки входящего документа и загрузка файла на диск из карточки файла:
[TestClass]
class MyTestClass
{
[TestMethod]
public void OpenCardDocument()
{
UserSession session = this.GetUserSession();
Assert.IsNotNull(session);
// open card
Guid cardID = (Guid)this.TestProperties["InstanceID"];
CardData cardData = session.CardManager.GetCardData(cardID);
// emulate reading data
cardData.SaveXml(new MemoryStream());
}
[TestMethod]
public void OpenCardFile()
{
UserSession session = this.GetUserSession();
Assert.IsNotNull(session);
// open card
Guid cardID = (Guid)this.TestProperties["InstanceID"];
CardData cardData = session.CardManager.GetCardData(cardID);
// emulate reading data
cardData.SaveXml(new MemoryStream());
// download file to disk
DownloadFile(session, cardData);
}
}
TestProperties["InstanceID"] – параметр из конфигурационного файла, соответствующий ID карточки входящего документа и карточки файла соответственно.
Теперь нам осталось только сконфигурировать параметры нагрузки, например так:
-то есть мы сказали что из общего числа тестов 30 процентов будут скачивать файл на диск, а 70 процентов открывать карточку входящего документа. Плюс необходимо указать число виртуальных пользователей и общее время тестирования.После этих действий (были описаны минимально необходимые) можно запускать тест и мониторить загрузку сервера или же поработать в системе для определения задержек при работе под нагрузкой.
Данный небольшой обзор не претендует на какую-либо полноту, показана лишь принципиальная возможность эмуляции нагрузки на сервер DocsVision с помощью Visual Studio. Очевидно, что данная среда позволяет эмулировать любые тест-кейсы, сложность и приближенность к реальным юзкейсам зависят лишь от разработчика данных тестов.
Читать дальше
0 коммент.:
Отправить комментарий