Перейти к содержимому

Фотография

тестирование сетевых приложений (java)


  • Авторизуйтесь для ответа в теме
В теме одно сообщение

#1 mihhon

mihhon

    Новый участник

  • Members
  • Pip
  • 2 сообщений
  • ФИО:mihhon

Отправлено 07 июля 2005 - 17:14

сценарий:
клиент1
   |
сервер1   клиент2
   \        / 
    \      / 
     сервер2

запускается сервер1, запускается сервер2, запускается клиент1, запускается клиент2, соединение как на картинке

сервер1 теряет соединение с сервером2, за это время состояние сервера2 изменяется клиентом2. сервер1 периодически пробует соединиться с сервером2. в определённый момент это ему удаётся, он синхронизирует своё состояние с сервером2 и передаёт на клиент1 своё состояние.

задача теста — проверить корректность синхронизации состояния сервера1 в момент повторного соединения

какие есть инструменты/методы/где почитать для автоматизации таких сценариев?
ручками хлопотно
писать на java программу, которая запускает и убивает процессы?

на текущий момент с помощью ant/junit работает следующая конструкция (коряво, конечно )
<target name="reconnecttest">
        <antcall target="clean"></antcall>
        <parallel>
            <antcall target="server2-stop"></antcall>
            <sequential>
                <sleep milliseconds="2000"/>
                <antcall target="server1"></antcall>
            </sequential>
            
            <sequential>
                <sleep milliseconds="5000"/>
                <antcall target="injector"></antcall><!-- change the state of server2 -->
                <antcall target="verifier"></antcall><!-- verify the state of server1 -->
            </sequential>
            
            <!-- server2 will be stopped in 20 seconds, restart it -->
            <sequential>
                <sleep milliseconds="20000"/>
                <antcall target="server2-stop"></antcall>
            </sequential>
            
            <!-- server1 must reconnect to server2, synchronize its state. wait for it, verify it -->
            <sequential>
                <sleep milliseconds="25000"/>
                <antcall target="verifier"></antcall>
            </sequential>    
            
            <!-- server1 will be stopped in 30 seconds -->
        </parallel>
    </target>

server1 и server2 запущены с помощью target java с атрибутом timeout , verifier & injector - junit tests
  • 0

#2 Tapira

Tapira

    Новый участник

  • Members
  • Pip
  • 3 сообщений
  • Город:Харьков

Отправлено 11 июля 2005 - 15:07

Писать ручками, конечно, хлопотно. Но, как показывает практика, - быстрее и надёжнее. Пока Вы найдёте подходящий инструмент и изучите его, потратите немало времени и сил. И, что самое главное, - не факт, что у Вас наладится "общение" с выбранным инструментом.
  • 0


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных