Форум: "Основная";
Текущий архив: 2004.06.06;
Скачать: [xml.tar.bz2];
ВнизMidas server & client Найти похожие ветки
← →
Umka (2004-05-23 17:34) [0]Добрый день,
Возможно ли в одном экзешнике разметстить сервер и клиент. Идея на первый взгляд не имеет мысла, о это нужно что бы автоматизировать тестирование сервера и клиента.
Существуют след. классы:
TZRemoteDM = class(TRemoteDataModule, IZRemoteDM)
FDSProvider: TDataSetProvider;
FConnection: TZConnection;
FQuery: TZQuery;
FDetailQuery: TZQuery;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
end;
TZTestSortingCase = class(TZComponentGenericSQLTestCase)
private
RemoteServer: TSocketConnection;
ClientData: TClientDataSet;
protected
procedure SetUp; override;
procedure TearDown; override;
published
procedure TestSelect;
end;
implementation
{$R *.TLB}
constructor TZRemoteDM.Create(AOwner: TComponent);
begin
FDSProvider := TDataSetProvider.Create(self);
FConnection := TZConnection.Create(self);
FQuery := TZQuery.Create(self);
FDetailQuery := TZQuery.Create(self);
FConnection.Disconnect;
FQuery.Connection := FConnection;
FDSProvider.DataSet := FQuery;
FDSProvider.Options := [poAllowCommandText];
end;
....
procedure TZTestSortingCase.SetUp;
begin
RemoteServer := TSocketConnection.Create(nil);
RemoteServer.Port := 211;
RemoteServer.Address := "127.0.0.1";
RemoteServer.ServerGUID := "{FD5981E3-A86F-4A2F-B20E-94D1B0799AD6}";
RemoteServer.ServerName := "Server.ZRemoteDM";
RemoteServer.Connected := True;
RemoteServer.AppServer.SetOptions(Protocol, HostName, Port,
Database, UserName, Password);
ClientData := TClientDataSet.Create(nil);
ClientData.ProviderName := "DSProvider";
ClientData.RemoteServer := RemoteServer;
end;
....
initialization
begin
TComponentFactory.Create(ComServer, TZRemoteDM,
Class_ZRemoteDM, ciMultiInstance, tmApartment);
TestFramework.RegisterTest(TZTestSortingCase.Suite);
end;
TZComponentGenericSQLTestCase - является наследником TTestCase изи пакета DUnit
При попытке соединения с сервером RemoteServer.Connected := True; (используется TSocketConnection) вылетает ошибка в TDataBlockInterpreter.DoException - "Server execution filed".
← →
Гаврила © (2004-05-23 17:56) [1]А разве нельзя автоматизировать тестирование сервера и клиента, не объединяя их в один модуль ?
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.06.06;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.028 c